Installing Etho Protocol Nodes
This page explains how to use Debian/Ubuntu/Mint Linux or Redhat/CentOS/Fedora to run the Etho Protocol Masternode and Service Node software
Last updated
Was this helpful?
This page explains how to use Debian/Ubuntu/Mint Linux or Redhat/CentOS/Fedora to run the Etho Protocol Masternode and Service Node software
Last updated
Was this helpful?
The Etho Protocol project features three types of nodes: Gateway Nodes, Master Nodes, and Service Nodes. The purpose of these nodes is to provide storage and computational resources to the ethoFS network, to provide capacity and redundancy for content hosted decentrally (on many nodes!) on the network. This guide focuses on the setting up for Masternodes and Service Nodes.
It is possible to host an Etho Protocol Node on any server which meets the minimum requirements detailed below. Either on a dedicated server or through an online VPS provider, such as , , and many others. Most people opt for the VPS option, as it is typically much easier to configure and does not have the same cost as a local server does. It is important to spread nodes across a range of providers and data centers within each provider, in the case of network outage of a particular data center or provider. The more distributed geographically the more resilient the network will be.
The collateral required to host a gatewaynode is 30 thousand, a masternode is 15 thousand ETHO and a service node only requires 5 thousand ETHO.
Servers running Etho Protocol nodes must adhere to the following hardware and networking requirements:
Have a static public IPv4 address
Gateway Nodes require 4GB of RAM, Masternodes require 2GB of RAM and Service Nodes 1GB of RAM
Must allow firewall access through TCP ports 80, 4001, 5001 and 30305. (For node traffic)
An uptime of 95% is required for Service Nodes and Masternodes
An uptime of 98% is required for Gateway Nodes
This section of the guide will focus on setting up a VPS server through Vultr. As previously mentioned, it is possible to use a range of different providers or your own server-grade hardware. Just and choose the right one for you.
In order to get started with Vultr, setup and account and deposit some funds.
After setting up an account on Vultr, and having deposited funds to your account through the billing section, it is now possible to begin setting up a VPS.
On the menu, select the servers page. From there, click on the plus icon to add a new server.
Now you will be presented with a page titled Deploy New Instance. This page is where all of the settings for the VPS are selected. The following steps detail what options you need to select during the server setup process
Server Location: The location of the server is not particularity important, I’d suggest picking the server location nearest to your location for the lowest latency when connecting to the VPS. (Although in reality location is not likely to have a significant impact on connection speed.)
Server Type: This is where you select the operating system for the VPS. It is possible to run Etho Protocol nodes on a range of Linux based operating systems, such as Ubuntu, Debian, and Fedora. For the purposes of this guide, we will be using an Ubuntu-based VPS. (Ubuntu version 16.04)
Server-Size: For the service node, the $5 / month package is sufficient, while for the Master Node the $10 / month package is sufficient. The gateway node will require the $20 / month package.
There is no need to select any options under the Additional Features, Startup Script or SSH Keys options. These can all be left blank.
Server Hostname & Label: Name the server something appropriate, such as Etho Protocol Master Node 01. So you can keep track of it if you have multiple instances.
Press the Deploy Now Button. It will take a couple minutes for the VPS to be set up.
SSH is the secure method which we use to connect to the server in order to configure the operating system and node. This requires TCP port 22 to be open, as this is the port which the SSH protocol uses by default to communicate with the server.
On Windows, an SSH client must be downloaded, such as Putty.
To connect to the server through SSH you will need the IP address of the server, along with the root username and password. This can be found on the VPS provider's website or in your email inbox.
Using Putty, input your IP address from your server /VPS in order to start an SSH connection.
You will receive the warning screen below when you connect to your VPS for the first time. Simply select Yes and this will save the server's fingerprint on your home computer.
SSH is built into macOS and Linux operating systems within the terminal, so no additional programs are needed; you simply type ssh <username>@<ip_address_of_server> (provided by VPS company)
as seen below:
When first SSH-ing into the VPS, use root@<ip_address_of_server>
, then switch over to ether1node@<ip_address_of_server>
when the guide says to do it below
Just like with Windows, macOS and Linux machines will warn you to save the SSH fingerprint of the server upon first connecting to it.
Not all VPS configurations are the same. Sometimes you will have software installed that is using the service port numbers required for the operation of Etho Protocol Gateway Nodes: TCP ports 80,4001, 5001 and 30305.
There is an easy way to make sure all necessary ports are unused. Simply run the commands below and make sure there is no output returned for any of them. If you see any output, that means you need to disable something in order to run your Etho Protocol Gateway Node.
Here's what a good configuration looks like:
You may see output when you run the command above. If you do, observe the name of the process and disable it. The name of the process is displayed on the left side.
Simply run the 2 commands below to disable the service blocking your port. Then run the first command over again to ensure the port has been released. Replace the name of the service with what you see shown on the left side (in red)
This section of the guide is designed for Debian / Ubuntu based servers. Please see the next section of the guide if your server is running on CentOS, Fedora or Redhat. After logging into the server as root, it is best to do some general updates. Copy and paste the following commands, one by one, into the SSH window, to make sure the operating system is updated. We will also set up a user to run the node software under, as it is not advisable to run the node under the root user.
While still logged in as root, make sure your firewall is configured by allowing TCP ports 22 and 30305 for server administration and Etho Protocol node communications.
One last task to be executed as root is configuring fail2ban, which will blacklist IP addresses that try to guess your root or ether1node password.
The last command makes sure that fail2ban is operating properly. Ensure you have 1 jail active as seen below
After running the above commands & creating the ether1node user, disconnect from the server by closing down the Putty window or by type exit
into the same window. Then reconnect to the server using the same IP address as before, but using the ‘ether1node’ user which you just set up.
You will be presented with the following terminal window if you logged in to the new user account properly. It is very important to ensure that you are connected as ether1node and not as the root user.
Now you are connected to the server as the correct user we are going to install the node. Then reconnect to the server using the same IP address as before, but using the ether1node user which you just set up. It's very important to use the ether1node user to run the commands below.
Gateway nodes, requiring staking of 30k ETHO
Master nodes, requiring staking of 15k ETHO
Service nodes, requiring staking of 5k ETHO
Then You have below the tailored installation scripts for Debian or Ubuntu. Also, scripts for CentOS/Redhat or Fedora are available. These scripts are pasted into a VPS prepared to host your IPFS node.
Now the node script is running on the Server! In order to double check that the node is running you can use one of these commands:
Once Your node contacts the dashboard, You will see it listed here. For nodes to be able to receive payments, the node needs to be online for 24hrs. Node details will be showing information on the payments.
You should see the following terminal output after running the first command if everything is working properly. (Pay attention to the active status in the terminal output)
This section of the guide is designed for CentOS, Fedora and Redhat based servers. Please see the previous section of the guide if your server is running a Debian or Ubuntu based operating system. After logging into the server as root, it is best to do some general updates. Copy and paste the following commands into the SSH window, to make sure the operating system is updated. We will also set up a user to run the node software under, as it is not advisable to run the node under the root user.
While still logged in as root, make sure your firewall is configured by allowing TCP ports 22 and 30305 for server administration and Etho Protocol node communications.
One last task to be executed as root is configuring fail2ban, which will blacklist IP addresses that try to guess your root or ether1node password.
On RPM based systems, fail2ban is not enabled by default. You have to edit the jail.local file to enable it
Simply remote the hashtags and save the file by pressing Ctrl+X then Y to confirm. Now start the fail2ban service and ensure you have 1 jail active
After running the above commands, disconnect from the server by closing down the Putty window. Then reconnect to the server using the same IP address as before, but using the ether1node user which you just set up. It's very important to use the ether1node user to run the commands below.
Now you are connected to the server as the correct user we are going to install the node. Then reconnect to the server using the same IP address as before, but using the ether1node user which you just set up. It's very important to use the ether1node user to run the commands below.
Gateway nodes, requiring staking of 30k ETHO
Master nodes, requiring staking of 15k ETHO
Service nodes, requiring staking of 5k ETHO
Then You have below the tailored installation scripts for Debian or Ubuntu. Also, scripts for CentOS/Redhat or Fedora are available. These scripts are pasted into a VPS prepared to host your IPFS node.
Now the node script is running on the Server! In order to double check that the node is running you can use one of these commands:
Once Your node contacts the dashboard, You will see it listed here. For nodes to be able to receive payments, the node needs to be online for 24hrs. Node details will be showing information on the payments.
You should see the following terminal output after running the first command if everything is working properly. (Pay attention to the active status in the terminal output)
Log in to the node dashboard and press on "Install a Node"
Log in to the node dashboard and press on "Install a Node"