Feirm Masternode Setup Guide on Linux/Ubuntu VPS for Single/Multiple Masternodes || Cold wallet VPS Masternode Guide
Feirm Masternode Requirements:
Masternode Collateral:
2500 Feirm for each masternode plus a little extra for transaction fee. For this, you should ideally get 2501 Feirm for your first masternode.
A text editor such as Notepad(Windows), TextEdit(Mac) or nano (Linux/Mac)
Getting a VPS service from a provider
Linux/Ubuntu VPS with 1G of ram or more is required.
DigitalOcean provides good service and their VPS can be set up within minutes. It will cost $5/month or $0.007/hour. Here is a referral that gives you $10 free credit if you use this link:
https://m.do.co/c/75eb94f51392
After opening an account with your VPS provider, you will need to create your own VPS (Droplets on DigitalOcean). Following specs will be sufficient to run a Feirm masternode:
Ubuntu 16.04.3 x64 or 17.10 x64
1 GB Memory
1vCPU
25 GB drive space
1 TB Bandwidth
Cost: $5/month or $0.007/hour
Step 1: Connecting to the Linux/Ubuntu VPS Via Putty
If your OS is 64 bit, download the putty.exe file:
https://the.earth.li/~sgtatham/putty/latest/w64/putty.exe
If your OS is 32 bit, download the putty.exe file:
https://the.earth.li/~sgtatham/putty/latest/w32/putty.exe
Run Putty and paste your VPS IP Address into the Hostname field of Putty console
Click Open to start Linux VPS Putty session
Click Yes on the Putty Security Alert to install security certificate
At the Putty terminal, type ‘root’ to log in as root user and hit enter/return. You can use right click to paste on Putty. At password prompt, paste in the root password and hit ENTER. For DigitalOcean, your password for root user will be sent to you via email and when you log in as root user for the first time, you will be asked to change that password. Enter the old password again and then new password of your choice. You must remember this password to login as root user from next time on.
In this example, our IP is mn1_IP.
Over this guide, the highlighted content can be copy and pasted.
Step 2: Installing Feirm Wallet on local PC/MAC/Laptop
Download Feirm wallet from https://www.feirm.com/, unzip, install and run it and let it sync to the network and have your text editor ready. For a quick sync, add some nodes to your local feirm.conf file (see below step- ). Please do not forget to encrypt the wallet first and then to create backup of wallet file before any transactions (extremely important).
Once you are synced, in the wallet, go to >File>Receiving addresses, click on ‘new’ button and enter a name (Alias) for your masternode (DO NOT USE SPACES) into the text field under Label. This will create a receiving address for one masternode. In this example our Alias is mn1. If you are setting up multiple masternodes, create new addresses for each masternodes and name each of them them like this: mn2, mn3, mn4 and so on.
Send exactly 2500 Feirm to the new address, called Alias (mn1 in this example), that you have just created and wait for few confirmations. For multiple masternodes, send 2500 Feirm to each Alias addresses.
Now go to the menu bar and select "Tools" then "Debug Console".
Click on console and type:
masternode genkey
Now hit return/enter. Copy the genkey=masternodeprivkey and save it to a local text file. In this example our genkey/masternodeprivkey is mn1_privkey
Back in the Debug Console, type:
masternode outputs
Copy and save the output=Transaction_ID along with Index_ID which can be either 0 or 1, into the local text file for later use. In this example our Transaction_ID is mn1_outputs and Index_ID is 1.
Step 3: Setting up Linux/Ubuntu VPS
On your local machine use putty or your terminal to log into your VPS as root user.
Once logged in, upgrade your server.
Copy and paste each line one at a time:
apt-get update
apt-get upgrade
Now create an admin account with sudo access (this can be any username but we will use feirm1 here as example):
Click on console and type:
adduser feirm1
Put a new password (important: you will need to remember the username and password, keep a note/hint somewhere. I strongly suggest writing down details about VPS service, e.g. VPS name, tag, IP, settings and details of each masternode config in a separate text file which will come in handy in future for maintenance or upgrading).
Keep pressing enter, then Y and enter to confirm. You can leave user details blank.
Now type or right click on putty one line at a time:
adduser feirm1 sudo
sudo ufw allow 4918
To do the compile we should set up a swap space (Virtual Memory) to prevent compiling errors. Run the following commands (as root user).
copy and paste each line one at a time.
su root
fallocate -l 3G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo -e "/swapfile none swap sw 0 0 \n" >> /etc/fstab
After this you should reboot your VPS. You can easily reboot by entering:
sudo shutdown -r now
Now, close the putty window, rerun it and log in as user that you have just created, feirm1 in this example.
Step 4: Installing Dependencies
Install Dependencies so Feirm daemon can run (running as user feirm1).
Copy and paste each line one at a time (enter password when asked):
su feirm1
sudo apt-get install -y pkg-config
sudo apt-get -y install build-essential autoconf automake libtool libboost-all-dev libgmp-dev libssl-dev libcurl4-openssl-dev git
sudo apt-get install -y software-properties-common python-software-properties
sudo apt-get -y update && sudo apt-get -y install build-essential libssl-dev libdb++-dev libboost-all-dev libcrypto++-dev libqrencode-dev libminiupnpc-dev libgmp-dev libgmp3-dev autoconf autogen automake libtool
sudo add-apt-repository ppa:bitcoin/bitcoin
(you need to press ENTER to confirm)
sudo apt-get update
sudo apt-get install libdb4.8-dev libdb4.8++-dev
(want to continue? Type Y and hit enter)
sudo apt-get install libboost-all-dev libevent-dev software-properties-common -y
Some commands may take a minute/two, wait patiently.
Step 5: Compiling wallet from source
Copy and paste each line one at a time (running as user feirm1):
cd
sudo git clone https://github.com/feirm/feirm.git
cd feirm
sudo chmod +x share/genbuild.sh
sudo chmod +x autogen.sh
sudo chmod 755 src/leveldb/build_detect_platform
sudo ./autogen.sh
sudo ./configure --with-gui=no
sudo make
sudo make install
Last few commands will take most of the time (around 10 to 30 minutes)
Step 5: Creating the masternode configuration file
Before the node can operate as a masternode a custom configuration file is needed to be created. Since we have not loaded the wallet yet, we will create the necessary directories and the configuration file by typing the following commands:
mkdir ~/.feirm/ && touch ~/.feirm/feirm.conf
cd ~/.feirm
This has created a blank feirm configuration file that we will enter our masternode configuration variables. To configure a masternode, carry out the following:
Load the feirm.conf file in the editor of your choice. In this example, nano is used.
Again, click on console and type:
sudo nano ~/.feirm/feirm.conf
Now copy and paste (right click on putty window) the following configuration settings into the editor:
rpcuser=any_username
rpcpassword=any_password
rpcallowip=127.0.0.1
server=1
listen=1
daemon=1
ipv6=0
port=4918
maxconnections=500
masternode=1
masternodeaddr=mn1_IP:4918
externalip=mn1_IP:4918
masternodeprivkey=mn1_privkey
addnode=51.255.48.39
addnode=54.37.18.16
addnode=18.217.22.55
You cam replace any_user and any_password with ANY USER or ANY PASSWORD you like, but if you are setting up multiple masternodes, you must use the same user and password for all of them.
Step 6: Starting the masternode on VPS
Click on console and type:
feirmd -daemon
Wait for the daemon to sync up, if you don't you may have issues starting your masternode. You can check on the status by running:
feirm-cli getblockcount
You can check the block height against your synced local machines wallet block count under tools >> Information (blockchain)
Once the Feirm daemon is synced
Step 7: Setting up local wallet for masternode control (WINDOWS/MAC)
To control our remote masternodes we need to create a link between the windows wallet and the VPS. This link is created by adding additional masternode configuration settings to a masternode.conf file for the windows wallet.
Load the feirm.conf file for editing:
Navigate to the Feirm data folder. You can quickly get to this folder by typing %appdata% in File Explorer.
Load the feirm.conf file in the editor of your choice. Paste the following configuration settings into the editor:
rpcuser=any_username
rpcpassword=any_password
addnode=51.255.48.39
addnode=54.37.18.16
addnode=18.217.22.55
any_username and any_password must be same that you have used for VPS config.
Save the file and exit.
Load the masternode.conf file for editing:
Navigate to the Feirm data folder. You can quickly get to this folder by typing %appdata% in File Explorer like before.
In this folder, load the masternode.conf in your favourite text editor.
In the masternode.conf file you need to enter a line for each masternode that you want to control:
Alias IP:port masternodeprivkey Transaction_ID Index_ID
In this example, it will be:
mn1 mn1_IP:4918 mn1_privkey mn1_outputs 1
It will look something like this:
mn1 123.76.39.14:4918 dsfdfdsdffgjk0eru0opdjfg095toj 094surljfdg09u034tdjff09ud09uo3ijdf09uij 1
Save the file and exit.
Close and Restart the Feirm windows wallet
If the wallet is already open, close and reload and allow it to sync. Once it has completed syncing, we are ready to remote start our masternode. Navigate to the Masternodes section and click the My Masternodes tab. This tab will not contain any entries yet. Click Update, select your masternode and click on Start MISSING. You will get a confirmation window that your masternode is started. The wallet will now list your masternode and update the status.
This will complete your masternode setup but you will have to wait for the masternode to be matured before you get your first reward. The more masternodes come into the system, the more prolonged this waiting time will be.
Multiple Masternodes (VPS cold wallet) Setup With Single Control Wallet (Local):
This method requires different VPS servers with dedicated IPs, which is ideal for a network.
You need to generate separate masternodeprivekey for each masternode. Transaction_ID and Index_ID will also be different for each masternodes. You can use any masternodeprivkey for any Alias, considering one masternodeprivkey is not used for more than one masternode. But, Alias must match with its corresponding Transaction_ID and Index_ID. You can check Alias addresses from their Transaction_ID on explorer, so that you do not end up using a different Transaction_ID and Index_ID for that Alias/address. Simply follow the single masternode set up above to get masternodeprivkey, Transaction_ID and Index_ID for each new masternode address or Alias.
Keep the local feirm.conf untouched. It will be as same as was used for single masternode setup.
Add a new line for each masternodes in the Local masternode.conf
mn1 mn1_IP:4918 mn1_privkey mn1_Transaction_id Index_id
mn2 mn2_IP:4918 mn2_privkey mn2_Transaction_id Index_id
Some elements (highlighted with red) of Feirm.conf will be different for each VPS nodes.
Example of feirm.conf on VPS:
For MN1: feirm.conf
rpcuser=any_username
rpcpassword=any_password
rpcallowip=127.0.0.1
server=1
listen=1
daemon=1
ipv6=0
port=4918
maxconnections=500
masternode=1
masternodeaddr=mn1_IP:4918
externalip=mn1_IP:4918
masternodeprivkey=mn1_privkey
addnode=51.255.48.39
addnode=54.37.18.16
addnode=18.217.22.55
For MN2: feirm.conf
rpcuser=any_username
rpcpassword=any_password
rpcallowip=127.0.0.1
server=1
listen=1
daemon=1
ipv6=0
port=4918
maxconnections=500
masternode=1
masternodeaddr=mn2_IP:4918
externalip=mn2_IP:4918
masternodeprivkey=mn2_privkey
addnode=51.255.48.39
addnode=54.37.18.16
addnode=18.217.22.55
You can add as many masternodes as you want, just use corresponding values and add a new line in the local masternode.conf file for each masternode. You must restart your local wallet and then start the new masternode by clicking Start MISSING after configuring a new VPS node.
Honourable mentions/references:
Ras Al Ghul, The OHM Lord. A large part of this guide was written based on his Karmanode setup guide: ohmdev.ohmcoin.org/article.php?story=ohmcoin_karmanode_set_up_guide
Artax Masternode guide: https://github.com/Artax-Project/Artax/wiki/Artax-Hot-Cold-VPS-Masternode-on-Windows
Solaris Coin masternode guide: https://docs.google.com/document/d/1Z3h_qA7N3-KMA1ECxyfDbBO-_lG7Hkrp_8Iy0s2iUMI/edit
Congratulations @ramer! You received a personal award!
You can view your badges on your Steem Board and compare to others on the Steem Ranking
Do not miss the last post from @steemitboard:
Vote for @Steemitboard as a witness to get one more award and increased upvotes!