Socket
Socket
Sign inDemoInstall

ssl-config

Package Overview
Dependencies
20
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    ssl-config

Allows you to specify SSL/TLS cipher suites based on both security and browser compatibility.


Version published
Weekly downloads
368
decreased by-25.96%
Maintainers
1
Install size
634 kB
Created
Weekly downloads
 

Readme

Source

SSL Config

A node.js implementation of the recommended cipher suites and TLS/SSL versions from Mozilla's Server Side TLS project.

The suite list uses the cipher suite prioritization logic from Mozilla. Since Firefox and Chrome don't support AES-GCM with 256 bit keys, a 128 bit AES key is considered superior.

Note this package only sets cipher suites and TLS/SSL versions, other parts of the recommendations are implemented elsewhere, eg, for Express servers HSTS we recommend using Helmet.

Usage

Just use either 'modern', 'intermediate' or 'old'.

modern

Requires IE 11, Firefox 27, Chrome 22, Safari 7, Android 4.4, Opera 14, Java 8 or newer.

intermediate

Requires IE 7, Firefox 1, Chrome 1, Safari 1, Windows XP IE8, Android 2.3, Opera 5, Java 7 or newer.

old

Windows XP IE6, Java 6 and newer. You really shouldn't use this setting, it is implemented for compatibility with Mozilla's tools.

Eg:

var sslConfig = require('ssl-config')('modern');

Then run https.createServer per node.js TLS and io.js TLS docs.

https.createServer({
	key: privateKey,
	cert: certificate,
	ca: certificateAuthority,
	ciphers: sslConfig.ciphers,
	honorCipherOrder: true,
	secureOptions: sslConfig.minimumTLSVersion
});

Or for express.js

var server = https.createServer({
	key: privateKey,
	cert: certificate,
	ca: certificateAuthority,
	ciphers: sslConfig.ciphers,
	honorCipherOrder: true,
	secureOptions: sslConfig.minimumTLSVersion
}, app);

Or for Hapi:

var server = new Hapi.Server();
server.connection({
  // other config options here
  tls: {
    key: privateKey,
    cert: certificate,
    ca: certificateAuthority,
    ciphers: sslConfig.ciphers,
    honorCipherOrder: true,
    secureOptions: sslConfig.minimumTLSVersion
  },
  routes: {
    security: true // turns on HSTS and other security headers
  }
});

License

Mozilla Public License 2.0

Keywords

FAQs

Last updated on 15 Sep 2016

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc