Difference between revisions of "Masternodes: Automated Setup Guide"

From Genesis Network Wiki
Jump to navigation Jump to search
(Features of this script)
Line 2: Line 2:
  
 
Video Tutorial can be found <html><a href="https://www.youtube.com/CIDZFobAtrs" target="_blank">here</a></html>
 
Video Tutorial can be found <html><a href="https://www.youtube.com/CIDZFobAtrs" target="_blank">here</a></html>
== Features of this script ==
+
== Features of This Script ==
 
This script is probably the most '''secure''' way you can build a masternode automatically.  
 
This script is probably the most '''secure''' way you can build a masternode automatically.  
 
* Creates a user called "'''genesis'''" so that information isn't directly available from root user login
 
* Creates a user called "'''genesis'''" so that information isn't directly available from root user login
Line 8: Line 8:
 
* Utilizes '''Fail2ban''' which scans log files and mans IPs showing malicious signs to reject any exploits
 
* Utilizes '''Fail2ban''' which scans log files and mans IPs showing malicious signs to reject any exploits
 
* '''Allows access to command line (cli) commands from root by typing <code>source ~/.bashrc</code> followed with <code>genesis-cli xxxxx</code>'''
 
* '''Allows access to command line (cli) commands from root by typing <code>source ~/.bashrc</code> followed with <code>genesis-cli xxxxx</code>'''
 +
 
== Pre-Requisites ==
 
== Pre-Requisites ==
 
First and foremost, you must make sure these requirements are met for setting up a masternode. Really, you need all of them.
 
First and foremost, you must make sure these requirements are met for setting up a masternode. Really, you need all of them.

Revision as of 21:05, 23 March 2019

This page describes exactly how to create a Genesis Masternode with using the official automated script.

Video Tutorial can be found here

Features of This Script

This script is probably the most secure way you can build a masternode automatically.

  • Creates a user called "genesis" so that information isn't directly available from root user login
  • Uses UFW firewall to securely allow needed access and reject others
  • Utilizes Fail2ban which scans log files and mans IPs showing malicious signs to reject any exploits
  • Allows access to command line (cli) commands from root by typing source ~/.bashrc followed with genesis-cli xxxxx

Pre-Requisites

First and foremost, you must make sure these requirements are met for setting up a masternode. Really, you need all of them.

  • A fully-synced full-node Genesis wallet.
    • Always check that you have the latest version (v3.0+)
  • 750,000 $GENX collateral for each masternode
  • PuTTY (Download Here)
  • A remote VPS (Virtual Private Server) running Ubuntu 18.04
    • We recommend DigitalOcean, Vultr, or MasterHash
    • Other VPS providers can and may work. Some VPS providers may require additional work such as AWS
      • Recommended safe size VPS is 2GB RAM, 2 Core CPU. Recommended minimum size VPS is 2GB RAM, 1 Core CPU
      • Anything lower than 2GB RAM, 1 Core CPU could result in issues with compiling and will be very slow
      • Future upgrades of the network will require more robust VPS's

Local Setup

Create a Text File and Setup in this Manner

Masternode: 
Private Key: 
Address: 
Transaction: 
Output: 
IP:

Generate a Private Key for Your Masternode

  1. Open up the console on the full-node wallet by click Help > Debug Window > Console
  2. Enter the following into the console and press enter
masternode genkey
  1. The result is your Private Key - Add to your text file under "Private Key:"
MN-TUT-1.png

Create a Public Address for Your Masternode

  1. Still having the console open, enter the following and press enter
getaccountaddress "masternode01"
  1. Feel free to rename "masternode01" to a name of your choosing
  2. The result is your public address - Add to your text file under "Address:"
MN-TUT-2.png

Transfer your 750,000 GENX Collateral

  1. Still having your console open, enter the following and press enter
    sendtoaddress "address" 750000
    Make sure to replace "address" with the actual address in your text file
MN-TUT-3.png

Verify & Obtain Transaction Info

  1. Still having your console open, enter the following and press enter
    masternode outputs
    You may need to wait for 1 confirmations (~1 minutes)
  2. The result is your transaction ID and output
    • Add the text string to your text file under "Transaction:"
    • Add the single digit output to your text tile under "Output:"
MN-TUT-4.png

Edit Your Local Masternode Conf File

  • Get your IP from your VPS provider. If using Digital Ocean, this will be emailed to you
  • Head back to your local PC where you have your Genesis full-node wallet installed.
  • Depending on your OS, locate the Genesis Masternode configuration file, open with Notepad, nano or your favorite text editor
    • Windows — %appdata%Genesis\main\masternode.conf
    • Linux — ~/.genesis/main/masternode.conf
    • MacOS — ~/Library/Application Support/Genesis/main/masternode.conf
  • Follow the example and use your text file to fill out the information:
masternode01 IP:7233 PrivateKey Transaction Output
  • Example
MN01 193.178.10.163:7233 WDi7PZVAhW85qdGcDGfDvZr8ruUDYC3j7kB4mD47vbXqg2HWKe 8ef75988f9dc08ac345effdeabf0cc0d5ed992c781dde1e08f674af776be76b4 1
  • Now save your configuration file, close your Genesis full-node wallet and reopen it
MN-TUT-13.png

VPS Setup

Login to Your VPS

  • Download, install and open PuTTY
  • Get the IP/User/Pass from your email (DigitalOcean)
  • Input the IP address into the PuTTY window and press Open
    • Alternatively, you can also save your VPS in PuTTY by putting in a name of your choice and pressing Save. Double click the saved session to open
    • Security warning will come up, simply press Yes
  • After the security warning, type your User/Pass from the email, then it will prompt you to change your password
    • Your password will not actually show anything on the screen while you're typing or if you copy/pasted. This is fine, just type and hit enter
  • Pro-tip: Right-click is paste in terminal (VPS)
MN-TUT-6.png

Auto Script

Run Automatic Script

  • This script assumes you are a root user or logged in with sudo access.
  • This will create a new user called "genesis". Type the following
bash <(curl -sL genesisnetwork.io/mn-installer)
  • Follow instructions carefully! Please report issues in the Discord
  • Default values are found in [brackets] and pressing enter will select the default value.
  • Your masternode private key will be in the "Private Key" portion of your text file
MN-TUT-AUTO-1.PNG

Finalization

Start Your Masternode!

  • Once you reopen your full-node wallet, let it sync fully
  • Head over to the Masternodes tab
  • You should see your masternode inside the list under "My Masternodes" with the status "MISSING"
  • Right click the entry and select "start-alias"
  • Your masternode should go into "PRE-ENABLED" state
  • Wait between 10-30+ minutes and the masternode should go into "Enabled"

That's it!! Congratulations, your masternode is ready to go!

MN-TUT-14.png

Help

Commands

Must run source ~/.bashrc prior to accessing command line options!!

  • genesis-cli -getinfo aggregated command to show basic info about your node
  • genesis-cli masternode status command that shows basic masternode info including status
  • genesis-cli mnsync status shows syncing status of your masternode
  • genesis-cli stop stops your server
  • genesisd starts your server