Jagoancoin docs

How to activate smartnodes on Ubuntu VPS

How to activate smartnodes on Ubuntu VPS
  1. 1.
    Update the server
sudo apt update && sudo apt upgrade -y
sudo apt install unzip
2. Add 2GB of SWAP First check to make sure there is not already swap active:
free -h
If the return is 0, you should create and activate the SWAP. Swap: 0B 0B 0B
Create SWAP and Activate (only if required):
sudo dd if=/dev/zero of=/swapfile bs=1k count=2048k
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo echo "/swapfile swap swap auto 0 0" | tee -a /etc/fstab
sudo sysctl -w vm.swappiness=10
sudo echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf
The return of the echo should be: swappiness = 10
3. Enable firewall & open ports
First check to make sure there is not already swap active:
apt install ufw -y
ufw default deny incoming
ufw default allow outgoing
ufw allow ssh
ufw allow 17899/tcp
ufw enable
4. Install Fail2Ban
sudo apt install fail2ban -y
sudo nano /etc/fail2ban/jail.local
Copy and paste the following config into the file:
enabled = true
port = 22
filter = sshd
logpath = /var/log/auth.log
maxretry = 3

save your configuration

ctrl +x y then enter

Reboot the server:


Log back toyour VM

Add a system user to run jagoancoind:

adduser USERNAME
adduser USERNAME sudo
Switch to the user using
5. Jagoancoin daemon You can monitor the activity of the daemon with this command:
mkdir jagoancoin
cd jagoancoin

download latest daemon

Command for ubuntu 18.04

wget https://github.com/jagoanpilot/jagoancoin/releases/download/v1.1.2/jagoancoin-ubuntu18-
unzip jagoancoin-ubuntu18-
tar -xf jagoancoin-ubuntu18-

Command for ubuntu 20.04

wget https://github.com/jagoanpilot/jagoancoin/releases/download/v1.1.2/jagoancoin-ubuntu20-
unzip jagoancoin-ubuntu20-
tar -xf jagoancoin-ubuntu20-

create config file

mkdir .jagoancoincore
cd .jagoancoincore

create configuration file

nano jagoancoin.conf

paste configuration

externalip=put your vps ip

save your configuration

ctrl +x y then enter

sync with the network may take about 10-20 minutes for synce

cd jagoancoin/jagoancoin-build
./jagoancoind -daemon

check daemon sync ( must same explorer)

./jagoancoin-cli getblockchaininfo


"chain": "main",
"blocks": 6127,
"headers": 6127,
"bestblockhash": "7009330d79d901c6026c7ae95e1be781bcfa767ef3bf9957b9a588b719a430a2",
"difficulty": 0.0747120277985517,
"mediantime": 1662384224,
"verificationprogress": 1,
"initialblockdownload": false,
"chainwork": "000000000000000000000000000000000000000000000000000000f5394469e0",
"size_on_disk": 6494486,
"pruned": false,
"softforks": [
"bip9_softforks": {
"warnings": ""
6. Collateral address
Open your LOCAL wallet. Create new receiving address. Send 500,000 JGC to the new receiving address. Wait transaction confirmation
7. Build protx command for control wallet
Enter the protx command in the Debug console of YOUR LOCAL wallet. This will create a .conf file for that node in the same directory you ran the wallet from.
protx quick_setup [Transaction ID] [Collateral index] [Smartnode server IP:17899] [Fee address]
The structure from left to right is:
Transaction ID
In your wallet go to “Transactions” right click the one you sent yourself earlier and “Copy Transaction ID”. Replace the Transaction ID in example.
Collateral index
Tools > Debug console. Type smartnode outputs to check if 1 or 0. Adjust example command if needed.
Smartnode server IP:17899
Replace example IP with your Smartnode server IP, leave port as is.
Fee address
This is any address in your wallet that contains enough JGC to pay the fee (cannot be the address to which you sent the 500,000 JGC). When you enter the protx quick_setup command it is a transaction and needs to be paid for. It is a very small amount of -0.00000479 JGC. In Debug console do “listaddressbalances” to show all addresses with a balance, choose one, and replace the address in the example command.
protx quick_setup "38be2b14541b4018fd5532eda4ccb192798f23d0b91f93bcdf666b25154cac16" "1" "" "JSsSMLwBmTfEaBAvoVG2WJu9q1m8YSpSEr"
"txid": "c52c9f954d6de7351887c7d5bca5dd3d46995722e5a9b695abe8aef573216e1d",
"tx": "0300010001b24bda52aa9db8558da5d8cf64e4363703a9fc466a0b5268cf94d1bde170fb020000000000feffffff015459cd1d000000001976a914d4bf1af10ee01dcc3b53fcfb75d26a2b6b88ebb488ac00000000d10100000000006773c2c119a8d679a706b15b1a51fe8050944115ca92527e15d5394ff86e4d480100000000000000000000000000ffff2d99b9d045eb295329fccbd56dd49770289f96d2c22f2453360d8c3fdda830f8fdb9c41129424aea4ee8f32b075ce39d0659930f9412978be41e57cd33bfa07422434382d9acdff7b5a765e9723ef2eb5301f86797751ca2b2e77368034900001976a9143bbec8664282ffbbfeb97b31e722bf5b6f81e4db88ac7f9513af520f97015c0654701ba5c836eec38301bf6abd8949bf4de8be7921cd00",
"ownerAddress": "JNJSfsXxvPEvqKm8nkviTrNGSy2dyzhkJm",
"votingAddress": "JTpoFBBWrTvqAF37Gov7iC3N4tt6Wgw769",
"payoutAddress": "JPyqkowWjVYTaT8jcDMRJgETF2S8zNrrrk",
"collateralAddress": "Jgtqrxibi2YQ7XM8m2BLWUvnsCGof3BGvk",
"collateralAmount": 500000,
"signedMessage": "IHI3Bcu5ft3qDrt3hQrgszLr+tDg8gNVeMakEv1+JnCnWcnfO45Evbboq8oQB8blHtsbvZGCgPEAF1xoqGMh=",
"operatorPublic": "8c3fdda830f8fdb9c41129424aea4ee8f32b075ce39d0659930f9412978be41e57cd33bfa07422434382d9acdff7b5a7",
"operatorSecret": "68bed74ad9b2012ee302dfdaad04b451e8f18b5da2f129c27bfb5aa8e00",
"jagoancoin.conf": "C:/Users/acer/OneDrive/Documents/Jgtqrxibi2YQ7XM8m2BLWUvnsCGof3BGvk_jagoancoin.conf"
8. Configure the smartnode

Stop daemon

./jagoancoin-cli stop

wait until the daemon is stopped, use top to monitor the processes

Open .conf file

nano .jagoancoincore/jagoancoin.conf
Add smartnodeblsprivkey and externalip from bottom configuration
Save your configuration

Start the daemon

cd jagoancoin/jagoancoin-build
./jagoancoind -daemon
Wait few minutes and validate the smartnode status:
./jagoancoin-cli smartnode status
"outpoint": "484d6ef84f39d5157e5292ca1541945080fe511a5bb106a779d6a819c1c27367-1",
"service": "",
"proTxHash": "c52c9f954d6de7351887c7d5bca5dd3d46995722e5a9b695abe8aef573216e1d",
"collateralHash": "484d6ef84f39d5157e5292ca1541945080fe511a5bb106a779d6a819c1c27367",
"collateralIndex": 1,
"dmnState": {
"service": "",
"registeredHeight": 6952,
"lastPaidHeight": 0,
"PoSePenalty": 0,
"PoSeRevivedHeight": -1,
"PoSeBanHeight": -1,
"revocationReason": 0,
"ownerAddress": "JNJSfsXxvPEvqKm8nkviTrNGSy2dyzhkJm",
"votingAddress": "JTpoFBBWrTvqAF37Gov7iC3N4tt6Wgw769",
"payoutAddress": "JPyqkowWjVYTaT8jcDMRJgETF2S8zNrrrk",
"pubKeyOperator": "8c3fdda830f8fdb9c41129424aea4ee8f32b075ce39d0659930f9412978be41e57cd33bfa07422434382d9acdff7b5a7"
"state": "READY",
"status": "Ready"