diff --git a/lib/config/definitions.js b/lib/config/definitions.js index 98f36847..9c1dbc14 100644 --- a/lib/config/definitions.js +++ b/lib/config/definitions.js @@ -65,6 +65,13 @@ MasterGroup.define({ optional: true, initial_value: "database/certificates/cert.key", }); +MasterGroup.define({ + name: "tls_bits", + title: "TLS Bits", + description: "Number of bits to use for auto generated TLS certificate.", + type: "number", + initial_value: 2048, +}); MasterGroup.define({ name: "auth_secret", title: "Master Authentication Secret", diff --git a/master.js b/master.js index d4640f2c..a144945f 100644 --- a/master.js +++ b/master.js @@ -1155,6 +1155,7 @@ async function startServer() { // Create a self signed certificate if the certificate files doesn't exist if (httpsPort && !await fs.exists(tls_cert) && !await fs.exists(tls_key)) { await generateSSLcert({ + bits: masterConfig.get("master.tls_bits"), sslCertPath: tls_cert, sslPrivKeyPath: tls_key, doLogging: true, diff --git a/test/integration/index.js b/test/integration/index.js index eb658546..a861b09a 100644 --- a/test/integration/index.js +++ b/test/integration/index.js @@ -77,6 +77,7 @@ before(async function() { await exec(`node master --config ${masterConfigPath} config set master.auth_secret TestSecretDoNotUse`); await exec(`node master --config ${masterConfigPath} config set master.http_port 8880`); await exec(`node master --config ${masterConfigPath} config set master.https_port 4443`); + await exec(`node master --config ${masterConfigPath} config set master.tls_bits 512`); await exec(`node master --config ${masterConfigPath} config set master.heartbeat_interval 0.25`); await exec(`node master --config ${masterConfigPath} config set master.connector_shutdown_timeout 2`);