KB Flooris Hosting - Hetzner Storagebox SFTP passwordless¶
Deze guide gaat specifiek over het toevoegen van een SSH key voor een sub-user van een Hetzner Storagebox. De Storagebox en deze gebruiker moet toegang hebben via SSH, remote access aan hebben staan en moeten in ieder geval voor het instellen een wachtwoord hebben.
Setup¶
Key genereren¶
Als eerste gaan we een SSH key-pair genereren, deze zullen we specifiek alleen voor toegang gebruiken naar de Storagebox.
ssh-keygen -f ~/.ssh/id_flooris-docker-backups
Key uploaden naar Hetzner¶
Om de SSH key te uploaden naar Hetzner, moeten we een script uitvoeren die op de Storagebox staat. Zorg ervoor dat je het wachtwoord van je sub-user bij de hand hebt, want we moeten hier nog wachtwoord based auth gebruiken om te kunnen verbinden.
cat ~/.ssh/id_flooris-docker-backups.pub | ssh -p23 -o PreferredAuthentications=password u545451-sub1@u545451.your-storagebox.de install-ssh-key
Gebruik de juiste sub-user
Als je de key gaat uploaden, zorg ervoor dat je de sub-user gebruikt die je ook voor deze server gaat gebruiken.
Anders wordt de key geinstalleerd voor de verkeerde gebruiker en kan je niet inloggen met de gebruiker die je wil gebruiken.
SSH config instellen¶
Nu kunnen we onze SSH-configuratie aanpassen zodat er een custom SSH host is aangemaakt. Hierdoor weet de SSH-client direct wat de hostname is, de username, poort en SSH key die gebruikt moet worden.
Open of maak het SSH-configuratiebestand aan voor je gebruiker met nano ~/.ssh/config.
Als je dit voor de root user wil doen (bijvoorbeeld voor Restic backups), moet je sudo nano /root/.ssh/config gebruiken.
Host flooris-docker-backups
HostName u545451.your-storagebox.de
User u545451-sub1
Port 23
IdentityFile /root/.ssh/id_flooris-docker-backups
Je kan dan als het goed is nu verbinden zonder wachtwoord als je deze hostname gebruikt.
Test het door middel van dit commando:
sftp flooris-docker-backups
Restic + Storagebox voorbeeld
Hieronder een voorbeeld van een Hetzner Storagebox gebruiken om een Restic backup te maken.
sudo restic -r sftp:flooris-docker-backups:/home/restic-repository backup /home/some-important-directory