15 Best Practices for Validator Node Security

Protofire.io
Protofire Blog
Published in
3 min readAug 17, 2023
15 best practices to improve validator node security in web3 on the example of ZetaChain from Protofire blockchain developers

In the exciting realm of blockchain technology, nodes play a crucial role in maintaining a trustworthy and secure network. However, with the increasing risk of cyber threats, it’s essential to protect these nodes effectively.

In this article, we’ll explore the best security practices for safeguarding your blockchain nodes. Whether you’re a blockchain expert or a curious observer, understanding these practices is vital for the long-term success of blockchain networks.

We’ll cover fundamental principles of blockchain security, the importance of network consensus, continuous monitoring, and emerging trends in node security.

Join us on this journey towards a safer and more resilient decentralized future as we uncover the knowledge needed to secure your blockchain nodes effectively.

1. Keep Software Updated

Regularly update your blockchain node software to the latest stable version. Updates often include security patches that address known vulnerabilities.

2. Use Firewall Protection

Set up a firewall to control incoming and outgoing network traffic to your node. Limit access only to necessary ports and IP addresses.

In case of cloud providers (AWS, GCP, Azure, etc.) you can use security groups, ACLs (access control list); in case of firewall on the server you can use iptables, ufw, firewalld, etc.

3. Store sensitive data securely

Use encryption-enabled secure storage to store sensitive data (private keys, passwords, etc.) to protect them from unauthorized access.

At Protofire, we use Bitwarden to store sensitive data.

4. Save important validator data

Don’t forget to save your private validator and node keys and wallet mnemonic phrase. This will greatly help you in case you need to restore the validator.

Using the Zetachain Validator node example, we need to save the contents of the following files:

~/.zetacored/config/priv_validator_key.json and ~/.zetacored/config/node_key.json

5. Specify Keyring’s backend

Specify the keyring’s backend (keyring-backend in config/client.toml) where the keys will be stored. You can select “os” so that a password is requested when keys are used.

6. Secure Physical Environment

If running a physical node, ensure it is located in a secure and controlled environment, protected against unauthorized physical access.

7. Enable DDoS Protection

Deploy Distributed Denial of Service (DDoS) protection mechanisms to prevent overwhelming attacks on your node (WAF (Web Application Firewall) or similar). To name a few: Cloudflare DDoS Protection, AWS Shield, Google Cloud Armor, Azure DDoS Protection, etc.

8. Run a Validator Node

In Proof-of-Stake (PoS) or other consensus mechanisms, consider running a validator node to actively participate in securing the network.

9. Use Hardware Security Modules (HSMs)

For added security, consider using HSMs to store and manage private keys securely.

10. Use a separate disk

Using a separate disk (or partition) will help to perform more convenient node data storage management.

11. Regular Backups

Regularly backup your node’s data and configuration files to prevent data loss in case of hardware failure or cyber-attacks. As an example AWS Data Lifecycle Manager.

12. Network Isolation

Consider running your node in a separate and isolated network segment to minimize potential attack surfaces.

13. Avoid Exposing Sensitive Information

Be cautious about sharing sensitive information related to your node publicly, as it may attract malicious actors.

14. Monitor Node Activity

Implement real-time monitoring and logging to detect suspicious activities or potential threats promptly.

For example, at Protofire we use Grafana, InfluxDB, Telegraf, Prometheus, AWS CloudWatch, etc.

15. Conduct Security Audits

Periodically conduct security audits or penetration tests to identify and address any vulnerabilities proactively.

Stay Secured

With these simple but important tips, you will ensure the reliability and durability of the node operations. If you want to further improve your security measures, contact our DevOps team, who has worked with almost all protocols and will help you quickly resolve the challenges.

Keep up-to-date with the latest security developments and trends in the blockchain space to stay ahead of potential threats!

Author: Leonid Belyatskiy — DevOps Engineer @ Protofire

--

--

Protofire.io
Protofire Blog

We help token-based startups with protocol & smart contract engineering, high-performance trusted data feeds (oracles), and awesome developer tools (SDKs/APIs).