Skip to content

Instantly share code, notes, and snippets.

@yorickdowne
Last active August 2, 2022 13:46
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • 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, and that it is provisioned with Debian, not Ubuntu, to begin with.

Install Ubuntu

In netcup's customer control panel, Overview, click on "SCP Auto-Login". This gets you into their Server Control Panel.

In netcup's server control panel, choose Media on the left, and the Images tab. Select the Ubuntu 20.04 image and install it, partitioning the whole disk. The "SCP password" being asked for here is the password for the Server Control Panel, which you received in a welcome email when first signing up with netcup.

Create a non-root user

Once Ubuntu is up, 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