Hulp bij je webhostingpakket of domeinnaam?

Handleidingen, tips, premium diensten of vraag één van onze experts.

SSH-toegang bij Antagonist

Bij Antagonist is de mogelijkheid geïntroduceerd om via SSH verbinding te maken met een webhostingpakket. Hiermee is het mogelijk om als de systeemgebruiker die bij jouw hostingpakket hoort commando’s rechtstreeks op de server uit te voeren. Dit kan bijvoorbeeld gebruikt worden voor simpele beheertaken, zoals het verplaatsen, hernoemen of aanpassen van bestanden, of bijvoorbeeld de uitrol en het beheer van websites of applicaties aan de hand van git.

Voor welke hostingpakketten is SSH beschikbaar?

De mogelijkheid om door middel van SSH te verbinden is toegevoegd aan de pakketten Slim, Plus en Pro. Als je dus een van deze pakketten afneemt, kan je direct gebruik maken van Antagonist SSH.

Voor resellers is SSH niet automatisch ingeschakeld. Echter begrijpen we dat hier mogelijk vraag naar is. Ben je dus een reseller bij Antagonist en wil je graag SSH gebruiken, dan kan je hiervoor contact opnemen met support@antagonist.nl. We kunnen dit dan op verzoek inschakelen.

Vereisten

Om bij Antagonist SSH te kunnen gebruiken met een webhostingpakket zijn een tweetal zaken vereist. Zo moet je gebruik maken van een SSH client. Deze moet verbinden door middel van een geldige cryptografische sleutel.

SSH client

Er is een breed scala aan beschikbare clients. In principe zit hier geen restrictie op. Veelgebruikte clients zijn bijvoorbeeld PuTTY (Windows) of de standaard ingebouwde SSH-functionaliteit in de terminal voor macOS en Linux. In deze documentatie worden PuTTY (downloaden) en de terminal voor macOS / Linux als voorbeeld gehanteerd.

Private / public key genereren

Om via SSH te kunnen verbinden, moet de verbinding worden versleuteld. Dit gebeurt aan de hand van een private / public key paar, waarvan de public key op de server bij Antagonist wordt toegevoegd. De private key blijft altijd lokaal opgeslagen en wordt door de SSH client gebruikt. Het is belangrijk dat de private key ook echt privé blijft; deel deze nooit en sla het veilig op.

Hieronder beschrijven we twee manieren om een 'key pair' te genereren; PuTTYgen voor Windows en het SSH-keygen commando op macOS of Linux. Gebruik je zelf liever een andere (veilige) mogelijkheid, dan is dit natuurlijk geen probleem.

Belangrijk
De private key wordt 'private' genoemd, omdat het belangrijk is dat je deze strikt privé houdt. De veiligheid van de versleuteling berust op het feit dat deze veilig wordt opgeslagen op jouw lokale apparaat, en in geen geval wordt gedeeld met anderen. Ga hier dus met gepaste zorgvuldigheid mee om.

PuTTYgen

In Windows kan je cryptografische sleutels generen met PuTTYgen - de key generator die bij PuTTY wordt geleverd. PuTTY en PuTTYgen zijn hier te downloaden. Start, wanneer je deze hebt gedownload, het PuTTYgen programma.

Kies de parameters voor het aan te maken key pair. bijvoorbeeld RSA en 4096 bits.

Kies de parameters voor het aan te maken key pair, bijvoorbeeld RSA en 4096 bits

Vervolgens zal de PuTTY client je vragen om de muis willekeurig over het venster te bewegen, om te helpen willekeur te genereren voor het aanmaken van de sleutels.

Wanneer de keys zijn aangemaakt, verschijnen deze in het venster.

Wanneer de keys zijn aangemaakt, verschijnen deze in het venster. Vul vervolgens een sterke passphrase en eventueel een comment in.

Belangrijk
Het is voor de veiligheid belangrijk dat je hier een sterke passphrase instelt. Doe je dit niet, dan kan een eventuele gelekte private key kwaadwillenden toegang geven tot jouw hostingomgeving. Door een goede passphrase in te stellen is toegang enkel mogelijk met zowel de private key als de passphrase.

Ten slotte kies je de optie 'Save private key'. Kies een goede locatie om deze te bewaren. De private key is nu opgeslagen.

De public key die hierbij hoort kan je uit het PuTTYgen scherm kopiëren; deze heb je bij latere stappen nodig om SSH toegang mogelijk te maken vanuit DirectAdmin.

De public key die hierbij hoort kan je uit het PuTTYgen scherm kopiëren.

Indien gewenst kan je ook de public key opslaan, met de optie 'Save public key', of je kan deze later opnieuw genereren door de bestaande private key in te laden met de optie 'Load'.

SSH-keygen (macOS en Linux)

Op macOS en Linux kan je de SSH key rechtstreeks via de command line genereren. Hiervoor kan je bijvoorbeeld het SSH-keygen commando gebruiken. Open hiervoor een terminal, en gebruik het volgende commando:

 $ ssh-keygen -t rsa -b 4096 -f ~/.ssh/antagonist-ssh 

Het SSH-keygen commando zal vragen om een 'passphrase'. Kies hiervoor een sterk wachtwoord.

Belangrijk
Het is voor de veiligheid belangrijk dat je hier een sterke passphrase instelt. Doe je dit niet, dan kan een eventuele gelekte private key kwaadwillenden toegang geven tot jouw hostingomgeving. Door een goede passphrase in te stellen, is toegang enkel mogelijk met zowel de private key als de passphrase.

Door een goede passphrase in te stellen is toegang enkel mogelijk met zowel de private key als de passphrase.

Vervolgens kan je de gegenereerde public key opvragen in diezelfde terminal:

 $ cat ~/.ssh/antagonist-ssh.pub 

Vervolgens kan je de gegenereerde public key opvragen in diezelfde terminal.

Deze public key kan je kopiëren; deze heb je bij latere stappen nodig nodig om SSH toegang mogelijk te maken vanuit DirectAdmin.

DirectAdmin

Om veilig via SSH te kunnen verbinden, moet je van de server toegang krijgen. Daarvoor moet deze jouw SSH client kunnen identificeren. Dit doen we door in DirectAdmin de gegenereerde public key toe te voegen.

Om een extra veiligheidslaag toe te voegen geldt er voor SSH bij Antagonist een restrictie op basis van het gebruikte IP-adres. Het kan dus voorkomen dat wanneer jouw IP-adres wijzigt, of wanneer je vanaf een andere locatie / netwerk verbindt, je hiervoor opnieuw de toegang moet verlenen via DirectAdmin.

Allereerst de interface in DirectAdmin. Deze kan je in DirectAdmin terugvinden onder 'Advanced Features', en vervolgens 'Antagonist SSH'.

De interface kan je in DirectAdmin terugvinden onder „Advanced Features”, en vervolgens „Antagonist SSH”.

Wanneer je hierop klikt, krijg je de de mogelijkheid om SSH-toegang in te stellen voor het betreffende account. Dit vervolgscherm ziet er als volgt uit:

Het scherm om SSH-toegang in te stellen op het account.

SSH Public key en IP toevoegen

De eerste stap wanneer je een SSH-client toegang wilt verlenen is het invullen van het relevante IP-adres.

Kies hoe lang de toegang geldig dient te zijn, geef de key een naam, en plak de gegenereerde public key in het „Key” veld.

Vervolgens kies je hoe lang de toegang geldig dient te zijn, geef je de key een naam, en plak je tenslotte de gegenereerde public (let op: nooit de private key) in het 'Key'-veld.

Hieronder staan de verschillende velden tevens nader toegelicht:

IP:

Dit is het IP-adres waarvandaan de SSH client moet kunnen verbinden. Standaard is deze leeg, maar je kunt de optie 'Gebruik huidige IP' gebruiken om het IP in te vullen waarmee je ook op DirectAdmin bent ingelogd. Een enkele SSH-key kan vanaf meerdere IP-adressen te gebruiken zijn, zodat je bijvoorbeeld met eenzelfde apparaat zowel vanuit huis als vanaf werk via SSH kunt werken.

Verloopt over:

Dit is de verlooptijd van de toegang. SSH-toegang met een specifieke key / IP is geldig voor een vaste periode, variërend van 1 minuut tot maximaal 1 jaar. Wanneer een key komt te verlopen, wordt deze niet verwijderd, maar komt deze als 'verlopen' in het overzicht te staan onder 'Huidige toegang', en kan deze niet langer gebruikt worden om te verbinden.

Toevoegen aan:

Hiermee kan je aangeven aan welke bestaande key je het IP wilt koppelen, of je kunt 'Nieuwe key' kiezen om een geheel nieuwe key toe te voegen. Bij het kiezen van de optie 'Nieuwe Key' worden de volgende twee velden zichtbaar:

Key naam:

Hiermee kan je een naam geven aan de opgeslagen key, zodat je deze kunt herkennen. Denk hierbij bijvoorbeeld aan 'Laptop Henk' of 'Desktop werk' - een waarde waarmee je kunt herleiden bij welk apparaat / client de key hoort.

Key:

Dit is het veld waarin je de eerder bemachtigde public key invult. Hoe je aan een public key komt, wordt beschreven in het eerdere punt, 'Private / public key genereren'.

Heb je alle waarden naar wens ingesteld, dan kan je rechtsonder 'Voeg key en IP toe' kiezen. Hiermee worden de public key en het IP-adres opgeslagen, en vanaf dat moment is het opzetten van een SSH-verbinding mogelijk.

Meerdere IP-adressen toevoegen aan een key

Het is ook mogelijk om, zoals eerder beschreven, een nieuw IP toe te voegen aan een bestaande key, om bijvoorbeeld te zorgen dat je vanaf jouw laptop vanaf verschillende locaties via SSH kunt verbinden.

Je kan een nieuw IP toevoegen aan een bestaande key door bij “Toevoegen aan:” een bestaande key te selecteren.

Dit is mogelijk door het nieuwe IP-adres in te vullen, en vervolgens bij 'Toevoegen aan:' een bestaande key te selecteren. Gebruik ten slotte 'Voeg key en IP toe' om het IP-adres aan de bestaande public key toe te voegen.

Expiration en toegang ontzeggen

Het is mogelijk dat een SSH-key die je in DirectAdmin hebt toegevoegd is verlopen, of dat je actief een key de toegang via SSH wilt ontzeggen. In beide gevallen kan je opgeslagen keys verwijderen via de DirectAdmin interface. Ga hiervoor in DirectAdmin opnieuw naar 'Advanced features' en vervolgens 'Antagonist SSH'.

Wanneer je „Verwijder keys en/of IP’s” kiest, worden deze verwijderd, en kan er niet meer met de betreffende key / vanaf het betreffende IP-adres verbonden worden.

Onder 'Huidige toegang' zie je hier welke toegang er op dit moment verleend wordt voor SSH. Je kunt hier de gehele key, of enkel een specifiek IP onder deze key, aanvinken. Wanneer je vervolgens 'Verwijder keys en/of IP’s' kiest, worden deze verwijderd, en kan er niet meer met de betreffende key / vanaf het betreffende IP-adres verbonden worden.

Verbinden

De volgende stap beschrijft het opzetten van een SSH-verbinding met de server, met zowel PuTTY als de Terminal (macOS en Linux), zodat je daadwerkelijk via SSH aan de slag kunt. Ook hierin maken we onderscheid tussen het gebruik van PuTTY op Windows en de ingebouwde ssh functie in macOS en Linux.

Verbinden met PuTTY (Windows)

Verbinden via PuTTY kent een aantal stappen. Allereerst open je de PuTTY client. Heb je deze nog niet, dan kan je deze hier downloaden. Vervolgens krijg je de volgende interface:

De interface van de PuTTY client.

Links in dit scherm zie je onder 'Category' een menu met aantal instellingen voor de verbinding. We hebben hier eigenlijk maar drie opties nodig. De eerste is direct de bovenste, 'Session'.

Vul bij „Host Name (or IP address)” jouw domeinnaam in.

Vul hier bij 'Host Name (or IP address)' jouw domeinnaam in. Mocht jouw domeinnaam naar een externe locatie verwijzen, maar wil je toch via SSH met het hostingpakket verbinden, dan kan je ook overwegen om via DNS-management een subdomein aan te maken, en deze, bijvoorbeeld ssh.domeinnaam.nl, als hostname te gebruiken. De poort kan je op 22 laten staan. Ga vervolgens via het linker-menu onder 'Connection' naar 'Data'.

In het „Data” scherm vul je onder „Login details” jouw gebruikersnaam in.

In het 'Data' scherm vul je vervolgens onder 'Login details' jouw gebruikersnaam in. Dit is dezelfde gebruikersnaam van jouw pakket waarmee je via FTP of DirectAdmin inlogt, bijvoorbeeld 'deb12345'.

De volgende stap is het opgeven van de private key die we eerder hebben gegenereerd, en waarvan de public key in DirectAdmin is toegevoegd. Dit gaat door in het linkermenu de optie 'SSH' uit te vouwen, en vervolgens naar 'Auth' - authenticatie.

Bij „Authentication parameters”, kies je voor de „Browse”-knop en zoek je de private key op die je eerder met PuTTYgen hebt gegenereerd.

Hier kan je bij het derde blok, 'Authentication parameters', de 'Browse'-knop kiezen, en vervolgens zoek je de private key op die je eerder met PuTTYgen hebt gegenereerd. Door deze te selecteren zal PuTTY de betreffende key gebruiken voor het verbinden.

De laatste handeling is het opslaan van de sessie, zodat je deze bij herhaald gebruik gemakkelijk kunt herstarten. Dit doe je door terug te gaan naar het eerste menu-item, 'Session'.

De laatste handeling is het opslaan van de sessie, zodat je deze bij herhaald gebruik gemakkelijk kunt herstarten.

Hier vul je onder 'Saved Sessions' een zelf gekozen naam in voor de sessie, bijvoorbeeld 'Antagonist deb1235 SSH', en vervolgens klik je op 'Save' om de sessie op te slaan.

Je kunt nu de verbinding starten, door in PuTTY op 'Open' te klikken. Vul de gekozen passphase in.

Verbinden met een SSH-verbinding via de terminal (Mac OS en Linux).

Verbinden via de terminal (macOS en Linux)

Het opzetten van een SSH-verbinding via de Terminal van macOS of Linux is vrij eenvoudig. Dit kan aan de hand van het 'ssh' commando, waarbij je de eerder gegenereerde private key opgeeft voor de authenticatie. Het volledige commando heeft hierbij de vorm:

 $ ssh -i <padnaarprivatekey> <username>@<hostname> 

Wanneer jouw gebruikersnaam bijvoorbeeld deb12345 is, jouw domein 'jouwdomeinnaam.nl', en je hebt de private key zoals in het eerdere voorbeeld opgeslagen als ~/.ssh/antagonist-ssh, dan wordt het volledige commando:

 $ ssh -i ~/.ssh/antagonist-ssh deb12345@jouwdomeinnaam.nl 

Voer dit commando uit, accepteer de fingerprint van de server, en geef de door jou gekozen passphrase op. Je bent nu succesvol ingelogd op het hostingpakket via SSH.

Voer het commando uit, accepteer de fingerprint van de server, en geef de gekozen passphrase op om in te loggen op het hostingpakket via SSH.

Belangrijk om rekening mee te houden

Via SSH toegang heb je het volledige beheer over de webruimte die je bij Antagonist afneemt. Dit is voor velen een enorm voordeel, en een reden om SSH te gebruiken in plaats van bijvoorbeeld beheer via FTP-clients of DirectAdmin.

Echter heeft de vrijheid die SSH-toegang biedt ook nadelen. Zo kan het verkeerde commando of een typfout onverhoopt bijvoorbeeld de volledige inhoud van jouw hostingpakket verwijderen, of jouw omgeving dusdanig beschadigen dat deze niet meer correct werkt.

We raden dan ook aan om geen SSH te gebruiken, tenzij je precies weet waar je mee bezig bent. Is dat wel het geval, wees ook dan zorgvuldig en maak goede backups van alle belangrijke data. Met de grotere vrijheid die SSH-toegang biedt, is het belang van verantwoordelijk gebruik dus ook toegenomen.

With great power comes great responsibility.
 
Geen cookies