VPS and Hot wallet Setup
These instructions are intended for advanced users that are setting up a MasterNode Hot wallet on a Linux VPS and don't want to waste time with all those pesky details and explanations.
Order and setup a Linux VPS
Identify a VPS provider and order a Linux Ubuntu 16.04 server.
Recommended VPS Providers:
- Linux - Ubuntu 16.04 - 64 Bit OS
- 1GB of RAM
- 20GB of disk space
- Dedicated Public IP Address
Login to the VPS provider website and configure the external firewall to allow SSH port 22 and the Rupaya Wallet TCP port 9050.
Login to the VPS, via SSH, as the root user.
Install Linux updates:
apt install make apt install aptitude -y apt-get update -y apt-get upgrade -y
Install fail2ban and create modifiable configs for fail2ban and its jail settings. Run these commands one at a time to install basic ssh protection with fail2ban:
apt-get install fail2ban -y cp /etc/fail2ban/fail2ban.conf /etc/fail2ban/fail2ban.local cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Install tzdata. Run the following command to install the application that will allow you to select your clock timezone:
apt install tzdata
Set your time zone. Run the following command to set your preferred time zone:
Configure a virtual swap space on the VPS to avoid running out of memory:
fallocate -l 3000M /mnt/3000MB.swap dd if=/dev/zero of=/mnt/3000MB.swap bs=1024 count=3072000 mkswap /mnt/3000MB.swap swapon /mnt/3000MB.swap chmod 600 /mnt/3000MB.swap echo '/mnt/3000MB.swap none swap sw 0 0' >> /etc/fstab
Configure the VPS internal firewall to allow SSH port 22 and the Rupaya Wallet port 9050:
ufw allow 22/tcp ufw limit 22/tcp ufw allow 9050/tcp ufw logging on ufw --force enable
Create a New User and Login as rupxmn
Create a new user named rupxmn and assign a password to the new user:
useradd -m -s /bin/bash rupxmn passwd rupxmn
Grant root access to the new user rupxmn:
usermod -aG sudo rupxmn
Login as the new user rupxmn:
Download and Configure the Rupaya Hot wallet
Install the Rupaya Hot wallet on the VPS:
wget https://github.com/rupaya-project/rupx/releases/download/v5.0.25/rupayaqt-linux-64bit.tar.gz sudo tar xvzf rupayaqt-linux-64bit.tar.gz -C /usr/local/bin/
Start the Hot wallet:
Generate the MasterNode private key (aka GenKey):
rupaya-cli masternode genkey
Copy and save the MasterNode private key (GenKey) from the previous command to be used later in the process:
Stop the Hot wallet with the rupaya-cli stop command:
Copy the rupaya.conf template, paste it into a text editor, and update the variables manually:
rpcuser=rupayarpc rpcpassword=<alphanumeric_rpc_password> rpcport=7050 rpcallowip=127.0.0.1 rpcconnect=127.0.0.1 rpcbind=127.0.0.1 maxconnections=512 listen=1 daemon=1 masternode=1 externalip=<public_mn_ip_address_here>:9050 masternodeaddr=<public_mn_ip_address_here> masternodeprivkey=<your_masternode_genkey_output>
Edit the MasterNode Hot wallet configuration file ~/.rupayacore/rupaya.conf:
Paste the updated template into the rupaya.conf configuration file on the Linux VPS.
Save and exit the file by typing CTRL+X and hit Y + ENTER to save your changes.
Restart the Hot wallet with the rupayad -daemon command:
Verify the Hot wallet is synchronizing with the blockchain
Run the rupaya-cli getinfo command to make sure that you see active connections:
Run the rupaya-cli getblockcount command every few mins until you see the blocks increasing:
- NOTE: If your block count is NOT increasing then you will need to stop the Hot wallet with the rupaya-cli stop command and then reindex with the rupayad -reindex command.
- NOTE: If you did the reindex and you continue to have issues with establishing connections then check that the VPS provider external firewall is setup correctly to allow TCP port 9050 from anywhere. If that is not setup correctly then you will not be able to proceed beyond this step.
If your block count is indeed increasing, then you can proceed to the next step to setup the Cold wallet.