Forutsetninger
SSH -server er ikke installert på Ubuntu som standard. Du må installere OpenSSH -pakken som vil fungere som en SSH -server før du starter denne opplæringen. Kjør følgende kommando for å installere Openssh -serveren hvis den ikke er installert i systemet før.
$ sudo apt install openssh-serverGenerere en SSH -tast
Generer SSH -nøkkelparene for å utføre kommandoene i den eksterne serveren. Kjør følgende kommando for å opprette den offentlige nøkkelen og den private nøkkelen. Den private nøkkelen vil bli lagret i den eksterne serveren, og de offentlige nøklene vil bli lagret i klienten sikkert.
$ SSH -KeyGen -t RSAEtter å ha utført kommandoen ovenfor, vil den spørre filnavnet hvor nøkkelen blir lagret. trykk Tast inn nøkkelen for å holde standardfilnavnet på den offentlige nøkkelen som er id_rsa.pub. Deretter vil det be om passordet for å logge inn. Igjen, trykk på Tast inn Nøkkel to ganger hvis du vil oppbevare det tomme passordet. Følgende lignende utgang vises etter å ha generert nøklene.
Lag filen Autorized_Keys
id_rsa.Pubfilen inneholder den offentlige nøkkelen til SSH -tilkoblingen som er lagret i ~/.SSH/ mappe av den eksterne verten. Klientmaskinen vil også kreve at den offentlige nøkkelen kobles til den eksterne verten som er kopiert i neste del av opplæringen. Du må opprette filen som heter autoriserte_keys i ~//.SSH -mappen til den eksterne verten som vil inneholde den offentlige nøkkelen. Kjør følgende kommando for å flytte ID_RSA.pubfil til ~/.ssh/autorisert_keys -fil.
$ mv ~/.SSH/ID_RSA.pub ~/.SSH/Authorised_KeysIngen feil vises hvis filen flyttes ordentlig, som følgende bilde.
Endre konfigurasjonsfilen
Du må angi noen konfigurasjonsparametere i servermaskinen for å lage SSH -tilkoblingen uten passord. Kjør følgende kommando for å åpne SSHD_CONFIG -filen ved å bruke Nano Editor for å angi de nødvendige parameterverdiene.
$ sudo nano/etc/ssh/sshd_configAngi verdien av passordauthentication til nei for å deaktivere alternativet for tekstpassord for SSH -tilkoblingen.
PasswordAuthentication nr
Lagre og lukk filen. Kjør følgende kommando for å starte SSH -tjenesten på nytt.
$ sudo SystemCTL Restart SSHKjør følgende kommando for å angi tillatelsesbiter for autorisert_keys -filen for å forhindre uautorisert tilgang til denne filen.
$ chmod 600 ~/.SSH/Authorised_KeysKopier den offentlige nøkkelen i klientmaskinen
Logg deg på klientmaskinen der du vil utføre SSH -kommando for å lage en SSH -forbindelse med den eksterne verten. Her har to brukerkontoer av Ubuntu blitt brukt til å sjekke SSH -tilkoblingen på den lokale serveren. En brukerkonto har blitt brukt som klient, og en annen brukerkonto har blitt brukt som server i denne opplæringen.
Kjør følgende kommando for å opprette en mappe som heter ~/.SSH i klientmaskinen hvis den ikke eksisterer.
$ mkdir ~/.sshKjør følgende kommando for å kopiere den offentlige nøkkelen fra den eksterne verten til ~/.SSH -mappe av klienten.
$ scp fahmida@fahmida-virtualbox:/home/fahmida/.ssh/id_rsa ~/.ssh/Du må oppgi passordet til brukernavnet til den eksterne verten for å kopiere den offentlige nøkkelen til klientmaskinen. Du får følgende utdata hvis filen er kopiert riktig. Klientmaskinen er nå klar til å lage forbindelsen med servermaskinen ved hjelp av SSH -tjenesten.
Pålogging til servermaskin ved hjelp av SSH uten passord
Nå eksisterer den offentlige nøkkelen i både klient- og servermaskiner. Når klientmaskinen sender tilkoblingsforespørselen til servermaskinen ved hjelp av SSH -kommandoen, vil serveren matche klientens offentlige nøkkel med serverens offentlige nøkkel. Hvis kampene blir funnet, vil tilkoblingen bli opprettet fra klienten til serveren. Du kan koble til serveren eller den eksterne verten ved å bruke vertsnavnet eller IP -adressen. Den lokale serveren har brukt denne opplæringen for å vise bruken av autoriserte_keys for å etablere SSH -tilkoblingen fra klientmaskinen til servermaskinen. En konto har blitt brukt som en servermaskin der OpenSSH -serveren er installert, og en annen konto har blitt brukt som en klientmaskin her. Kjør følgende kommando fra klientmaskinen for å etablere en forbindelse med servermaskinen.
$ ssh fahmida@fahmida-virtualboxFølgende utgang vises etter å ha utført kommandoen ovenfor. Utgangen viser at brukernavnet til klientmaskinen er 'Yesmin.'Brukernavnet til servermaskinen er' Fahmida.'SSH -forbindelsen er etablert riktig fordi brukernavnet har endret seg til' Fahmida 'fra' Yesmin.'Nå kan innholdet i servermaskinen få tilgang til enkelt. Hvis brukeren utfører noen kommando nå, vil utdata bli generert basert på servermaskinen.
Konklusjon
Bruken av autoriserte_keys for å etablere SSH -tilkoblingen er blitt forklart i denne opplæringen ved å bruke localhost. Du kan følge den samme prosessen for å lage SSH -tilkoblingen for den eksterne verten. Du kan også bruke SSH-Copy-ID-kommandoen til å lage en SSH-forbindelse med serveren som vises i en annen opplæring.