ssh

Ställ in lösenordsfri inloggning på servrar via SSH

Ställ in lösenordsfri inloggning på servrar via SSH
Som Linux-systemadministratör kommer du att konfigurera och justera många Linux-servrar ofta. Så du måste SSH till alla dessa servrar, för att SSH till dessa servrar behöver du också inloggningslösenorden för var och en av servrarna, vilket sannolikt inte är detsamma. Så det blir svårt eftersom antalet servrar du måste administrera växer.

Lyckligtvis finns det en bättre lösning. Du kan berätta för alla servrar som du administrerar att de litar på datorn eller den bärbara datorn som du använder för att ansluta och konfigurera dem. På så sätt kan du logga in på dessa servrar utan något lösenord eller med samma lösenord. I den här metoden behöver du bara känna till inloggningslösenordet för dessa servrar bara en gång. Sedan kan du glömma bort det så länge du använder samma dator eller bärbar dator för att ansluta till dessa servrar.

I den här artikeln ska jag visa dig hur du ställer in lösenordsfri inloggning på servrar via SSH. Så, låt oss komma igång.

Nätverks topologi:

Här har jag 3 servrar i mitt lokala nätverk linuxhint-server1, linuxhint-server2, linuxhint-server3. Jag som Linux-systemadministratör använder en bärbar dator linuxhint-klient som också finns i samma nätverk. Så jag vill konfigurera alla servrar på ett sätt så att jag kan komma åt alla dessa servrar från min bärbara dator linuxhint-klient utan något lösenord. Så, låt oss se hur detta kommer att konfigureras i nästa avsnitt.

Generera SSH-nycklar på klienten:

Nyckeltanken här är att du genererar en SSH-nyckel på din dator eller bärbara dator som du vill komma åt alla servrar från. Ladda sedan upp SSH-nyckeln till servrarna från din dator eller bärbara dator.

För att skapa en SSH-nyckel på den dator eller bärbara dator som du vill ansluta till servrarna, kör du följande kommando:

$ ssh-keygen

Nu, tryck att fortsätta.

Nu kan du ställa in ett lösenord för din SSH-nyckel. Det är valfritt. Oavsett om du ställer in ett lösenord för din SSH-nyckel eller inte beror på hur du vill konfigurera åtkomst till servrarna. Om du inte ställer in ett lösenord för SSH-nyckeln här behöver du inget lösenord för att SSH till servrarna. Om du anger ett lösenord här måste du ange samma lösenord varje gång du ansluter till någon av servrarna. Så det är upp till dig. Jag kommer inte att ställa in ett lösenord för SSH-nyckeln i den här artikeln.

Om du vill ställa in ett lösenord, skriv bara in lösenordet och tryck på . Låt det annars vara tomt och tryck .

Om du har ställt in ett lösenord tidigare skriver du bara in samma lösenord igen och trycker på . Annars är det bara att trycka på utan att skriva in något.

SSH-nyckeln ska genereras.

Som standard är ssh-keygen genererar en RSA-nyckel med längden 2048 bitar. Men om du vill ändra nyckeltyp och längd kan du använda alternativen -t och -b för ssh-keygen som följer:

$ ssh-keygen -t key_type -b bit_length

För närvarande stöds Nyckeltyp är rsa, dsa, ecdsa, och ed25519 och den bitlängd kan vara 2048, 4096 och så vidare.

Ladda upp SSH-nyckel till servrarna:

Nu måste du ladda upp SSH-nyckeln som du just skapade på din dator eller bärbara dator till servrarna. För det måste du ha SSH-serverprogramvara (openssh-server) installerad på var och en av servrarna och måste kunna logga in på servrarna via SSH.

För att logga in på linuxhint-server1 via SSH behöver du IP-adressen till linuxhint-server1 server. För att göra det, kör följande kommando på linuxhint-server1 server.

$ ip a

Som du kan se IP-adressen till linuxhint-server1 är 192.168.21.203.

Nu, från linuxhint-klient, ladda upp SSH-nyckeln till linuxhint-server1 som följer:

$ ssh-copy-id shovon @ 192.168.21.203

Skriv nu in ja och tryck .

Skriv nu inloggningslösenordet för linuxhint-server1 och tryck på .

SSH-nyckeln ska laddas upp till servern linuxhint-server1.

På samma sätt laddar du upp SSH-nyckeln till linuxhint-server2 också.

$ ssh-copy-id shovon @ 192.168.21.133

Ladda upp SSH-nyckeln till linuxhint-server3 också.

$ ssh-copy-id shovon @ 192.168.21.201

SSH till servrar utan lösenord:

Nu ska du kunna komma åt alla servrar via SSH utan något lösenord.

Låt oss försöka komma åt servern linuxhint-server1:

$ ssh shovon @ 192.168.21.203

Som du ser uppmanade det mig inte om ett lösenord. Istället var jag inloggad direkt på konsolen på linuxhint-server1.

Jag kan också logga in på linuxhint-server2 server utan något lösenord som du kan se på skärmdumpen nedan.

$ ssh shovon @ 192.168.21.133

Som du kan se kan jag också SSH in i linuxhint-server3 server också. Bra!

Så det är så du konfigurerar lösenfri inloggning till Linux-servrar via SSH. Tack för att du läste den här artikeln.

Hur man visar FPS-räknare i Linux-spel
Linux-spel fick ett stort tryck när Valve tillkännagav Linux-stöd för Steam-klient och deras spel 2012. Sedan dess har många AAA- och indiespel tagit ...
Hur man laddar ner och spelar Sid Meier's Civilization VI på Linux
Introduktion till spelet Civilization 6 är ett modernt intag av det klassiska konceptet som introducerades i serien Age of Empires-spel. Idén var gans...
Hur man installerar och spelar Doom på Linux
Introduktion till Doom Doom-serien har sitt ursprung på 90-talet efter att den ursprungliga Doom släpptes. Det blev en omedelbar hit och från den tide...