Skip to content

Instantly share code, notes, and snippets.

@yorickdowne
Last active June 19, 2024 11:59
Show Gist options
  • Save yorickdowne/7fbde369ee1979efa2cfd181259a94e3 to your computer and use it in GitHub Desktop.
Save yorickdowne/7fbde369ee1979efa2cfd181259a94e3 to your computer and use it in GitHub Desktop.
Netcup initial setup for RocketPool or solo staking

Overview

Running on netcup is not much different from running on any other Linux host. The main difference is that the host is directly exposed to the Internet. Netcup provision Debian, which works well with RocketPool.

Create a non-root user

Log in via ssh: ssh root@IP. Create a non-root user: adduser USERNAME followed by usermod -aG sudo USERNAME. Log in as that user.

Set up SSH key authentication

This step is critical, because SSH is exposed to the Internet at large. In a nutshell, your public key goes into ~/.ssh/authorized_keys, then you'll test that login works. The specific steps are a bit longer if you are not used to key generation, and documented here: https://eth-docker.net/docs/Usage/ClientSetup#ssh-key-authentication-with-linux

Once ssh key auth has been successfully tested, and not before, edit the ssh config file: sudo nano /etc/ssh/sshd_config, and find these lines and changes them to no like so:

PasswordAuthentication no
PermitRootLogin no

Save the file, and run sudo systemctl restart ssh

Verify you can still log in via SSH.

Continue with installation

Now just continue with Rocketpool or Ethereum node installation like you would on any Linux. For security, you'll want to turn on firewalling and only allow OpenSSH, as well as set up unattended-updates for Ubuntu. CoinCashew's guide is good, and I have a (lengthy) YT walkthrough re security, which I recommend skipping around in because of its length: https://www.youtube.com/watch?v=hHtvCGlPz-o

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment