Rocket Pool
Rocket Pool
Overview
Guides
Website
简体中文
English
Overview
Guides
Website
简体中文
English
Rocket Pool

Guides

Overview
The Saturn 0 Upgrade

rETH Staker Guide

Overview
Staking directly via Rocket Pool
Staking via a Decentralised Exchange on the Ethereum Network (Layer 1)
Staking via a Decentralised Exchange on Layer 2
Staking on behalf of a node

Node Operator Guide

A Node Operator's Responsibilities
Node Requirements & Choosing a Platform

Preparing a Local Node

Overview
Selecting Staking Hardware
Preparing a PC, Mini-PC or NUC
Preparing a Mac
Intro to Secure Shell (SSH)

Preparing a Server Node

Overview
Selecting a Hosting Provider
Preparing the Operating System

Securing Your Node

Securing Your Node
Tailscale

Installing Rocket Pool

Overview
Choosing your ETH Clients
Selecting a Rocket Pool Mode
Creating a Standard Rocket Pool Node with Docker
Creating a Native Rocket Pool Node without Docker

Configuring Rocket Pool

Overview
Configuring the Smartnode Stack (Docker/hybrid mode)
Configuring the Smartnode Stack (native)
Advanced Smartnode Configuration for Docker Mode

Provisioning your Node

Overview
Starting Rocket Pool
Creating a New Wallet
Importing/Recovering an Existing Wallet
Preparing your Node for Operation
Intro to the Command Line Interface
Specifying a Fallback Node
Fee Distributors and the Smoothing Pool
MEV, MEV-Boost & MEV Rewards

Creating or Migrating Minipools

Overview
Creating a new Minipool (Validator)
The Minipool Delegate
Converting a Solo Validator into a Minipool
Migrating a 16-ETH Minipool to 8-ETH
The Deposit Credit System

Monitoring & Maintenance

Overview
Monitoring your Node's Performance
Setting up the Grafana Dashboard
Smartnode Stack Alert Notifications
Checking for Updates
Backing Up Your Node
Masquerading as Another Node Address
Expiring Pre-Merge History
Pruning the Execution Client
Changing Execution or Consensus Clients
Moving from One Node to Another

Claiming Rewards

Overview
Claiming Node Operator Rewards
Distributing Skimmed Rewards

Participating in pDAO governance

Overview
The Protocol DAO
Participating in on-chain pDAO Proposals
Setting your Snapshot Signalling Address
Delegating Voting Power
Viewing the State of a Proposal
Voting on a Proposal
Creating a Proposal
Executing a successful proposal
Claiming Bonds and Rewards
Creating and Claiming a recurring treasury spend

Exiting your Minipools

Shut Down a Minipool
Rescuing a Dissolved Minipool
FAQ (WIP)

Testing Rocket Pool with the Hoodi Test Network

Practicing with the Test Network
Migrating from the Test Network to Mainnet

Running an Oracle DAO Node

The Rocket Pool Oracle DAO
Setting up an Oracle DAO Node
Testing your Oracle DAO Node
Monitoring your Oracle DAO Node
Oracle DAO Proposals

Legacy Guides

Upgrading to Smartnode v1.3.x
Migrating the Smartnode from Previous Beta Tests
The Atlas Update
Lower ETH Bond Minipools

Redstone & The Merge

The Rocket Pool Redstone Update
[Docker Mode] Guide to the Redstone Update and the Merge
[Hybrid Mode] Guide to the Redstone Update and the Merge
[Native Mode] Guide to the Redstone Update and the Merge

The Houston Upgrade

Overview
Getting Started with Houston
The Protocol DAO
Participating in Proposals
Stake ETH on Behalf of Node
RPL Withdrawal Address
Preparing a Raspberry Pi
📝 Edit this page on GitHub
Previous PagePreparing a Mac
Next PagePreparing a Server Node

#Intro to Secure Shell (SSH)

In general, there are two ways to access your node machine: locally, and remotely.

  • Locally refers to sitting down at the physical node and using a monitor and keyboard connected directly to it.
  • Remotely refers to connecting to the node using a different computer (say, a laptop or desktop) over a network and interacting with it from there.

Most of the time, node operators prefer the flexibility of working on their node remotely.

The Smartnode currently doesn't have a GUI (Graphical User Interface), only a CLI (Command Line Interface), which means interacting with it is done entirely by typing commands into a command-line terminal. As such, interacting with it remotely requires some way to access your node's terminal from a different machine. In this section, we'll provide a brief introduction to the most popular way of doing this: SSH.

Using a Windows Machine
Using a Linux or macOS Machine

There are a few different ways to use SSH from a Windows machine.

The simplest is to use Powershell, which is a powerful command terminal that comes built into modern versions of Windows. Powershell has SSH included, so you can use it right away without installing any supplemental programs.

You can find it by opening the Start menu and typing Powershell into the search bar; there will be several options, but option you want is simply called Windows Powershell:

This will open up a terminal with a blue background. You can use ssh from here - see below for instructions on how to do that.

Another popular tool is called PuTTY. PuTTY is a special program that includes a terminal dedicated for SSH usage, but it also comes with a convenient GUI for doing things like changing configurations, saving settings to a "profile", and keeping a list of machines you can easily connect to by selecting from a list.

Instead of using ssh as you would with the other tools, PuTTY will do this for you automatically - all you need to provide are the username and password. For information on how to use PuTTY, take a look at this great tutorial.

NOTE: PuTTY might display the wrong colors in the rocketpool service config text-based user interface (TUI). There's an easy solution for this. In the PuTTY settings, navigate to Connection > Data > Terminal Details in the dropdown menu. There should be a Terminal-type string text box. Type in xterm-256color, then save the settings to resolve this.

Here's how you would connect to your node using SSH.

NOTE

Run the following command from your laptop or desktop, not from your node itself!

ssh username@node-ip-address

Say, for example, that your node's username is staker and your node's IP address is 192.168.1.10. You would connect to it with the following command:

ssh staker@192.168.1.10

The first time you do this, you will see a message presenting the public key that your node is using - if you are familiar with how to verify this key, you can do so now. Otherwise, if you trust that you have the correct node IP address in your ssh command, you can just say yes to accept it. You only need to do this once.

The client will then prompt you for your user's password; once you enter that, you're in! You will be greeted with a welcome message, some details about your machine, and a new prompt.

At this point, everything you type in the terminal is executed remotely on your node machine - it's as if you were logged directly into the node machine and typing on it with a locally-attached keyboard!

You'll need to SSH into the terminal periodically for updates and maintenance. It can be inconvenient to remember how to log in to your node, so it may be helpful to shorten this command by creating a memorable alias - a custom "shortcut" command.

NOTE

If you do this, be sure to create the alias on the client machine, not on the node! If your terminal is still connected to the node, first run exit at the command prompt (or simply open a new terminal window).

NOTE

This section only applies to Linux/OSX or WSL users - PowerShell is not supported.

In this example, we'll create an alias called ethnode which will replace the SSH command. Assuming, as before, that your node's username is staker and your node's IP address is 192.168.1.10, create the alias with the following command:

echo "alias ethnode='ssh staker@192.168.1.10'" >> ~/.bash_aliases

Reload the alias list to make your current terminal window aware of the new alias:

source ~/.bash_aliases

Now, you can connect to the node using the alias you just created instead of the longer command that involves specifying the node's IP address:

ethnode