Hvordan bruke SSH-Copy-ID på Ubuntu

Hvordan bruke SSH-Copy-ID på Ubuntu
Et av de nyttige verktøyene til SSH er SSH-Copy-ID som brukes til å installere SSH -tasten på den eksterne serveren for å logge inn på serveren uten å oppgi passord for påloggingen. Så den enkle påloggings- og automatiserte passordloggingen ved hjelp av SSH kan enkelt implementeres ved å bruke dette verktøyet. Den kopierer de offentlige nøklene til den eksterne vertens ~/.SSH/autorisert_Keys -filen ved å opprette filen og katalogen hvis du krever, men den endrer ikke tillatelse fra eksisterende fil eller mappe. Hvordan SSH-Copy-ID-kommandoen kan brukes til SSH-tilkoblingen er forklart i denne opplæringen.

Forutsetninger:

Før du starter trinnene i denne opplæringen, vil følgende trinn være pålagt å fullføre.

Aktiver SSH -tjenesten på Ubuntu hvis den ikke er aktivert før.
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 RSA

Kjør følgende kommando for å åpne SSHD_CONFIG Fil ved hjelp av Nano Editor for å legge til noen nødvendige konfigurasjoner.

$ sudo nano/etc/ssh/sshd_config

Legg til følgende linjer i filen for å aktivere rotpålogging og passordbasert autentisering.

Passordauthentication Ja
Tillatootlogin Ja

Kjør følgende kommando for å starte SSH -tjenesten på nytt.

$ sudo service ssh omstart

Syntaks:

Syntaksen til SSH-Copy-ID-kommandoen er gitt nedenfor. Det støtter flere alternativer, som blir forklart senere.

SSH-Copy-Id [-lv] [-i Keyfile] [-o alternativ] [-P port] [bruker@] vertsnavn

Ulike alternativer for SSH-Copy-ID-kommando:

Formålene med å bruke forskjellige alternativer for SSH-Copy-ID-kommandoer er beskrevet i denne delen av opplæringen.

Alternativ Hensikt
-Jeg keyfile Den brukes til å kopiere den offentlige nøkkelen som er lagret i en fil. Det kan brukes flere ganger.
-l Den brukes til å kopiere nøklene som for øyeblikket er holdt av SSH-Agent. Den bruker som standard hvis alternativet -i ikke er spesifisert.
-o ssh-alternativ Det brukes til å gi alternativet direkte til SSH. Det kan brukes flere ganger.
-P Port Den brukes til å koble til den spesifiserte porten på den eksterne verten i stedet for standardporten som er 22.
-v Det brukes til å gi verdien av -v til SSH.

Kopier tasten til serveren:

Du må autorisere den offentlige nøkkelen i servermaskinen for å etablere SSH -tilkoblingen uten å bruke noe passord. Etter å ha opprettet den offentlige nøkkelen, kan SSH-Copy-ID-kommandoen legge til nøkkelen som en autorisert nøkkel på servermaskinen.

Kjør følgende kommando fra servermaskinen for å legge til enhver nyopprettet offentlig nøkkel som en autorisert nøkkel på serveren.

$ SSH-Copy-Id Fahmida@Fahmida-VirtualBox

Følgende utdata vises hvis den offentlige nøkkelen allerede eksisterer i den eksterne serveren; Ellers blir nøkkelen lagt til.

Det er nevnt før at -i-alternativet brukes med SSH-Copy-ID-kommandoen for å legge til den offentlige nøkkelen fra filen. Hvis du lagret den nyopprettede offentlige nøkkelen i standardfilen, ville filnavnet være id_rsa.pub. Men du har angitt noe filnavn når du oppretter nøkkelparene, og bruk deretter det filnavnet med -i -alternativet. Jeg har lagret den offentlige nøkkelen i standardfilen.

Kjør følgende kommando fra servermaskinen for å legge til den offentlige tasten til servermaskinen. Kommandoen vil kopiere nøkkelen til serveren og konfigurere den for å legge til nøkkelen til autoriserte_keys fil for å få tilgang til serveren.

$ SSH-Copy-Id -i ~/.ssh/id_rsa fahmida@fahmida-virtualbox

Følgende utdata vises hvis den offentlige nøkkelen ikke legger til i servermaskinen.

Sjekk tilkoblingen:

Etter å ha lagt til nøkkelen til serveren, må du sjekke om klientmaskinen kan koble til serveren. Brukernavnet til servermaskinen er 'Fahmida', og klientmaskinen er 'jamin' her. Så logg inn på klientmaskinen først for å teste tilkoblingen.

Kjør følgende kommando for å legge til identiteten til serveren til klientmaskinen.

$ ssh-add

Kjør følgende SSH -kommando uten noe alternativ for å etablere en forbindelse med servermaskinen. Hvis passordbasert autentisering er aktivert i servermaskinen, må brukeren oppgi et gyldig passord for å etablere en forbindelse med serveren.

$ ssh fahmida@fahmida-virtualbox

Følgende utgang viser at identiteten til serveren er lagt til klientmaskinen. Deretter har passordet til serverens bruker bedt om tilkoblingen fordi den passordbaserte autentiseringen er aktivert i servermaskinen her. Brukernavnet blir endret til 'Fahmida' fra 'Yesmin' i ledeteksten som indikerer at tilkoblingen er etablert riktig etter å ha gitt det gyldige passordet.

Hvis du vil nevne den offentlige nøkkens filnavn med stedet for å etablere forbindelsen med serveren, kan du kjøre følgende SSH -kommando med -i -alternativet. Det vil kreve at hvis du lagrer den offentlige nøkkelen i det brukerdefinerte filnavnet. Jeg har brukt standardfilnavnet på nøkkelgenereringstidspunktet som er ID_RSA.

$ ssh -i ~/.ssh/id_rsa fahmida@fahmida-virtualbox

Det vil be om passordet som før for å etablere forbindelsen med serveren. Utgangen viser at tilkoblingen er etablert riktig, og brukernavnet til ledeteksten har endret seg. Du kan endre serverens konfigurasjonsfil for å deaktivere passordbasert godkjenning hvis du ikke vil oppgi passord når du vil koble til serveren.

Konklusjon:

Bruken av SSH-Copy-ID-kommandoen for å koble til den eksterne verten er beskrevet i denne opplæringen ved å bruke to brukerkontoer av den lokale verten for å hjelpe leserne til å kjenne funksjonen til denne kommandoen riktig.