Recently I've been moving all my content off AWS and onto Sibyl, and since there were no guides to setting this up (and I've encountered some bugs) I figured I'd create one so you know what you're getting yourself into before you have to pay. It's not much work, but it does take some setup.
Setting up Sibyl
First you have to set up an account, and I recommend actually doing this first. Second you'll have to order the service. Currently they have two options, Norway and NL bunker, but I think they're making a third in the UK. You'll want to switch currency to USD. Sibyl doesn't have US based servers for legal reasons relating to privacy, so if the ping rate is important to you it might ultimately make more sense to use Vultr, although for what I've been doing it hasn't been a problem. From here it'll have you create a host/machine name as well.
From here Sibyl will email you a generated username, password, and the link vps.sibyl.li to log in with. You'll enter the given username/password. I'd probably give it a bit to propagate, but if it's not letting you log in just contact they're support for a new password. This happened to me and they respond remarkably quickly. Once you log in the page should look like this
You should only see one service, and it shouldn't have an OS selected yet. Select it, and it'll dump you into your homepage, which looks like this:
Now you'll want to install the OS. These are the options they currently have, but it may be different in the future. After installing it will give you your root password. If you do lose you can just regenerate it from the "Root/Admin Password" option on the homepage.
Once you have your OS installed and root password, you'll have to open the VNC and log in as root. If you user their VNC it'll tell you the port, username and password they're using for VNC and an option to open it in html or Java. *Technically* you're done here, but realistically you need SSH access too.
SSH Setup on linux/macOS/Possibly powershell
If you set up your server with Ubuntu, you'll have to first run these commands to install ssh, ufw (firewall) and enable them.
$ sudo apt install ssh ufw
$ sudo systemctl enable --now ssh
$ sudo systemctl status ssh # ensure the service is actually running
$ sudo ufw allow ssh
systemctl status ssh
just ensures that the service is enabled, and ufw allow ssh
opens the ssh port for use.
The secure thing to do now is disable ssh through root and use another account. There are many scripts that scan IP's and try common passwords for root users (the research on it is crazy, you can scan every IPv4 address in ~45minutes) but given my secure password and the low importance of this server I won't be doing that.
Now you should be able to log in from your home computer with
$ ssh root@IP-address
But that's a pain. You can set up your ssh config to automatically enter that information in your .ssh/config
file. Mine looks something like this:
ForwardX11 yes
Host name-you-choose
Hostname ip-address
User root
But now what if you don't want to have to enter that randomly generated password over and over again?
SSH key gen
The best way is to use ssh-keygen to avoid entering password. You will have to log into your server at least once with the normal password to generate the inital keys.
Generate a key by running ssh-keygen
on your machine to generate the RSA keypair. You can just hit enter for the file to save the keypair if you'd like to use the default, and you may leave the passphrase blank (unless you want to have one that's easy to remember on your local machine).
Then run
$ ssh-copy-id root@ip-address
or
$ ssh-copy-id host-in-ssh-config
If you set up your .ssh config file.
Now you should be able to run $ ssh host-in-ssh-config
and it should log you directly in!
Extras
Two commands that are great for checking system resources (since you don't have that many):
dh -f
- - This will show you how much space you have left
htop
- - shows you CPU usage and RAM.
hostname -i
- - will show you your ip address
Also if you want to set up a git server, I'd recommend this guide by Luke Smith, where he's also installing it on a Sibyl VPS: Setting up *Your Own* Git Server. Other fun services to host include searx or a matrix server.
Additionally you can forward a domain to this IP address if you'd like, as I've done for this site. I like Epik, but generally you can set it to the default name servers and enter your IP address in advanced forwarding for any domain registrar.