Setting up Neos V3 MN with VPS remote hosted wallet, local control


#1

I got my MN running last night with my remote hosted wallet on Vultr. Here is my guide.

Download/compile your flavor of local control wallet at https://github.com/neoscoin/neos-core
Install the wallet, and run it. Allow it to sync.
If you are importing a V2 wallet, follow the guide that Syntaks wrote.

""In a nutshell, first load up your old Neos wallet and click on Tools-Debug Console and type the following:

dumpwallet neosv2_dump.txt

This will create a dump file in the same directory as where neoscoin-qt.exe is located. Place neosv2_dump.txt in the same directory as you saved neos-qt.exe in.

Once that finishes, download the newest v3 wallet and click Tools-Debug Console and type: importwallet neosv2_dump.txt

This will import your private keys from the dump, and rescan for transactions. The balance you had on the old chain should now show.

If you’re in Linux, the order of operations are as follows:

neoscoind dumpwallet neosv2_dump.txt

neoscoind stop

neosd

neos-cli importwallet neosv2_dump.txt""

Once the wallet it fully synced, create a New receive address for each MN you will be running. File-Receiving Address-New . Give it an Alias that is short and easy to remember. Copy the address to a text document.

Now go to Tools-Debug Console and type in > > createmasternodekey for each MN you will be running. Copy the generated code to the text document.

Send EXACTLY 5,000 Neos to each Masternode wallet address you created.

Once the transaction is confirmed, go to Tools-Debug Console and type > getmasternodeoutputs this will give the txID and outputindex of any transactions that meet the masternode collateral requirements. Match the txID and outputindex with the address that you sent the Neos to. Copy the txID and the outputindex to the text document.

Go to Tools-Open Masternode Configuration File and enter the information that you copied to your text document in the format that is given in the commented out example
“Alias IPAddress:44473 MasternodeKey txID outputindex”
We have not set up our VPS yet, so you will not have the IP address until then. the 44473 is the port that is required.

Setup a VPS on Vultr

, Use a Ubuntu 14.04 x64, 1Cpu, 1024Mb Memory, 1000Gb Bandwidth. Name the instance Something easy to differentiate it from any other MN you may run. Copy the IP address to you text document.

Use Putty, Teraterm, or other terminal to log in with the credentials provided by vultr

Lets start by creating the swapfile that we need so it does not crash when making the wallet

sudo dd if=/dev/zero of=/var/swap.img bs=1024k count=1000
sudo mkswap /var/swap.img
sudo swapon /var/swap.img

We want to make it so the swap file will stay if the server is rebooted.

sudo chmod 0600 /var/swap.img
sudo chown root:root /var/swap.img

Open the fstab file with

sudo nano /etc/fstab

add the line:

/var/swap.img none swap sw 0 0
to the end of the file text
Crt+X to exit, and Yes to save when exiting, do not change the file name

Install the dependencies needed to compile the Neos Masternode. Whenever prompted to continue, type Y and ENTER

sudo apt-get update
sudo apt-get install automake
sudo apt-get install libdb+±dev
sudo apt-get install build-essential libtool autotools-dev
sudo apt-get install autoconf pkg-config libssl-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libminiupnpc-dev
sudo apt-get install git
sudo apt-get install software-properties-common
sudo apt-get install python-software-properties
sudo apt-get install g++

Download and install the Berkeley DB v4.8 (There will be a prompt saying something about this Repo being old, Hit ENTER to continue)

sudo add-apt-repository ppa:bitcoin/bitcoin
sudo apt-get update
sudo apt-get install libdb4.8-dev libdb4.8+±dev -y

Navigate to the home directory, and download the V3 Neos source

cd ~
git clone https://github.com/neoscoin/neos.git

Now we compile the Neos MN with no GUI and use the Berkeley DB v4.8

cd ~/neos/
./autogen.sh
./configure --without-gui
make
sudo make install
This will take a while to complete these steps. Whenever prompted to continue, type Y and ENTER.

Now, if you are setting up another MN, take a snapshot of this instance to save you all of the above work again. Start your new instance and select Snapshot as the OS.

In any new instances from a snapshot, do this when logging in for the first time before anything else to change the name to something different from your first MN host.

sudo nano /etc/hosts
sudo nano /etc/hostname
CTRL+X to exit, Y to save and Don’t change the file name.

Now we edit the config for individual masternode

mkdir ~/.neos/
cd ~/.neos/
touch neos.conf
nano neos.conf

Enter these lines in your neos.conf with you information from the earlier text document filled in where indicated.

rpcuser=(create a username)
rpcpassword=(enter a strong password)
rpcallowip=127.0.0.1
daemon=1
server=1
listen=0
maxconnections=256
masternode=1
externalip=(VPS IP Address)
bind=(VPS IP Address)
masternodeaddr=(VPS IP Address):44473
masternodeprivkey=(Insert your masternode key we generated above)

Now we run the neos wallet to let it sync

neosd

If you need to stop or restart the neos client, you need to use cli commands

neos-cli stop #stops the service
neos-cli restart # restarts the service

using

neos-cli help
will give you a list of all the commands.

So now we should have our remote wallet all set up and running, and we should have the local control wallet all set up with out masternode.conf all filled in now.
Start you MN(s) in Tools-Debug Console
enter the command startmasternode all 0

It should show success next to the txid and output index of the MN(s) that were started successfully. Under the Masternodes tab in the local wallet it will show status as enabled.

Thanks to @DarbyOgill_ on medium.com for the base that this guide was written from