Install

1. System Requirements

  • OS: Ubuntu 24.04 LTS

  • CPU: 16+ physical cores (SMT disabled recommended)

  • RAM: 32 GB minimum

  • Disk: 1–2 TB NVMe SSD

  • Network: Static IP, high uptime

2. Install Monad Full Node

System Setup

apt update && apt upgrade -y
apt install -y curl jq aria2 nvme-cli

Install Monad Package

mkdir -p /etc/apt/keyrings

curl -fsSL https://pkg.category.xyz/keys/public-key.asc \
 | gpg --dearmor -o /etc/apt/keyrings/category-labs.gpg

cat <<EOF > /etc/apt/sources.list.d/category-labs.sources
Types: deb
URIs: https://pkg.category.xyz/
Suites: noble
Components: main
Signed-By: /etc/apt/keyrings/category-labs.gpg
EOF

apt update
apt install -y monad=0.12.7
apt-mark hold monad

Create User and Directories

Download Mainnet Configs

Edit /home/monad/.env:

Peer Discovery Signature

Update node.toml:

Start Node

Wait until fully synced.

3. Validator Requirements

  • Self-stake: ≥ 100,000 MON

  • Total stake: ≥ 10,000,000 MON

  • Top 200 by stake

  • Fully synced node

  • High uptime

4. Validator Keys

Generate BLS key:

Back up:

  • id-secp

  • id-bls

5. Staking CLI Installation

6. Staking CLI Configuration

Configure:

  • RPC URL

  • Funded address

  • Wallet type (private key or Ledger)

Do not commit config.toml.

7. Extract Validator Private Keys

Verify derived public keys.

8. Register Validator (CLI)

  • auth-address controls validator on-chain actions

  • Confirm public keys before approving transaction

Successful transaction:

9. Register Validator (TUI)

Select: Add Validator → Confirm → Execute

10. Validator Configuration

Edit node.toml:

Restart services:

11. Verification

Check execution set:

Fetch validator info:

12. Operations

Common commands:

Last updated