From d4271ce93fefe3db250878515fc73e7ab3862f49 Mon Sep 17 00:00:00 2001 From: Jason-farsider350 <31876349+farsider350@users.noreply.github.com> Date: Thu, 20 Jun 2019 13:54:45 +1000 Subject: [PATCH 1/4] Dual IP setup Vultr Ubu-18.04 Dual IP For setup of dual MNs on a single VPS --- XuezUpdate.sh => setup.sh | 355 +++++++++++++++++++++----------------- 1 file changed, 193 insertions(+), 162 deletions(-) rename XuezUpdate.sh => setup.sh (57%) diff --git a/XuezUpdate.sh b/setup.sh similarity index 57% rename from XuezUpdate.sh rename to setup.sh index 4cf834d..bfb275f 100644 --- a/XuezUpdate.sh +++ b/setup.sh @@ -1,162 +1,193 @@ -#/bin/bash -echo "" -echo "................................................................................" -echo "......................................N0OKW....................................." -echo "....................................W0c'.,dX...................................." -echo "..................................WKo'.....:ON.................................." -echo ".................................Nx;........'lKW................................" -echo "...............................WO:............,xX..............................." -echo ".............................WKl'...............cOW............................." -echo "............WWWWWWWWWWWWWWWWWN0xxxxxxxxxxxxxxxxxxOXWWWWWWWWWWWWWWWWWW..........." -echo "............WWNNNNNNNNWWWWXOxxxxxxdddddddddddxxxdkKNNNNNNNNNNNNNNNWW............" -echo "..............WWNNNNNNWMW0l'....................;xXNNNNNNNNNNNNNWW.............." -echo "................WWNNNNWXd,.....................l0NNNNNNNNNNNNNWW................" -echo "...................WWNk::cccccccc:...........;xXNNNNNNNNNNNNWW.................." -echo "...................W0o,'xXNNNNNNNXx;.......'o0NNNNNNNNNNNX00N..................." -echo ".................WKo,..'oXNNNNNNNNNKd,....:kXNNNNNNNNNNX0o,,l0W................." -echo "................Nx;.....,lOXNNNNNNNNNOl::dKNNNNNNNNNNXOl'....;dX................" -echo "..............WOc'........,o0XNNNNNNNNXXXNNNNNNNNNNXOl'.......':kN.............." -echo "............WKo,............,o0XNNNNNNNNNNNNNNNNNXOl,...........'l0W............" -echo "...........Xx;................;dKNNNNNNNNNNNNNNXOl,...............,dXW.........." -echo ".........Nk:'...................:kNNNNNNNNNNNNKo,...................;kN........." -echo "........Nx,....................,o0NNNNNNNNNNNNKd,....................'xW........" -echo "........WKl'..................:xKXXXXXXXXXXXXXXXOc'.................,dXW........" -echo "..........Nk;...............'lk0000000OkkO0000000Od:'.............'c0W.........." -echo "...........WKl'............:xO000000Oxc,,:dO0000000ko;'.''.''..'';xX............" -echo ".............Nk;.........,oO000000Oxc'....':xO000000Okl,''''.'''l0W............." -echo "..............WKl'......:dkOO000Oxc'........,cxO000000Od;'''.';xX..............." -echo "................Nk;...,lxkkkkkkdc'............,cxO00000k:''''c0W................" -echo ".................WKl,:dkkkkkxo;................',lxOOOOx;;llxX.................." -echo "..................WKkxkkkkxo;....................',;:::;';x0XW.................." -echo ".................WKOkkkkxo;...........................'';d000KN................." -echo "...............WN0kkkkkOo'............................'c0NK0000XW..............." -echo "..............NKOkkkkk0KOl;,,,,,,,,,,,,,,,,,,,,,,,,;;:o0NNK00000KNW............." -echo ".............N0OOkkkOOOOOOkkxddddddddddddddddddddddxkkOO00000000KKNW............" -echo "............WWNNNNNNNNNNNNNXx:'''''''''''''''''''':kXNNNNNNWWWWWWWW............." -echo "............................WO:..................:OW............................" -echo ".............................MXo'..............'oX.............................." -echo "...............................WO:............:OW..............................." -echo ".................................Xo'........'oX................................." -echo "..................................WO:......;OW.................................." -echo "....................................Xo'..'oK...................................." -echo ".....................................W0ddON....................................." -echo "" -echo "****************************************************************************" -echo "* This script will install and configure your XUEZ Coin masternodes. *" -echo "* *" -echo "* If you have any issues please ask for help on the XUEZ discord. *" -echo "* https://discord.gg/QWcK5Yk *" -echo "* https://xuezcoin.com/ *" -echo "****************************************************************************" -echo "" -echo "" -echo "" - -sudo su -c "echo 'deb http://deb.torproject.org/torproject.org '$(lsb_release -c | cut -f2)' main' > /etc/apt/sources.list.d/torproject.list" - gpg --keyserver keys.gnupg.net --recv A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 - gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add - - sudo apt-get update - sudo apt-get install tor deb.torproject.org-keyring - sudo usermod -a -G debian-tor $(whoami) - - sudo sed -i 's/#ControlPort 9051/ControlPort 9051/g' /etc/tor/torrc - sudo sed -i 's/#CookieAuthentication 1/CookieAuthentication 1/g' /etc/tor/torrc - sudo su -c "echo 'CookieAuthFileGroupReadable 1' >> /etc/tor/torrc" - sudo su -c "echo 'LongLivedPorts 9033' >> /etc/tor/torrc" - sudo systemctl restart tor.service - - - sudo apt-get update - sudo apt-get -y upgrade - sudo apt-get -y dist-upgrade - - sudo apt-get install -y ufw - sudo ufw allow ssh/tcp - sudo ufw limit ssh/tcp - sudo ufw logging on - sudo ufw allow 22 - sudo ufw allow 41798 - sudo ufw allow 9051 - sudo ufw allow 9033 - echo "y" | sudo ufw enable - sudo ufw status - -./xuez-cli stop -rm xuezd && rm xuez-cli && rm xuez-tx -wget https://bitbucket.org/davembg/xuez-distribution-repo/downloads/xuez-linux-cli-10110.tgz -tar -xvzf xuez-linux-cli-10110.tgz -rm xuez-linux-cli-10110.tgz -sudo su -c "echo -e 'listenonion=1' >> $CONF_DIR/$CONF_FILE" -echo "" >> $CONF_DIR/$CONF_FILE && echo "listenonion=1" >> $CONF_DIR/$CONF_FILE - -echo "Masternode Configuration" -echo "Your recognised IP address is:" -sudo hostname -I - echo "" - echo "We are using your default IP address" - echo "Enter masternode private key for node, followed by [ENTER]: $ALIAS" - read PRIVKEY - CONF_DIR=~/.xuez\/ - CONF_FILE=xuez.conf - PORT=41798 - IP=$(hostname -I) - mkdir -p $CONF_DIR - echo "rpcuser=user"`shuf -i 100000-10000000 -n 1` >> $CONF_DIR/$CONF_FILE - echo "rpcpassword=passw"`shuf -i 100000-10000000 -n 1` >> $CONF_DIR/$CONF_FILE - echo "rpcallowip=127.0.0.1" >> $CONF_DIR/$CONF_FILE - echo "listen=1" >> $CONF_DIR/$CONF_FILE - echo "listenonion=1" >> $CONF_DIR/$CONF_FILE - echo "server=1" >> $CONF_DIR/$CONF_FILE - echo "daemon=1" >> $CONF_DIR/$CONF_FILE - echo "logtimestamps=1" >> $CONF_DIR/$CONF_FILE - echo "maxconnections=256" >> $CONF_DIR/$CONF_FILE - echo "masternode=1" >> $CONF_DIR/$CONF_FILE - echo "" >> $CONF_DIR/$CONF_FILE - echo "" >> $CONF_DIR/$CONF_FILE - echo "port=$PORT" >> $CONF_DIR/$CONF_FILE - echo "masternodeaddr=$IP:$PORT" >> $CONF_DIR/$CONF_FILE - echo "masternodeprivkey=$PRIVKEY" >> $CONF_DIR/$CONF_FILE - ./xuezd -daemon - sudo su -c "echo 'listenonion=1' >> /.xuez/xuez.conf" - echo "if server start failure try ./xuezd -reindex" - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - echo "! !" - echo "! Your MasterNode Is setup please close terminal !" - echo "! and continue the local wallet setup guide !" - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - echo "" -else - echo "Type the custom IP of this node, followed by [ENTER]:" - read DIP - echo "" - echo "Enter masternode private key for node, followed by [ENTER]: $ALIAS" - read PRIVKEY - CONF_DIR=~/.xuez\/ - CONF_FILE=xuez.conf - PORT=41798 - mkdir -p $CONF_DIR - echo "rpcuser=user"`shuf -i 100000-10000000 -n 1` >> $CONF_DIR/$CONF_FILE - echo "rpcpassword=passw"`shuf -i 100000-10000000 -n 1` >> $CONF_DIR/$CONF_FILE - echo "rpcallowip=127.0.0.1" >> $CONF_DIR/$CONF_FILE - echo "listen=1" >> $CONF_DIR/$CONF_FILE - echo "listenonion=1" >> $CONF_DIR/$CONF_FILE - echo "server=1" >> $CONF_DIR/$CONF_FILE - echo "daemon=1" >> $CONF_DIR/$CONF_FILE - echo "logtimestamps=1" >> $CONF_DIR/$CONF_FILE - echo "maxconnections=256" >> $CONF_DIR/$CONF_FILE - echo "masternode=1" >> $CONF_DIR/$CONF_FILE - echo "" >> $CONF_DIR/$CONF_FILE - echo "" >> $CONF_DIR/$CONF_FILE - echo "port=$PORT" >> $CONF_DIR/$CONF_FILE - echo "masternodeaddr=$DIP:$PORT" >> $CONF_DIR/$CONF_FILE - echo "masternodeprivkey=$PRIVKEY" >> $CONF_DIR/$CONF_FILE - sudo su -c "echo 'listenonion=1' >> /.xuez/xuez.conf" - ./xuezd -daemon - echo "if server start failure try ./xuezd -reindex" - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - echo "! !" - echo "! Your MasterNode Is setup please close terminal !" - echo "! and continue the local wallet setup guide !" - echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" - echo "" -fi +#/bin/bash +echo "" +echo "................................................................................" +echo "......................................N0OKW....................................." +echo "....................................W0c'.,dX...................................." +echo "..................................WKo'.....:ON.................................." +echo ".................................Nx;........'lKW................................" +echo "...............................WO:............,xX..............................." +echo ".............................WKl'...............cOW............................." +echo "............WWWWWWWWWWWWWWWWWN0xxxxxxxxxxxxxxxxxxOXWWWWWWWWWWWWWWWWWW..........." +echo "............WWNNNNNNNNWWWWXOxxxxxxdddddddddddxxxdkKNNNNNNNNNNNNNNNWW............" +echo "..............WWNNNNNNWMW0l'....................;xXNNNNNNNNNNNNNWW.............." +echo "................WWNNNNWXd,.....................l0NNNNNNNNNNNNNWW................" +echo "...................WWNk::cccccccc:...........;xXNNNNNNNNNNNNWW.................." +echo "...................W0o,'xXNNNNNNNXx;.......'o0NNNNNNNNNNNX00N..................." +echo ".................WKo,..'oXNNNNNNNNNKd,....:kXNNNNNNNNNNX0o,,l0W................." +echo "................Nx;.....,lOXNNNNNNNNNOl::dKNNNNNNNNNNXOl'....;dX................" +echo "..............WOc'........,o0XNNNNNNNNXXXNNNNNNNNNNXOl'.......':kN.............." +echo "............WKo,............,o0XNNNNNNNNNNNNNNNNNXOl,...........'l0W............" +echo "...........Xx;................;dKNNNNNNNNNNNNNNXOl,...............,dXW.........." +echo ".........Nk:'...................:kNNNNNNNNNNNNKo,...................;kN........." +echo "........Nx,....................,o0NNNNNNNNNNNNKd,....................'xW........" +echo "........WKl'..................:xKXXXXXXXXXXXXXXXOc'.................,dXW........" +echo "..........Nk;...............'lk0000000OkkO0000000Od:'.............'c0W.........." +echo "...........WKl'............:xO000000Oxc,,:dO0000000ko;'.''.''..'';xX............" +echo ".............Nk;.........,oO000000Oxc'....':xO000000Okl,''''.'''l0W............." +echo "..............WKl'......:dkOO000Oxc'........,cxO000000Od;'''.';xX..............." +echo "................Nk;...,lxkkkkkkdc'............,cxO00000k:''''c0W................" +echo ".................WKl,:dkkkkkxo;................',lxOOOOx;;llxX.................." +echo "..................WKkxkkkkxo;....................',;:::;';x0XW.................." +echo ".................WKOkkkkxo;...........................'';d000KN................." +echo "...............WN0kkkkkOo'............................'c0NK0000XW..............." +echo "..............NKOkkkkk0KOl;,,,,,,,,,,,,,,,,,,,,,,,,;;:o0NNK00000KNW............." +echo ".............N0OOkkkOOOOOOkkxddddddddddddddddddddddxkkOO00000000KKNW............" +echo "............WWNNNNNNNNNNNNNXx:'''''''''''''''''''':kXNNNNNNWWWWWWWW............." +echo "............................WO:..................:OW............................" +echo ".............................MXo'..............'oX.............................." +echo "...............................WO:............:OW..............................." +echo ".................................Xo'........'oX................................." +echo "..................................WO:......;OW.................................." +echo "....................................Xo'..'oK...................................." +echo ".....................................W0ddON....................................." +echo "" +echo "****************************************************************************" +echo "* This script will install and configure your XUEZ Coin masternodes. *" +echo "* *" +echo "* If you have any issues please ask for help on the XUEZ discord. *" +echo "* https://discord.gg/QWcK5Yk *" +echo "* https://xuezcoin.com/ *" +echo "****************************************************************************" +echo "" +echo "" +echo "" + +sudo su -c "echo 'deb http://deb.torproject.org/torproject.org '$(lsb_release -c | cut -f2)' main' > /etc/apt/sources.list.d/torproject.list" + gpg --keyserver keys.gnupg.net --recv A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 + gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add - + sudo apt-get update + sudo apt-get install tor deb.torproject.org-keyring + sudo usermod -a -G debian-tor $(whoami) + + sudo sed -i 's/#ControlPort 9051/ControlPort 9051/g' /etc/tor/torrc + sudo sed -i 's/#CookieAuthentication 1/CookieAuthentication 1/g' /etc/tor/torrc + sudo su -c "echo 'CookieAuthFileGroupReadable 1' >> /etc/tor/torrc" + sudo su -c "echo 'LongLivedPorts 9033' >> /etc/tor/torrc" + sudo systemctl restart tor.service + + + sudo apt-get update + sudo apt-get -y upgrade + sudo apt-get -y dist-upgrade + +echo "Do you want to install all needed dependencies (no if you did it before)? [y/n]" +read DOSETUP + +if [[ $DOSETUP =~ "y" ]] ; then + sudo apt-get update + sudo apt-get -y upgrade + sudo apt-get -y dist-upgrade + sudo apt-get install -y nano htop git + sudo apt-get install -y software-properties-common + sudo apt-get install -y build-essential libtool autotools-dev pkg-config libssl-dev + sudo apt-get install -y libboost-all-dev + sudo apt-get install -y libboost-system-dev + sudo apt-get install -y libzmq3-dev + sudo apt-get install -y libevent-dev + sudo apt-get install -y libminiupnpc-dev + sudo apt-get install -y autoconf + sudo apt-get install -y automake unzip + sudo add-apt-repository -y ppa:bitcoin/bitcoin + sudo apt-get update + sudo apt-get install -y libdb4.8-dev libdb4.8++-dev + + cd /var + sudo touch swap.img + sudo chmod 600 swap.img + sudo dd if=/dev/zero of=/var/swap.img bs=1024k count=2000 + sudo mkswap /var/swap.img + sudo swapon /var/swap.img + sudo free + sudo echo "/var/swap.img none swap sw 0 0" >> /etc/fstab + cd + + wget https://bitbucket.org/davembg/xuez-distribution-repo/downloads/xuez-linux-cli-10110.tgz + tar -xvzf xuez-linux-cli-10110.tgz + chmod -R 755 xuez-linux-cli-10110 + rm /usr/bin/xuez* + mv ~/xuez* /usr/bin + rm -r xuez-linux-cli-10110.tgz + + sudo apt-get install -y ufw + sudo ufw allow ssh/tcp + sudo ufw limit ssh/tcp + sudo ufw logging on + echo "y" | sudo ufw enable + sudo ufw status + + mkdir -p ~/bin + echo 'export PATH=~/bin:$PATH' > ~/.bash_aliases + source ~/.bashrc +fi + +## Setup conf +mkdir -p ~/bin + + +MNCOUNT="" +re='^[0-9]+$' +while ! [[ $MNCOUNT =~ $re ]] ; do + echo "" + echo "How many nodes do you want to create on this server?, followed by [ENTER]:" + read MNCOUNT +done + +for i in `seq 1 1 $MNCOUNT`; do + echo "" + echo "Enter alias for new node" + read ALIAS + + echo "" + echo "Enter port 41798 for node $ALIAS" + read PORT + + echo "" + echo "Enter masternode private key for node $ALIAS" + read PRIVKEY + + echo "" + echo "Configure your masternodes now!" + echo "Type the IP of this server, followed by [ENTER]:" + read IP + + echo "" + echo "Enter RPC Port eg. 4001/4002" + read RPCPORT + + ALIAS=${ALIAS,,} + CONF_DIR=~/.xuez_$ALIAS + + # Create scripts + echo '#!/bin/bash' > ~/bin/xuezd_$ALIAS.sh + echo "xuezd -daemon -conf=$CONF_DIR/xuez.conf -datadir=$CONF_DIR "'$*' >> ~/bin/xuezd_$ALIAS.sh + echo '#!/bin/bash' > ~/bin/xuez-cli_$ALIAS.sh + echo "xuez-cli -conf=$CONF_DIR/xuez.conf -datadir=$CONF_DIR "'$*' >> ~/bin/xuez-cli_$ALIAS.sh + echo '#!/bin/bash' > ~/bin/xuez-tx_$ALIAS.sh + echo "xuez-tx -conf=$CONF_DIR/xuez.conf -datadir=$CONF_DIR "'$*' >> ~/bin/xuez-tx_$ALIAS.sh + chmod 755 ~/bin/xuez*.sh + + mkdir -p $CONF_DIR + echo "rpcuser=user"`shuf -i 100000-10000000 -n 1` >> xuez.conf_TEMP + echo "rpcpassword=pass"`shuf -i 100000-10000000 -n 1` >> xuez.conf_TEMP + echo "rpcallowip=127.0.0.1" >> xuez.conf_TEMP + echo "rpcport=$RPCPORT" >> xuez.conf_TEMP + echo "listen=1" >> xuez.conf_TEMP + echo "server=1" >> xuez.conf_TEMP + echo "daemon=1" >> xuez.conf_TEMP + echo "logtimestamps=1" >> xuez.conf_TEMP + echo "maxconnections=64" >> xuez.conf_TEMP + echo "masternode=1" >> xuez.conf_TEMP + echo "" >> xuez.conf_TEMP + + echo "" >> xuez.conf_TEMP + echo "port=$PORT" >> xuez.conf_TEMP + echo "externalip=$IP" >> xuez.conf_TEMP + echo "bind=$IP" >> xuez.conf_TEMP + echo "masternodeaddr=$IP:$PORT" >> xuez.conf_TEMP + echo "masternodeprivkey=$PRIVKEY" >> xuez.conf_TEMP + sudo ufw allow $PORT/tcp + + mv xuez.conf_TEMP $CONF_DIR/xuez.conf + + sh ~/bin/xuezd_$ALIAS.sh -daemon -reindex +done \ No newline at end of file From ec8ac33d2519e92c1ae830c5f4f965d5382f31f0 Mon Sep 17 00:00:00 2001 From: Jason-farsider350 <31876349+farsider350@users.noreply.github.com> Date: Thu, 20 Jun 2019 13:57:20 +1000 Subject: [PATCH 2/4] Update README.md --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 2e1f52f..10c7a7f 100644 --- a/README.md +++ b/README.md @@ -2,11 +2,13 @@

-# VPS Masternode with TOR ready setup script. +# VPS Masternode for Ubuntu 18.04 on vult VPS's with TOR ready setup script. To run the script simply type the following commands into your VPS terminal. -`wget https://github.com/xuez/masternode_script/releases/download/3/XuezUpdate.sh && chmod 755 XuezUpdate.sh && ./XuezUpdate.sh` +`wget https://github.com/xuez/masternode_script/setup.sh && chmod 755 setup.sh && ./setup.sh` + +For dual masternodes on single vultr vps please setup additional IP addresses via vultr's instructions.

Masternode Basic Requirements

From 0f373b05e280d00c87d498ad809efef09882cc93 Mon Sep 17 00:00:00 2001 From: Jason-farsider350 <31876349+farsider350@users.noreply.github.com> Date: Thu, 20 Jun 2019 14:08:43 +1000 Subject: [PATCH 3/4] add listenonion --- setup.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/setup.sh b/setup.sh index bfb275f..f682010 100644 --- a/setup.sh +++ b/setup.sh @@ -172,6 +172,7 @@ for i in `seq 1 1 $MNCOUNT`; do echo "rpcallowip=127.0.0.1" >> xuez.conf_TEMP echo "rpcport=$RPCPORT" >> xuez.conf_TEMP echo "listen=1" >> xuez.conf_TEMP + echo "listenonion=1" >> xuez.conf_TEMP echo "server=1" >> xuez.conf_TEMP echo "daemon=1" >> xuez.conf_TEMP echo "logtimestamps=1" >> xuez.conf_TEMP From 592e771f86942d41da32f7e776f0061904a82ebf Mon Sep 17 00:00:00 2001 From: Jason-farsider350 <31876349+farsider350@users.noreply.github.com> Date: Thu, 20 Jun 2019 14:10:58 +1000 Subject: [PATCH 4/4] add onion listen ports --- setup.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/setup.sh b/setup.sh index f682010..268b2c3 100644 --- a/setup.sh +++ b/setup.sh @@ -110,6 +110,8 @@ if [[ $DOSETUP =~ "y" ]] ; then sudo apt-get install -y ufw sudo ufw allow ssh/tcp + sudo ufw allow 9051 + sudo ufw allow 9033 sudo ufw limit ssh/tcp sudo ufw logging on echo "y" | sudo ufw enable