Warning: Attempt to read property "geoplugin_countryCode" on null in /sites/grijze.eu/subdomains/frank/htdocs/site-header.php on line 51

Deprecated: addslashes(): Passing null to parameter #1 ($string) of type string is deprecated in /sites/grijze.eu/subdomains/frank/htdocs/assets/functions/convertToSQL.inc on line 13
Inloggen via SSH zonder wachtwoord | Frank Grijze

Frank GrijzeFrank Grijze

Categoriën

Statistieken

Pageviews deze maand: 406
Bezoekers deze maand: 69
Aantal blogitems: 10
Aantal reacties: 0
Aantal links: 6

Inloggen via SSH zonder wachtwoord

Geplaatst op woensdag 22 februari 2017 om 22:18 door Frank

Inloggen via SSH via een gebruikersnaam en wachtwoord kan soms zeer onveilig zijn. Tevens is het zeer omslachtig als je, telkens je wilt inloggen via SSH, telkens je wachtwoord moet invoeren. Een oplossing hiervoor is om in te loggen middels je gebruikersnaam en een beveiligingssleutel.

Het eerste wat we moeten doen is het aanmaken van een beveiligingssleutel op de machine waarvandaan we een verbinding willen opzetten met een externe machine. Dit doen we met het volgende commando:

ssh-keygen -t rsa

Alle opties kunnen op hun standaardwaarde blijven, dus bij elke stap kun je gewoon op enter duwen. Hierna zal er een sleutelpaar worden aangemaakt (een publieke en een privé sleutel).

De machine waarmee verbinding wordt gemaakt dient te bezitten over de publieke sleutel (id_rsa.pub). Om de sleutel bekend te maken aan een externe machine, om hiermee verbinding te kunnen maken zonder het invoeren van een wachtwoord, dienen we deze publieke sleutel toe te voegen aan het bestand ".ssh/authorized_keys".

Eerst gaan we de map ".ssh" aanmaken op de externe machine, waarin het bestand "authorized_keys" hoort te staan. We kunnen dit doen op de externe machine zelf, of via de machine waarvandaan we een verbinding willen opzetten. Voor deze laatste optie gebruiken we het volgende commando:

ssh user@host mkdir -p ~/.ssh

Indien de map .ssh nog niet bestaat in de home-directory van de gebruiker, zal deze worden aangemaakt. Nu deze map is aangemaakt (of reeds bestaat) kunnen we de publieke sleutel toevoegen aan het bestand "authorized_keys" in deze map. Met het volgende commando (uitgevoerd vanaf de machine waarvandaan we de verbinding willen opzetten) wordt onze publieke sleutel toegevoegd aan het bestaande bestand of, indien het bestand nog niet bestaat, wordt er een nieuw bestand aangemaakt met onze publieke sleutel in:

cat .ssh/id_rsa.pub | ssh user@host "cat >> ~/.ssh/authorized_keys"

Nu zijn alle stappen voltooid, en zou je zonder problemen een SSH-verbinding moeten kunnen opzetten naar de externe machine middels onderstaand commando. Deze beveiligingssleutel kan ook gebruikt worden voor de overdracht van bestanden middels het commando "scp".

ssh user@host

Categorieën: FreeBSD | Servers
0 reacties | 280 keer bekeken