Heldigvis er der en bedre løsning. Du kan fortælle alle de servere, du administrerer, at de har tillid til computeren eller den bærbare computer, som du bruger til at oprette forbindelse og konfigurere dem. På denne måde kan du logge ind på disse servere uden adgangskode eller med samme adgangskode. I denne metode behøver du kun at kende loginadgangskoden til disse servere kun en gang. Derefter kan du glemme det, så længe du bruger den samme computer eller bærbare computer til at oprette forbindelse til disse servere.
I denne artikel skal jeg vise dig, hvordan du konfigurerer adgangskodeløst login til servere via SSH. Så lad os komme i gang.
Netværkstopologi:
Her har jeg 3 servere på mit lokale netværk linuxhint-server1, linuxhint-server2, linuxhint-server3. Jeg bruger en Linux-systemadministrator linuxhint-klient som også er på det samme netværk. Så jeg vil konfigurere alle serverne på en måde, så jeg kan få adgang til alle disse servere fra min bærbare computer linuxhint-klient uden adgangskode. Så lad os se, hvordan dette vil blive konfigureret i de næste sektioner.
Generering af SSH-nøgler på klienten:
Hovedidéen her er, at du genererer en SSH-nøgle på din computer eller laptop, hvorfra du vil få adgang til alle serverne. Upload derefter SSH-nøglen til serverne fra din computer eller bærbare computer.
For at generere en SSH-nøgle på den computer eller bærbare computer, hvorfra du vil oprette forbindelse til serverne, skal du køre følgende kommando:
$ ssh-keygen
Nu skal du trykke på
Nu kan du indstille en adgangskode til din SSH-nøgle. Det er valgfrit. Uanset om du opretter en adgangskode til din SSH-nøgle eller ej, afhænger det af, hvordan du vil konfigurere adgang til serverne. Hvis du ikke angiver en adgangskode til SSH-nøglen her, behøver du ikke nogen adgangskode til SSH på serverne. Hvis du angiver en adgangskode her, skal du indtaste den samme adgangskode hver gang du opretter forbindelse til en af serverne. Så det er op til dig. Jeg vil ikke indstille en adgangskode til SSH-nøglen i denne artikel.
Hvis du ønsker at oprette en adgangskode, skal du blot indtaste adgangskoden og trykke på
Hvis du har angivet en adgangskode tidligere, skal du bare indtaste den samme adgangskode igen og trykke på
SSH-nøglen skal genereres.
Som standard er ssh-keygen genererer en RSA-nøgle med en længde på 2048 bit. Men hvis du vil ændre nøgletype og længde, kan du bruge -t og -b-indstillingerne til ssh-keygen som følger:
$ ssh-keygen -t key_type -b bit_lengthI øjeblikket understøttes nøgletype er rsa, dsa, ecdsa, og ed25519 og bitlængde måske 2048, 4096 og så videre.
Upload af SSH-nøgle til serverne:
Nu skal du uploade den SSH-nøgle, du lige har genereret på din computer eller bærbare computer til serverne. Til det skal du have installeret SSH-serversoftware (openssh-server) på hver af serverne og skal kunne logge ind på serverne via SSH.
For at logge ind på linuxhint-server1 via SSH skal du bruge IP-adressen til linuxhint-server1 server. For at gøre det skal du køre følgende kommando på linuxhint-server1 server.
$ ip aSom du kan se, er IP-adressen på linuxhint-server1 er 192.168.21.203.
Nu fra linuxhint-klient, uploade SSH-nøglen til linuxhint-server1 som følger:
$ ssh-copy-id shovon @ 192.168.21.203
Indtast nu Ja og tryk på
Indtast nu loginadgangskoden til linuxhint-server1 server og tryk på
SSH-nøglen skal uploades til serveren linuxhint-server1.
På samme måde skal du uploade SSH-nøglen til linuxhint-server2 såvel.
$ ssh-copy-id shovon @ 192.168.21.133
Upload SSH-nøglen til linuxhint-server3 såvel.
$ ssh-copy-id shovon @ 192.168.21.201
SSH til servere uden adgangskode:
Nu skal du være i stand til at få adgang til alle serverne via SSH uden adgangskode.
Lad os prøve at få adgang til serveren linuxhint-server1:
$ ssh shovon @ 192.168.21.203
Som du kan se, bad det mig ikke om en adgangskode. I stedet var jeg logget ind direkte på konsollen af linuxhint-server1.
Jeg kan også logge ind på linuxhint-server2 server uden adgangskode, som du kan se på skærmbilledet nedenfor.
$ ssh shovon @ 192.168.21.133
Som du kan se, kan jeg også SSH ind i linuxhint-server3 server også. Store!
Så det er sådan, du konfigurerer adgangskodeløst login til Linux-servere via SSH. Tak, fordi du læste denne artikel.