I rent a couple of root servers from Hetzner that run various services I host. You can rent standard and custom configurations but these have an initial setup cost and setup time. For impatient hobbyists like myself, Hetzner also allows you to rent unused servers from their server auctions. These servers can be rented with a one month notice period, have no up front costs, and are available to use almost immediately.

I'm experimenting with IPv6 bridge setups, for this I've found a cheap server from the auctions and am trying to document the process.

When you order a root server from Hetzner you will be given an IPv4 address and an IPv6 subnet for the server. When you SSH to the IP address you will reach the Hetzner rescue system, a shell environment where you can format, mount and install an operating system on the disks connected to your server.

Note: when SSHing into the rescue system you may want to disable "strict host checking" as the rescue system host key will be different than that of your host.

tarn@laptop $ ssh -o StrictHostKeyChecking=no [server IP address]

It's possible to mount the disks connected to the server yourself and manually install whatever you want. For convenience Hetzner also provides an installimage script that starts an ncurses interface that leads you through the setup of various distributions and will handle partitioning, grub setup, software RAID, prompt for root password, network configuration, install sshd and add your SSH key as an authorized key.

root@rescue ~ # installimage

I chose Debian 9 and took all the default options except the hostname, which I changed to demo. This isn't very interesting, but I took some screen shots of the process anyway. 1 2 3 4 5 6 7

  • 1.png
  • 2.png
  • 3.png
  • 4.png
  • 5.png
  • 6.png
  • 7.png

After installing the image you can reboot from the rescue system and your server will boot up.

root@rescue ~ # reboot

The next time you SSH to your IP address you'll be connecting to your own server. This time you want strict host checking so when we connect via SSH going forward you can be confident you're connecting to your server.

tarn@laptop $ ssh [server IP address]
root@demo ~ #

If all goes well you should have an ssh shell on your new physical server!

If you ever find yourself in a situation where you can't SSH into your own server because the network is misconfigured or the server doesn't boot, you can re-enable the rescue system from the Hetzner web interface and either mount the disks and fix the configuration or install a new operating system.

If you're having problems with the boot process you can also request VNC access to the servers video and input devices. This is a manual process that requires raising a ticket, the few times I've made a request it's taken less than half an hour to get setup.