Sett opp passordløs innlogging til servere via SSH

Sett opp passordløs innlogging til servere via SSH
Som Linux -systemadministrator vil du konfigurere og finpusse mange Linux -servere ofte. Så du må ssh inn i alle disse serverne, for å SSH inn i disse serverne, trenger du også påloggingspassordene for hver av serverne, noe som er veldig usannsynlig å være det samme. Så ting vil bli vanskelig ettersom antall servere du må administrere vokser.

Heldigvis er det en bedre løsning. Du kan fortelle alle serverne du administrerer for å stole på datamaskinen eller den bærbare datamaskinen du bruker for å koble til og konfigurere dem. På denne måten kan du logge på disse serverne uten passord eller med samme passord. I denne metoden trenger du bare å kjenne innloggingspassordet til disse serverne bare en gang. Deretter kan du glemme det så lenge du bruker den samme datamaskinen eller den bærbare datamaskinen for å koble deg til disse serverne.

I denne artikkelen skal jeg vise deg hvordan du konfigurerer passordløs innlogging til servere via SSH. Så la oss komme i gang.

Nettverkstopologi:

Her har jeg 3 servere på mitt lokale nettverk Linuxhint-server1, Linuxhint-server2, Linuxhint-server3. Jeg som Linux -systemadministrator, bruker en bærbar PC Linuxhint-klient som også er på samme nettverk. Så jeg vil konfigurere alle serverne på en måte som jeg kan få tilgang til alle disse serverne fra den bærbare datamaskinen min Linuxhint-klient uten passord. Så la oss se hvordan dette vil bli konfigurert i neste seksjoner.

Genererer SSH -nøkler på klienten:

Den viktigste ideen her er at du genererer en SSH -tast på datamaskinen eller den bærbare datamaskinen du vil få tilgang til alle serverne. Last deretter opp SSH -tasten til serverne fra datamaskinen eller den bærbare datamaskinen.

For å generere en SSH -tast på datamaskinen eller den bærbare datamaskinen du vil koble til serverne fra, kjør følgende kommando:

$ SSH-KeenGen

Nå, trykk å fortsette.

Nå kan du angi et passord for SSH -tasten. Det er valgfritt. Enten du setter opp et passord for SSH -tasten eller ikke, avhenger av hvordan du vil konfigurere tilgang til serverne. Hvis du ikke angir et passord for SSH -tasten her, trenger du ikke noe passord til SSH i serverne. Hvis du angir et passord her, må du oppgi det samme passordet hver gang du kobler til noen av serverne. Så det er opp til deg. Jeg vil ikke angi et passord for SSH -tasten i denne artikkelen.

Hvis du vil sette opp et passord, er det bare å skrive inn passordet og trykk . Ellers la det være tomt og trykk .

Hvis du har angitt et passord tidligere, er det bare å skrive inn samme passord igjen og trykk . Ellers bare trykk uten å skrive inn noe.

SSH -tasten skal genereres.

Som standard, den SSH-KeenGen genererer en RSA -nøkkel for lengde 2048 biter. Men hvis du vil endre nøkkeltypen og lengden, kan du bruke -t- og -b -alternativene til SSH-KeenGen følgende:

$ SSH -KEYGEN -t KEY_TYPE -B BIT_LENGTH

For øyeblikket støttet Key_type er RSA, DSA, ECDSA, og ED25519 og bit_length kan være 2048, 4096 og så videre.

Last opp SSH -tast til serverne:

Nå må du laste opp SSH -tasten du nettopp genererte på datamaskinen eller den bærbare datamaskinen til serverne. For det må du ha SSH-serverprogramvare (OpenSSH-Server) installert på hver av serverne og må kunne logge inn på serverne via SSH.

Å logge inn på Linuxhint-server1 Via SSH trenger du IP -adressen til Linuxhint-server1 server. For å gjøre det, kjør følgende kommando på Linuxhint-server1 server.

$ ip a

Som du kan se, IP -adressen til Linuxhint-server1 er 192.168.21.203.

Nå, fra Linuxhint-klient, Last opp SSH -tasten til Linuxhint-server1 følgende:

$ SSH-Copy-Id [email protected]

Nå, skriv inn ja og trykk .

Skriv inn påloggingspassordet til Linuxhint-server1 server og trykk .

SSH -tasten skal lastes opp til serveren Linuxhint-server1.

På samme måte, laste opp SSH -tasten til Linuxhint-server2 også.

$ SSH-Copy-Id [email protected]

Last opp SSH -tasten til Linuxhint-server3 også.

$ SSH-Copy-Id [email protected]

SSH til servere uten passord:

Nå skal du kunne få tilgang til alle serverne via SSH uten passord.

La oss prøve å få tilgang til serveren Linuxhint-server1:

$ ssh [email protected]

Som du ser, ba det meg ikke om et passord. I stedet ble jeg logget inn direkte på konsollen av Linuxhint-server1.

Jeg kan også logge på Linuxhint-server2 server uten passord som du kan se på skjermbildet nedenfor.

$ ssh [email protected]

Som du kan se, kan jeg også ssh inn i Linuxhint-server3 server også. Flott!

Så det er slik du konfigurerer passordløs innlogging til Linux -servere via SSH. Takk for at du leste denne artikkelen.