Many people ask the question “How can I set up a remote node on VPS”. There are many reasons that someone would want to have a remote node available whether it is for personal use or public use. One of the main reasons to have a node running is to support the network and with the implementation of ArqNodes it is recommended to have a VPS running with a service node on it instead of your local home network. These nodes will help relay transactions within the Arqma network and create passive income for operators. Block rewards will be split to node providers to help fund the operation of the network. To set up a fully operational node on VPS you need a few things before you get started:
- A VPS instance running Ubuntu 20.04 or higher. Contabo is highly recommended for its pricing and uptime. No shill links here.
- Some light coding skills to run some copy-paste commands on your VPS.
- Experience with terminal/bash/CMD prompts on your local PC at home.
- About two hours of your time to open an account and purchase a VPS, and the time to set up your VPS to run a full node.
- Any additional help can be found in our Arqma Discord , Telegram , or Matrix chat if you are having issues getting set up or operating the node.
If you use Windows,
is a good recommendation for SSH connection to a remote PC. Putty can also be used for OSX and Linux distros but terminal is the easiest to set up. Putty requires some additional setup and information regarding that is located on their website. Once we have the IP address we need to SSH to the VPS instance:
Your terminal will ask for the password you set up on your VPS provider if they did not automagically generate one for you. Enter the password and it should ask you for SSH keys if they are correct. Accept (enter YES) and it should take you to the main login screen of the VPS:
Now that we are connected to the VPS we need to install some libraries to help us build the binaries from scratch. These will help us to build future binaries (executables) if there are updates to the core code or enhancements in-between release builds. Note that there are some extras added in this list to build the onion explorer for your VPS so you can host a block explorer and service node/remote node at the same VPS.
Install libraries needed to build Arqma executables (copy paste):
sudo apt update && sudo apt install --yes git build-essential curl cmake pkg-config libboost-all-dev libssl-dev libsodium-dev libunwind-dev liblzma-dev libreadline-dev libldns-dev libexpat1-dev doxygen graphviz libudev-dev libusb-1.0–0-dev libhidapi-dev xsltproc gperf autoconf automake libtool-bin tmux nano ufw
Once that has finished, run it again to ensure that all libs have been installed on your VPS. After that, we are going to use Tmux to open a window inside your window to allow us to safely disconnect from our VPS once we are done. You can do this by running the tmux command and it will open a new window
You can have many tmux windows open ad the same time. Other commands:
tmux attach -t 0 ## Note: this will open the first tmux window you created exit ## This exits the current tmux window and you will lose progress ctrl + b -> d ## Holding the control key and b then letting go and pressing d ## closes the tmux instance but leaves it open for you to come back ## to at a later time. This allows you to multitask on your VPS
NOTE: If you do not want to build the binaries yourself and or do not feel comfortable with command line use, you can download the latest release and use those as well:
wget "https://github.com/arqma/arqma/releases/download/v0.6.1/arqma-x86_64-linux-gnu.tar.gz" && tar xf arqma-x86_64-linux-gnu.tar.gz ## After it finishes downloading and unzipping just CD to that folder and run the binaries with the commands at the end of this tutorial. For future reference just visit the official github repo to see the latest zip version number and update the command above with the current release version. Example- replace v0.6.1 with v0.7.0 for the next release version.
Clone the Arqma repository to the desktop in your tmux window:
git clone --recursive https://github.com/arqma/arqma
Move yourself to the Arqma folder after it finishes:
Switch to the latest release branch:
git checkout v0.6.1
NOTE: For testing pre-release content for testnet make sure after you clone the repository to switch to the DEV branch:
git checkout dev
Update all the submodules for the repository:
git submodule init && git submodule update
Build the Arqma executables:
make release -j 3
OR — Build onion explorer specific executables:
USE_SINGLE_BUILDDIR=1 make -j 3
Note: using -j 3 will use more CPU cores to build faster. SPEEEEEEEDDD!!!!
[100%] Linking CXX executable ../../bin/arqmad make: Leaving directory ‘/root/arqma/build/release’ make: Leaving directory ‘/root/arqma/build/release’ [100%] Built target daemon make: Leaving directory ‘/root/arqma/build/release’
Yay 100% completed. If your VPS does not build completely you are either missing some libraries needed to build or there is another issue going on. Please reach out on one of our social platforms to get some additional help. Once the binaries have been successfully built, we need to move to the folder and copy the binaries to an easier location to access:
Check what is in the folder to make sure everything is there:
ls ## This should print whats in the folder: arqma-blockchain-ancestry arqma-blockchain-mark-spent-outputs arqmad arqma-blockchain-depth arqma-blockchain-prune arqma-generate-ssl-certificate arqma-blockchain-export arqma-blockchain-prune-known-spent-data arqma-wallet-cli arqma-blockchain-import arqma-blockchain-usage arqma-wallet-rpc move back to the main folder location with: cd
Now that we are at the main folder location we can create a new folder on the desktop for ease of access to our Arqma binaries:
mkdir runme ## you can name this whatever you want like 'mkdir catsRcute' or something you like
Now let’s copy the built binaries to the new folder we created:
cp ~/arqma/build/release/bin/* ~/runme
Now move to the folder to make sure that everything was copied:
cd runme ##then ls ##everything should be there: arqma-blockchain-ancestry arqma-blockchain-mark-spent-outputs arqmad arqma-blockchain-depth arqma-blockchain-prune arqma-generate-ssl-certificate arqma-blockchain-export arqma-blockchain-prune-known-spent-data arqma-wallet-cli arqma-blockchain-import arqma-blockchain-usage arqma-wallet-rpc
Now that we have everything set up, it’s time to get the Daemon up and running so we can sync with the network. First, we need to set some firewall rules so we can have incoming and outgoing transactions working with our RPC and daemon/wallet:
ufw allow 19999 19995 19994 19993 19990 39993 39994 39995 ## 3999* numbers are for stagenet ##after this you can check the status here: ufw status
Now we can start our daemon:
./arqmad --restricted-rpc --rpc-bind-ip 0.0.0.0 --confirm-external-bind
If you are planning to run a node on the testnet for any reason, you can simply add the flag at the end of the line to run the daemon on that branch.
./arqmad --restricted-rpc --rpc-bind-ip 0.0.0.0 --confirm-external-bind --stagenet
On an average VPS, this should take up to 8–10hrs unless you have a higher-end VPS with multiple cores and ram with SSD to sync the mainnet blockchain. After you start the node you can exit the tmux instance with the ctrl+b then d and exit the terminal session so you can leave and go get a coffee or tea and meet up with your friends. After about 8hrs you can return and SSH back to your VPS and check up on your node:
tmux attach -t 0
If everything worked it should be fully synced and look like this:
Once it completes you need to run ‘Exit’ to stop the daemon and then we need to announce to the world that we are a public node:
./arqmad --public-node --restricted-rpc --rpc-bind-ip 0.0.0.0 --confirm-external-bind
Remember that if you are running a testnet node, do not forget to add the flag at the end. Once it syncs you can close the tmux window and check the connection with your desktop Electron wallet by entering your remote node IP address in the address field and connecting as a remote node. Now you don’t need to store your blockchain on your local PC and use the one you are operating on your remote node that others can now access. If you plan to run a mainnet and testnet node on the same VPS, make sure to copy the folder with your binaries on the desktop so that you can run two tmux windows and two different daemons at the same time.
Well, that does it for setting up a remote node on VPS. Now you can help strengthen the network and provide a remote node for not only yourself but other people including exchanges and other service providers. Good luck and see you next time!
Helpful Arqma Links
Arqma Official Website: .
Arqma CLI wallet Github: https://github.com/arqma/arqma
Arqma GUI wallet Github: https://github.com/arqma/arqma-electron-wallet
Android Wallet: https://play.google.com/store/apps/details?id=com.arqma.Droid
Arqma Community Pages: https://arqma.github.io
Official Block Explorer: https://explorer.arqma.com
Official Twitter: https://twitter.com/ArQmA_Network
Community Twitter: https://twitter.com/CommunityArq
Discord Link: https://discord.gg/s9BQpJT
Medium Link: https://medium.com/@ArQmANetwork
Medium Community Link: https://medium.com/@arqmacommunity
Telegram Link: https://t.me/joinchat/HNpOMRIiNSoCn0zYrAOofw
Reddit Link: https://www.reddit.com/r/arqma
YouTube Channel: https://www.youtube.com/channel/UC24ZbH8J1SKpxmdakIJotoA
Matrix Chat link: #ArQmA:matrix.org
Bitcointalk Thread: https://bitcointalk.org/index.php?topic=4474605.0
Current Mining Pool List: https://miningpoolstats.stream/arqma
Woocommerce plugin: https://github.com/arqma/arqma-payments-woocommerce-gateway
Offline Wallet Generator: https://generate.arqma.com
Arqma Logos and Images: https://github.com/arqma/arqma-logo
Tips are always appreciated and not expected: