HYDRA Documentation
  • Introduction to Hydra Chain
  • HydraGon
    • Migrate to HydraGon
    • Staking Calculator
  • Legacy Hydra
  • FAQ
  • Hydra web wallet
    • Create New Wallet
      • Key File Option
      • Mnemonic Words Option
    • Access Your Wallet
      • From Mnemonic Words
      • From Private Key
      • From Key File
    • Send and Receive Assets
      • Receive Assets
      • Send Assets
    • Add HRC20 Token
    • Setup Offline Wallet
  • Hydra web browser extension
    • How to integrate with dApps
  • Hydra for Beginners
  • Ledger Nano Guide
  • Hydra Bridge
  • HydraDEX
    • Adding and Removing Liquidity
    • Liquidity Mining on HydraDEX
  • Useful Links (Legacy)
  • Essentials
    • UTXOs Accounting
    • Test & Main Networks
    • Desktop wallet basic usage
    • Wallet Encrypt, Backup and Restore
    • Hydra Core Wallet Commands
    • Adding Nodes
    • Encrypt and Unlock Hydra Wallet
    • Wallet Recovery With Salvagewallet
    • bech32 support
    • Repositories
    • Hydra Exchange Usage Guide
    • How to Add Options
    • How to Use bootstrap.dat
    • Command Lines (RPC API)
    • Guidance of Hydra Deployment and RPC Settings
    • How to Build Hydra on Raspbian
  • HRC20 Tokens
    • HRC20 Token
    • HRC20 Raw Transactions
    • HRC20 With Hydrachainjs
    • HRC20 DApp
  • HRC721 Tokens
    • HRC721 Token - How to deploy
  • How Transactions Work
  • Hydra Economy (Legacy)
    • The Flexible Supply Mechanism
    • Legacy Staking Calculator
  • Installation Guides
  • Guide for Linux
  • Guide for Raspberry Pi
  • Guide for MacOS
  • Staking HYDRA Coins
    • Setting up Staking
    • Staking with Windows VPS on AWS
    • Staking with Linux on DigitalOcean VPS
    • How to Stake Hydra on Linux
    • Stake With Linux VPS
    • How to Stake on FreeBSD
    • Hydra node health check
    • Superstaking
    • Delegating to Superstaker
    • Delegating via Mobile App or Web Browser
    • Lydra Basics
    • Understanding LYDRA — Key Concepts and Dynamics
  • Hydra Chain Core Team
  • KYC/AML Policy
  • Privacy Policy
  • API Documentation
    • Explorer API (in work)
      • General Blockchain Info
      • Fetching Transaction History for HYDRA and HRC20 tokens
      • Block Info
      • Transaction Info
    • Hydra DEX API
  • Community Tools
    • Github repository
    • Docker image for Hydra Node
    • Hydradex.org Custom Lists
  • Security Audits Hydra Bridge
Powered by GitBook
On this page
  • Create an account
  • Security setup
  • Two Factor Authentication
  • Create a droplet
  • Accessing and maintaining the droplet
  • Enabling internal droplet firewall and opening ports
  • Initial setup
  • Success!
  • Final notes
  • Getting information through the cli
  • Log out and disable SSH port

Was this helpful?

  1. Staking HYDRA Coins

Staking with Linux on DigitalOcean VPS

Instructions for setting up a HYDRA staking client with DigitalOcean and accessing it with terminal commands

PreviousStaking with Windows VPS on AWSNextHow to Stake Hydra on Linux

Last updated 1 year ago

Was this helpful?

DigitalOcean Droplets are Linux-based virtual machines (VMs). They run on top of virtualized hardware. Each Droplet that you create is a new server you can use, either standalone or as used as part of a larger, cloud-based infrastructure. We will be setting one up as a HYDRA staking node/wallet. This same method may be used with other VPS providers.

Create an account

To access the DigitalOcean Control Panel and create a Droplet, you need a DigitalOcean account. You can create one from if you don't already have one.

Security setup

After you , let's set up some of the security for our VPS. We will create our droplet and then resume the Firewall setup.

Two Factor Authentication

SSH

Create a droplet

In the create menu, click Droplets to open the Droplet create page. If you don't have any Droplets, the Resources tab displays a large, blue Get Started with a Droplet button, which takes you to the same Droplet create page.

The Droplet create page is where you choose your Droplet's configuration, like its operating system, how much memory it has, and which features to enable (like backups and monitoring). The most popular defaults are pre-selected, so you can scroll to the bottom of the page and create a Droplet immediately, or you can customize any of the options in each section.

The current absolute minimum for the droplet is the 'CPU-Optimized' $42/month plan 4GB Ram, 2 vCPUs, 25 GB NVMe SSD, 4000 GB transfer.

The recommended specs to use are 16GB Ram, 2 vCPUs, 50 GB NVMe SSD, 4000 GB transfer ($84/month plan) OR the 8GB Ram, 2 vCPUs, 25 GB NVMe SSD, 4000 GB ($63/month plan)

Droplet setup

For this guide we will be using version Ubuntu 20.04(LTS) x64 Basic plan for $15/month. Scrolling further down in droplet creation there is the option to choose your datacenter region. This depends on your own personal preference as each area should be similar in stability.

Under authentication it is recommended to select the SSH keys that we have set up earlier. If you have created more than one key you can select them all for use.

Finally click 'Create droplet' to complete the droplet creation. You have the option to select creating system backups if you require it at an extra fee.

Initialization will take a about a minute. Afterwards you will see your new droplet as well as its IP address you will connect to it with. Please take note of the IP address. The address will generally not change and it will be your way of accessing the droplet.

Adding Firewall to the our droplet

For Testnet, please replace port TCP 3338 with TCP 13333

We'll Continue with our security setup by enabling some custom rules for our Firewall. We'll need to set up the Firewall and allow port TCP/3338 for the node connectivity, as well as allowing Network Time protocol (NTP) to sync the time accurately on port UDP/123. Lastly we will allow port TCP/22 for logging in over SSH using our previously created keys. On the left panel under 'MANAGE' click on 'Networking' and then click 'Firewalls' and then click 'Create Firewall'

Give the new firewall rule a name. We will be adding TCP port 3338 and TCP port 22 as well as UDP port 123 for the network time protocol sync service under Inbound Rules.

Later on as needed we can delete or add back this SSH rule whenever we require access to our node.

Under Type enter SSH and under Protocol enter TCP For Port Range enter 22 as in image below. In the New Rule box add a custom and allow port 3338 by setting to Custom Under Type and under Protocol enter TCP and For Port Range enter 3338. In a second New Rule box add another custom rule and allow port 123 by setting to Custom Under Type and under Protocol enter UDP and For Port Range enter 123.

Below this section under 'Apply to Droplets' you can search for your droplets name (usually it will show your list of droplets by typing in 'ubuntu' and then you can select it clicking on it). Apply the firewall rules to the specific droplet and then click create firewall.

Later after initial setup we can come back here and the Port 22 SSH rule can be deleted for added security and only added back when you want to access the droplet remotely.

Accessing and maintaining the droplet

You can now log into the VPS with Putty as well as use WinSCP to access files and upload/download your wallet.dat as needed.

Accessing your server with Putty

Accessing your server with MobaXterm

We highly recommend MobaXterm as an SSH client. It's just a quantum leap ahead of default Putty and solves lots of issues (e.g copy/paste and or support for multi tab Linux apps such as byobu). Such issues arise often when using SSH with windows and can be really frustrating for new users.

After installation the MobaXterm program will be in your Windows start menu and can be found by pressing the Windows button and typing 'MobaXterm'. On first initialization you will be prompted to allow the program through the firewall, you can safely click yes and ok to allow it through public networks.

Once the program has started we will click 'Session' and then select 'SSH'

Enter the IP address of your droplet in 'Remote Host' box and then click 'Advanced SSH settings'

Check the box 'Use private key' and select your private key (with .ppk extension) that you have generated earlier. Then click 'Open' and then press 'OK'.

Success! You should now be looking at a terminal view of your server! The default username is 'root' - You may be asked for a password if you have set one when you created your private keys.

Enabling internal droplet firewall and opening ports

We will enable UFW (Uncomplicated Firewall) and allow ports TCP 22, UDP 123 and TCP 3338. If you have been successful in connecting to your droplet through SSH then you should be looking at a terminal screen. Firstly we will add some rules to the UFW firewall and then enable it. Allow connections to ports 22, 123 and 3338:

Enter these commands on separate lines:

ufw allow 22/tcp
ufw allow 3338/tcp
ufw allow 123/udp

Enable the firewall with this command:

ufw enable

Initial setup

Installing the node build

The node will take some time to sync to the latest block.

Success!

Final notes

To clear out your terminal history of any stored keys and passwords from memory use: history -c && history -w

At this point your wallet is hopefully running and set up to start staking. The wallet.dat and blockchain date is stored in /root/.hydra/ or /home/username/.hydra/ depending on your setup. It is recommended to lock your wallet with a passphrase from the /Hydra/bin/ directory:

./hydra-cli encryptwallet [yourpassphrase]

We can unlock only for staking when it is left running on any system or VPS:

./hydra-cli walletpassphrase [yourpassphrase] 9999999 true

If you lock the wallet you will then need to enter the passphrase to use the wallet to send out transactions. The following command unlocks for five minutes:

./hydra-cli walletpassphrase [yourpassphrase] 300

Getting information through the cli

General wallet information of balance/staking

You can view your Coin balance and amount currently staked with the following command:

./hydra-cli getwalletinfo

Retrieving your LOC token balance through the cli:

This is slightly involved, first we'll need to find out the HEX equivalent of our address. We can do this through the cli with this command:

./hydra-cli gethexaddress <YOURADDRESS>

We can then call the contract with the "getbalance" identifier appended, which is 70a08231and replacing the last part <YOURHEXADDRESS> with your own hex address here:

./hydra-cli callcontract 4ab26aaa1803daa638910d71075c06386e391147 70a08231000000000000000000000000<YOURHEXADDRESS> | grep -e "output"

Finally convert the "output" section of the response from hex to decimal to arrive at your LOC balance.

echo $((0x<YOUROUTPUT>))

Below is a full example:

Keep in mind to adjust for 8 decimal places. Above balance is 64,172.22773141

Time until expected block creation

To see expected time enter the following command:

./hydra-cli getstakinginfo

Note below the section "expectedtime".

The "expectedtime" can be converted to human readable format using the following command (replace 1254588 with your expectedtime value:

date -u -d "@1254588" "+Estimated time to mine next block in: %d days %H hours %M minutes"

Log out and disable SSH port

If your node is running and staking and you have imported the keys where your HYDRA coins are stored, you may now choose to delete the SSH rule from the digital ocean firewall section and add it back at a later time when you wish to access the Droplet again - This will add an extra layer of security as there is no way for anyone to access your server without two factor authentication with DigitalOcean and manually reopening the port.

It is highly recommended to enable 2FA with Google Authenticator as well as use the SMS backup method. You can find in depth instructions here:

We will begin by creating and importing SSH keys for logging into our HYDRA node. Please follow guide to create and import SSH keys created specifically for DigitalOcean:

After you , click the green Create button in the top right or click Droplets on the left panel and clicking 'Create droplet' to open the create menu.

Choose the price plan that works for you. Users have been successful staking with the droplet currently listed under 'CPU-Optimized' plan $42/month 4GB Ram, 2 vCPUs, 25 GB NVMe SSD, 4000 GB transfer, however it is recommended to use the higher tier under the 'General Purpose' or 'Memory-Optimized' $63/$84 per month option if it is within your budget, since the performance will be far more stable using the added memory which may be needed down the road as the HYDRA blockchain grows. Few Links here | |

You can download Putty from their official site here:

is a quick guide to configuring putty. By default the username for your droplet will be root and you will not need a password unless you have set one with your SSH keys setup . If you have already set up your SSH keys you can scroll to 'Configuring Putty' for quick reference on configuring your droplet for access:

Below is a quick guide to connecting to your droplet using as an alternative to using Putty:

MobaXterm can be downloaded from their official site HERE:

You can now continue with enabling the internal firewall and the installation of the HYDRA wallet below. The next time you start MobaXterm your server will be accessible by simply selecting its IP from the left panel. To learn more about further capabilities such as copying and downloading files as well as Xserver display access, please read the MobaXterm documentation here:

If you have previously generated a wallet.dat file and wish to use it you can place it in /root/.hydra/wallets/ You will need to create this directory if this is a new installation. If you are importing your wallet from a private key then this step is not necessary. Please read documentation about SCP file transfer in : or by using : if you wish to upload or download files such as your wallet.dat later using a file explorer. It is highly recommended that you ensure backups of wallet.dat are made and are stored encrypted and in a safe location).

You can follow the guide from here for installation:

After successful setup the node will continue to run even after you log out from the shell, providing that the server is not shut down or restarted. If you restart the server you can start up the node again by navigating to ~/Hydra/bin/ and typing ./hydrad -daemon - this will initialize the daemon with which you can use the cli to send commands; for example If you have already created a wallet and have the private keys you can import them with: ./hydra-cli importprivkey <key> You can enable staking as well as perform different types of transactions and chain commands. Please see more information about getting information from the cli and full documentation of the available commands .

To see information about your running node you can navigate to ~/Hydra/bin with command: cd ~/Hydra/bin and then enter ./hydra-cli getinfo here you can see which block you are currently synced to as well as wallet version, connections, balances. For information about staking status and more please see for full documentation of wallet commands.

For further instructions on operating the node and unlocking the wallet for staking, please see the documentation here:

You can visit to check on the staking status of your node by searching for your address and seeing how many blocks have been mined as well as your balances and transactions. Good luck staking!

https://www.digitalocean.com/docs/accounts/security/2fa/
THIS
log in to the control panel
CPU-Optimized
General Purpose
Memory-Optimized
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
MobaXterm
https://mobaxterm.mobatek.net/download.html
https://mobaxterm.mobatek.net/documentation.html#5_1_1
MobaXterm
https://mobaxterm.mobatek.net/documentation.html#5_1_1
WinSCP
https://winscp.net/eng/docs/guides
https://docs.hydrachain.org/guide-for-linux
HERE
HERE
HERE
https://docs.hydrachain.org/essentials/hydra-wallet-commands
explorer.hydrachain.org
Here
https://www.bluehost.com/help/article/using-ssh-on-windows-putty
earlier
the DigitalOcean new account registration page
log in to the control panel
How to Create SSH Keys with PuTTY on Windows | DigitalOcean DocumentationDigitalOcean
Droplet options
Choosing a region
Adding SSH keys
Finalize Firewall
Success HYDRA syncing
Logo
Create Account