How To Setup xmr-node-proxy on Ubuntu 16.04

Written by CC Freak on September 30, 2017
  • 8
  •  
  •  
  •  
  •  
  •  
  •  
  •  
    8
    Shares

xmr-node-proxy allows you to merge multiple Monero mining rigs into one, which helps lower the load on pools, reduces bandwidth used and allows you to use a lower difficulty setting. When using a proxy, the mining pool that you connect to see only one miner. 

How To Setup

The first thing you will need is at least 2GB of memory for the installation script. This can be handled by either 2GB of actual ram or by setting up swap space. In this article we will be using a Digital Ocean droplet with no swap space. As most people will only need 512 MB of memory once the script is installed, we are going to use Digital Oceans resize option to start to get the script installed.

First, create a new Digital Ocean instance with 512 MB of memory. Once the instance is up shutdown the instance and resize it to 2GB of memory, choosing to not resize the disk space and only the CPU and Memory. Once the resize is done, boot the droplet and log in.

Installing xmr-node-proxy

The first thing we are going to do is setup our non root user to run the script:

useradd -d /home/nodeproxy -m -s /bin/bash nodeproxy
passwd nodeproxy

Now lets add our user to the sudo list

echo "nodeproxy ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers

Now lets login to our non root user to run the script:

su - nodeproxy
curl -L https://raw.githubusercontent.com/Snipa22/xmr-node-proxy/master/install.sh | bash

After the installation is done lets activate NVM:

source ~/.bashrc

Now lets shutdown the instance and resize back to 512 MB and boot your instance.

Once done boot into the server and lets edit your config.json. Below is how mine is configured for 29 miners that do around 8 kh/s.

{
  "pools": [
    {
      "hostname": "pool.supportxmr.com",
      "port": 7777,
      "ssl": false,
      "allowSelfSignedSSL": false,
      "share": 100,
      "username": "46dpA9N1KDE9yERcSGASXPUyA4ga1GrPq5sDXqwwjQL2dAmf5kvgpNQUWdvyT1r55pfwfvuBn2h7YQPhZFYdWtjWUVUTobh",
      "password": "password:emailaddress",
      "keepAlive": true,
      "coin": "xmr",
      "default": true
    }
  ],
  "listeningPorts": [
    {
      "port": 3333,
      "ssl": false,
      "diff": 2500,
      "coin": "xmr"
    }
  ],
  "bindAddress": "0.0.0.0",
  "developerShare": 0,
  "daemonAddress": "127.0.0.1:18081",
  "coinSettings": {
    "xmr":{
      "minDiff": 100,
      "maxDiff": 300000,
      "shareTargetTime": 5
    }
  }
}

Depending on the amount of miners and hashrate that you are doing, you will need to adjust the following: diff, shareTargetTime, minDiff and maxDiff.

and now lets start the proxy:

cd ~/xmr-node-proxy/
pm2 start proxy.js --name=proxy --log-date-format="YYYY-MM-DD HH:mm Z"
pm2 save

Now lets start the monitoring program

pm2 monit

Now you should have a running proxy! Simply change all your miners to connect to the ip address of your proxy server and on port 3333.


  • 8
  •  
  •  
  •  
  •  
  •  
  •  
  •  
    8
    Shares

Topic tags:

Subscribe
Notify of
guest
23 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments