From a30a9d0ba6805c89d4aeb8192e3ffa0d3eeae32b Mon Sep 17 00:00:00 2001 From: Larry Date: Sat, 1 Jul 2017 20:12:56 -0400 Subject: [PATCH 1/8] add redis password auth --- config_example.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/config_example.json b/config_example.json index 32cc33e..6e5e501 100644 --- a/config_example.json +++ b/config_example.json @@ -25,7 +25,8 @@ }, "redis": { "host": "127.0.0.1", - "port": 6379 + "port": 6379, + "password": "" } }, From 1785519db389ef92dfe83bb4cdcf5697d8b381e1 Mon Sep 17 00:00:00 2001 From: Larry Date: Sat, 1 Jul 2017 20:16:44 -0400 Subject: [PATCH 2/8] adding redis password auth --- libs/paymentProcessor.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libs/paymentProcessor.js b/libs/paymentProcessor.js index 4e317e2..8982470 100644 --- a/libs/paymentProcessor.js +++ b/libs/paymentProcessor.js @@ -82,7 +82,8 @@ function SetupForPool(logger, poolOptions, setupFinished){ logger[severity](logSystem, logComponent, message); }); var redisClient = redis.createClient(poolOptions.redis.port, poolOptions.redis.host); - + redisClient.auth(poolOptions.redis.password); + var magnitude; var minPaymentSatoshis; var coinPrecision; From 6bf70dfb20150e811f1f00225143cbaa6b698b11 Mon Sep 17 00:00:00 2001 From: Larry Date: Sat, 1 Jul 2017 20:18:03 -0400 Subject: [PATCH 3/8] adding redis password auth --- libs/poolWorker.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libs/poolWorker.js b/libs/poolWorker.js index abb28c6..9e07385 100644 --- a/libs/poolWorker.js +++ b/libs/poolWorker.js @@ -19,6 +19,8 @@ module.exports = function(logger){ var proxySwitch = {}; var redisClient = redis.createClient(portalConfig.redis.port, portalConfig.redis.host); + // redis auth if enabled + redisClient.auth(portalConfig.redis.password); //Handle messages from master process sent via IPC process.on('message', function(message) { From d96fa1e06bb5bde724240b5c8d46c26e0b009a80 Mon Sep 17 00:00:00 2001 From: Larry Date: Sat, 1 Jul 2017 20:19:08 -0400 Subject: [PATCH 4/8] added comments --- libs/paymentProcessor.js | 1 + 1 file changed, 1 insertion(+) diff --git a/libs/paymentProcessor.js b/libs/paymentProcessor.js index 8982470..c10a87e 100644 --- a/libs/paymentProcessor.js +++ b/libs/paymentProcessor.js @@ -82,6 +82,7 @@ function SetupForPool(logger, poolOptions, setupFinished){ logger[severity](logSystem, logComponent, message); }); var redisClient = redis.createClient(poolOptions.redis.port, poolOptions.redis.host); + // redis auth if enabled redisClient.auth(poolOptions.redis.password); var magnitude; From bdbe9a7896829971ac0ae28ed6f68891285bd936 Mon Sep 17 00:00:00 2001 From: Larry Date: Sat, 1 Jul 2017 20:21:18 -0400 Subject: [PATCH 5/8] adding redis auth password --- libs/shareProcessor.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libs/shareProcessor.js b/libs/shareProcessor.js index f881c58..2864c74 100644 --- a/libs/shareProcessor.js +++ b/libs/shareProcessor.js @@ -27,6 +27,9 @@ module.exports = function(logger, poolConfig){ var logSubCat = 'Thread ' + (parseInt(forkId) + 1); var connection = redis.createClient(redisConfig.port, redisConfig.host); + // redis auth if needed + connection.auth(redisConfig.password); + connection.on('ready', function(){ logger.debug(logSystem, logComponent, logSubCat, 'Share processing setup with redis (' + redisConfig.host + ':' + redisConfig.port + ')'); From f6966534fff2c1bb1765c6eb2a478a236c12acc3 Mon Sep 17 00:00:00 2001 From: Larry Date: Sat, 1 Jul 2017 20:27:48 -0400 Subject: [PATCH 6/8] adding redis auth --- libs/stats.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/libs/stats.js b/libs/stats.js index 3e1d91b..39552ea 100644 --- a/libs/stats.js +++ b/libs/stats.js @@ -7,6 +7,13 @@ var os = require('os'); var algos = require('stratum-pool/lib/algoProperties.js'); +// redis callback Ready check failed bypass trick +function rediscreateClient(port, host, pass) { + var client = redis.createClient(port, host); + client.auth(pass); + return client; +} + function balanceRound(number) { return parseFloat((Math.round(number * 100000000) / 100000000).toFixed(8)); } @@ -80,14 +87,16 @@ module.exports = function(logger, portalConfig, poolConfigs){ } redisClients.push({ coins: [coin], - client: redis.createClient(redisConfig.port, redisConfig.host) + //client: redis.createClient(redisConfig.port, redisConfig.host) + client: rediscreateClient(redisConfig.port, redisConfig.host, redisConfig.password) }); }); function setupStatsRedis(){ redisStats = redis.createClient(portalConfig.redis.port, portalConfig.redis.host); redisStats.on('error', function(err){ - logger.error(logSystem, 'Historics', 'Redis for stats had an error ' + JSON.stringify(err)); + // logger.debug(logSystem, 'Global', 'redis.Auth1 "' + portalConfig.redis.password + '"'); + redisStats.auth(portalConfig.redis.password); }); } From c74724c19ae94644f50030d517eb582f70562342 Mon Sep 17 00:00:00 2001 From: Larry Date: Sat, 1 Jul 2017 20:29:54 -0400 Subject: [PATCH 7/8] added redis auth --- libs/website.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/website.js b/libs/website.js index 579fd73..beda3a3 100644 --- a/libs/website.js +++ b/libs/website.js @@ -54,7 +54,6 @@ module.exports = function(logger){ var keyScriptTemplate = ''; var keyScriptProcessed = ''; - var processTemplates = function(){ for (var pageName in pageTemplates){ @@ -135,6 +134,7 @@ module.exports = function(logger){ async.waterfall([ function(callback){ var client = redis.createClient(portalConfig.redis.port, portalConfig.redis.host); + client.auth(portalConfig.redis.password); client.hgetall('coinVersionBytes', function(err, coinBytes){ if (err){ client.quit(); From bc920443546f85f468b2378f960f355039ee92db Mon Sep 17 00:00:00 2001 From: Larry Date: Mon, 3 Jul 2017 15:10:50 -0400 Subject: [PATCH 8/8] cleanup --- libs/stats.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/libs/stats.js b/libs/stats.js index 39552ea..7ebdc02 100644 --- a/libs/stats.js +++ b/libs/stats.js @@ -87,7 +87,6 @@ module.exports = function(logger, portalConfig, poolConfigs){ } redisClients.push({ coins: [coin], - //client: redis.createClient(redisConfig.port, redisConfig.host) client: rediscreateClient(redisConfig.port, redisConfig.host, redisConfig.password) }); }); @@ -95,7 +94,6 @@ module.exports = function(logger, portalConfig, poolConfigs){ function setupStatsRedis(){ redisStats = redis.createClient(portalConfig.redis.port, portalConfig.redis.host); redisStats.on('error', function(err){ - // logger.debug(logSystem, 'Global', 'redis.Auth1 "' + portalConfig.redis.password + '"'); redisStats.auth(portalConfig.redis.password); }); }