---
title: "Esegui validator e nodi RPC con erpc validator ed erpc rpc"
description: "erpc rpc esegue nodi RPC su 18 chain ed erpc validator esegue validator su 13, con gli stessi verbi su ogni chain e senza bisogno di un account ERPC."
canonical: "https://erpc.global/it/doc/erpc-cli/nodes/"
locale: "it"
---

# Esegui validator e nodi RPC con erpc validator ed erpc rpc

`erpc rpc` esegue nodi RPC su 18 chain ed `erpc validator` esegue validator su 13 di queste. Ogni chain usa gli stessi verbi, e questi comandi del ciclo di vita dei nodi sono gratuiti e non richiedono un account.

Questa pagina descrive ERPC CLI `v0.1.0-rc.4`, una versione pre-release. L'accettazione su host reali è ancora in corso: [A che punto è ogni chain](https://erpc.global/it/doc/erpc-cli/nodes/#a-che-punto-è-ogni-chain) e la guida di ciascuna chain riportano lo stato di ogni chain.

## Distribuire un nodo

`init` prepara un server e `deploy` installa e avvia il nodo. Un nodo RPC Ethereum parte da un server Ubuntu vuoto, 24.04 o successivo:

```bash
# check the server, pin the client releases, store the node in 1Password
erpc rpc --chain ethereum -n mainnet --name eth1 init --host <address> --vault <vault id> --ssh-key ~/.ssh/id_ed25519.pub
# install, fetch a snapshot, apply the firewall, start
erpc rpc --chain ethereum -n mainnet --name eth1 deploy --ssh-key ~/.ssh/id_ed25519.pub
# both layers, sync and head
erpc rpc --chain ethereum -n mainnet --name eth1 status --ssh-key ~/.ssh/id_ed25519.pub
```

Alcune chain richiedono prima altri preparativi, e la guida di ciascuna chain indica quali. Un nuovo validator o nodo RPC Solana richiede tre filesystem montati e le sue chiavi già presenti in 1Password.

## Scegliere chain, rete e host

Scegli la chain con `--chain`, `ERPC_CHAIN` o l'impostazione `default_chain`, la rete con `-n` e l'host con `--name`. Una modifica sulla mainnet richiede `--chain` scritto sulla riga di comando.

- `erpc validator` (alias `v`), `erpc rpc` (alias `r`) ed `erpc node` (alias `n`, per Avalanche e Sui) eseguono i comandi dei nodi.
- Esegui un gruppo di comandi senza verbo (`erpc validator`) per elencarne i verbi.
- Nei comandi dei nodi, `--json` deve precedere il comando: `erpc --json rpc …`.

## Comandi che funzionano su ogni chain

| Verbo | Cosa fa |
| --- | --- |
| `init` | Controlla il server, fissa le versioni del client, salva il nodo in 1Password e prepara l'host |
| `deploy` | Installa o compila il client, scarica uno snapshot, applica il firewall dove erpc ne ha uno per quel nodo e avvia il nodo |
| `list`, `status`, `logs` | Inventario, stato di salute e journal |
| `start`, `stop`, `restart` | Controllo dei servizi, nell'ordine corretto per i nodi con più livelli |
| `update` | Passa a un'altra versione del client; la politica di rollback dipende dal client |
| `update-config` | Applica le modifiche alla configurazione e agli accessi secondo le regole di riavvio della chain |
| `plan` | Mostra il piano di distribuzione o di configurazione della chain |
| `destroy` | Arresta o dismette i servizi di sua proprietà; la conservazione di dati, chiavi e firewall segue la guida operativa della chain |

Di questi, un validator Solana registrato sul backend solv ha solo `init`, `deploy`, `list` e `status`.

## Chain e guide

| Chain | Nodo RPC | Validator | Reti | Guide |
| --- | --- | --- | --- | --- |
| Solana | `erpc rpc --chain solana` | `erpc validator --chain solana` | mainnet, testnet | [Operazioni](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/solana-native.md), [Registrazione](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/solana-registration.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/solana.md) |
| Ethereum | `erpc rpc --chain eth` (mainnet, `--type full` o `archive`) | `erpc validator --chain eth` (Hoodi, mainnet) | mainnet, Hoodi | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/ethereum-rpc.md), [Validator](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/ethereum-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/ethereum.md) |
| Base | `erpc rpc --chain base` | | mainnet, sepolia | [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/base.md) |
| Avalanche | `erpc rpc --chain avax` (anche `erpc node`) | `erpc validator --chain avax` | mainnet, fuji | [Operazioni](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/avalanche.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/avalanche.md) |
| Bitcoin | `erpc rpc --chain bitcoin` | | mainnet, testnet4, signet, regtest | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/bitcoin-rpc.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/bitcoin.md) |
| Polygon | `erpc rpc --chain polygon` | `erpc validator --chain polygon` | mainnet, amoy | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/crates/erpc-chain-polygon/templates/README.md), [Validator](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/polygon-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/polygon.md) |
| BNB Chain | `erpc rpc --chain bsc` | `erpc validator --chain bsc` | mainnet, chapel | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/bsc-rpc.md), [Validator](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/bsc-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/bsc.md) |
| Kaia | `erpc rpc --chain kaia` | `erpc validator --chain kaia` | mainnet, kairos | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/kaia-rpc.md), [Core cell](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/kaia-core-cell.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/kaia.md) |
| Arbitrum | `erpc rpc --chain arbitrum` (mainnet, nova, sepolia) | `erpc validator --chain arbitrum` (solo mainnet di Arbitrum One) | mainnet, nova, sepolia | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/nitro-rpc.md), [Validator](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/arbitrum-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/arbitrum.md) |
| Optimism | `erpc rpc --chain optimism` | | mainnet, sepolia | [Operazioni](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/op-follower-rpc.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/optimism.md) |
| Hyperliquid | `erpc rpc --chain hyperliquid` | `erpc validator --chain hyperliquid` | mainnet, testnet | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/hyperliquid-rpc.md), [Validator](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/hyperliquid-validator.md), [AQA](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/hyperliquid-aqa.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/hyperliquid.md) |
| Monad | `erpc rpc --chain monad` | `erpc validator --chain monad` | mainnet, testnet | [Operazioni](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/monad-node.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/monad.md) |
| TRON | `erpc rpc --chain tron` | `erpc validator --chain tron` | mainnet, nile | [Operazioni](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/crates/erpc-chain-tron/templates/README.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/tron.md) |
| Sui | `erpc rpc --chain sui` (anche `erpc node`) | `erpc validator --chain sui` | mainnet, testnet | [Operazioni](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/crates/erpc-chain-sui/templates/README.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/sui.md) |
| NEAR | `erpc rpc --chain near` | `erpc validator --chain near` | mainnet, testnet | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/near-rpc.md), [Validator](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/near-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/near.md) |
| Arc | `erpc rpc --chain arc` | | mainnet, testnet | [Runtime RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/arc-runtime.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/arc.md) |
| Robinhood Chain | `erpc rpc --chain robinhood` | `erpc validator --chain robinhood` | mainnet, testnet | [Ammissione](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/robinhood-admission.md), [Validator](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/robinhood-defensive-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/robinhood.md) |
| Soneium | `erpc rpc --chain soneium` | | mainnet, minato | [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/soneium.md) |

[Esecuzione dei nodi](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/nodes.md) riporta i client di ogni chain.

## Cosa serve a erpc sul server

- erpc accede tramite SSH come utente sudo (`ubuntu` per impostazione predefinita) con la tua chiave, dall'agente SSH di 1Password o da `SSH_AUTH_SOCK`, e fissa la chiave host la prima volta.
- Il server richiede `/usr/bin/python3` e un utente di accesso il cui `sudo` non chieda alcuna password.
- `/opt` deve essere già una vera directory di proprietà di root, non scrivibile né dal suo gruppo né dagli altri, così come la fornisce Ubuntu; erpc non la crea. `/opt/erpc` e le directory `runs` e `uploads` che erpc vi crea sono soggette alla stessa regola, e nessuna di queste può essere un link simbolico: per tenerle su un altro volume, monta il volume su `/opt/erpc`. Per un nodo, il filesystem che contiene `/opt/erpc` deve anche mantenere le ACL POSIX (ext4 e XFS lo fanno per impostazione predefinita), altrimenti erpc si ferma.
- Un nuovo host Solana richiede Ubuntu 24.04, systemd 255 e x86-64 con le funzionalità CPU AVX2 e SHA. ERPC richiede almeno 32 thread logici e 480 GiB di memoria utilizzabile per un nodo RPC Solana, 24 thread e 300 GiB per un validator mainnet, e 24 thread e 120 GiB per un validator testnet.

## Come erpc esegue un nodo

- La maggior parte delle chain esegue il client con un proprio utente che non può accedere, verifica ogni versione rispetto a un checksum fissato prima di installarla e applica un firewall nftables con un rollback a tempo che una nuova connessione di gestione deve confermare. Non tutte lo fanno: un nuovo nodo Solana viene compilato sul server da un commit sorgente fissato, e un nodo Solana registrato sul backend solv viene eseguito come utente di accesso con sudo senza password e scarica alcuni strumenti senza checksum.
- erpc non applica alcun firewall ai validator Solana sul backend solv, ai validator Ethereum né ai nodi Bitcoin, quindi il filtraggio di questi host spetta a te.
- Durante le modifiche di rete, mantieni un modo indipendente per raggiungere l'host.
- Finché la directory drop-in di un servizio protetto contiene un altro file, come un `override.conf` da `systemctl edit`, il passaggio del firewall rifiuta e non modifica nulla. Sposta il tuo drop-in fuori dalla directory ed esegui di nuovo il comando.
- I secret inviati dalla tua macchina raggiungono il server tramite standard input, mai su una riga di comando.
- Un nuovo validator Solana si sincronizza con un'identità separata e con il voto disabilitato. `deploy --activate-validator` passa un host integro alla sua identità registrata originale dopo la registrazione pubblica e i controlli BLS nativi. `--backend solv` riprende un host solv esistente e non può crearne uno nuovo.
- Non ripristinare il signer di un validator Ethereum da un backup: sposta un signer con `erpc v --chain eth migrate`.

[Accesso e chiavi](https://erpc.global/it/doc/erpc-cli/sign-in-and-keys/#dove-vengono-conservate-le-chiavi-dei-nodi) mostra quali chiavi conserva ogni nodo in 1Password e sull'host.

## A che punto è ogni chain

Per ogni chain della tabella, l'implementazione è verificata offline e l'accettazione dal vivo su host reali è rinviata. Il controllo dell'instradamento dei comandi RPC prova tutti e dodici i verbi comuni su tutte e diciotto le chain, e nessuno di questi controlli esegue un nodo su un host reale. La pagina di ciascuna chain nella [mappa delle sorgenti delle chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/README.md) indica a che punto è.
