Sådan bruges ssh-keygen til at generere en SSH-nøgle

How Use Ssh Keygen Generate An Ssh Key



SSH eller Secure Shell er en nyttig krypteret protokol til at sikre forbindelser mellem klienten og serveren til forskellige administrative opgaver. Det understøtter forskellige former for godkendelsessystemer. Offentlig nøglebaseret godkendelse og adgangskodebaseret godkendelse bruges mest. Nøglebaseret godkendelse er mere sikker end adgangskodebaseret godkendelse. Godkendelsesnøglepar til SSH genereres af ssh-keygen-værktøjet, der kan bruges til forskellige formål, såsom autentificering af værten, automatisering af login osv. Hvordan dette værktøj kan bruges i Ubuntu er blevet vist i denne vejledning.

Syntaks:

Syntaksen for denne kommando har givet nedenfor. Det understøtter mange muligheder for at generere godkendelsesnøglepar, der er blevet beskrevet senere.







ssh-keygen [-q] [-b bits] [-Hvordan er det] [-f output_keyfile] [-m format]

[-t dsa|ecdsa|ecdsa-sk|ed25519|ed25519-sk|rsa]

[-N ny_passord] [-O mulighed] [-w udbyder]

Forskellige muligheder for ssh-keygen:

Formålet med at bruge forskellige typer ssh-keygen-muligheder forklares nedenfor.



Mulighed Formål
-TIL Det genererer værtsnøglerne med standardnøglefilsti, tom adgangskode, standardbits til nøgletypen og kommentar.
-b bits Det bruges til at definere antallet af bits i nøglen, der skal oprettes.
-Hvordan er det Den bruges til at definere den nye kommentar.
-c Det bruges til at anmode om ændring af kommentaren fra de offentlige og private nøglefiler.
-E fingeraftryk_hash Det bruges til at definere hash -algoritmen, der skal bruges til at vise fingeraftryk.
-Og Det bruges til at læse den private eller offentlige nøglefil og udskrive til stdout.
-F værtsnavn | [værtsnavn]: port Det bruges til at søge i det særlige værtsnavn med det valgfrie portnummer i filen known_hosts.
-f filnavn Det bruges til at definere filnavnet på nøglefilen.
-H Det bruges til at hash en known_hosts -fil. Det vil erstatte alle værtsnavne og adresser med de hashede repræsentationer i den angivne fil. Det originale indhold flyttes til en fil med suffikset .old.
-jeg Det bruges til at læse en ukrypteret privat (eller offentlig) nøglefil.
-DET Det bruges til at udskrive indholdet af et eller flere certifikater.
-det Det bruges til at vise fingeraftrykket af en bestemt offentlig nøglefil.
-N ny_passord Det bruges til at angive den nye adgangskode.
-P adgangskode Det bruges til at angive den gamle adgangskode.
-t dsa | ecdsa | ecdsa-sk | ed25519 | ed25519-sk | rsa Det bruges til at definere den nøgletype, der skal oprettes.

Opret nøgler ved hjælp af ssh-keygen:

Du kan oprette SSH-nøglepar ved at køre ssh-keygen med optioner eller uden nogen mulighed. Forskellige måder at oprette SSH -nøglepar har vist i denne del af denne vejledning. Du skal logge ind på servermaskinen, hvor OpenSSH har installeret for at oprette nøglerne



Generer nøglepar uden nogen mulighed:

Følgende kommando opretter nøglepar uden at bruge nogen mulighed.





$ssh-keygen

Efter udførelsen af ​​ovenstående kommando kan du angive filnavnet, hvor nøglen skal gemmes, eller trykke på Enter -tasten for at gemme standardfilnavnet. Her er der trykket på Enter -tasten. Dernæst kan du trykke på Enter -tasten igen for at indstille den tomme adgangskode eller indstille adgangskoden.



Generer nøgleparene med en enkelt mulighed:

Den følgende kommando genererer nøgleparene af den rsa -type, der er nævnt i kommandoen med -t -indstillingen.

$ssh-keygen -trsa

Ligesom den forrige kommando kan du angive filnavnet eller bruge standardfilnavnet til lagring af nøgleparene og angive adgangskoden eller den tomme adgangskode til SSH -forbindelsen.

Generer nøgleparene med flere muligheder:

Kør følgende kommando for at generere nøgleparene af rsa -typen med 2000 bits og kommentarværdien,[e -mail beskyttet].

$ssh-keygen -trsa-b 2000 -C ' [email protected] '

Ligesom den forrige kommando kan du angive filnavnet eller bruge standardfilnavnet til lagring af nøgleparene og angive adgangskoden eller den tomme adgangskode til SSH -forbindelsen. Hvis du genererede nøglefilerne, før du udførte ovenstående kommando, vil den bede dig om at overskrive nøglefilen eller ej. Hvis du skriver 'y', overskriver den den tidligere genererede fil med de nye nøgler.

Kopier den offentlige nøgle til serveren:

Kør følgende kommando fra servermaskinen for at tilføje den offentlige nøgle til servermaskinen. Kommandoen kopierer nøglen til serveren og konfigurerer den til at tilføje nøglen til filen autoriseret_nøgle for at få adgang til serveren.

$ssh-copy-id-jeg~/.ssh/id_rsa fahmida@fahmida-VirtualBox

Følgende output vises, hvis den offentlige nøgle ikke blev tilføjet før til servermaskinen.

Rediger serverens konfigurationsfil:

Du skal aktivere nogle muligheder i konfigurationsfilen på servermaskinen, hvis du vil indstille den adgangskodebaserede godkendelse og tillade root-brugerlogin på serveren. Stien til serverens SSH -konfigurationsfil er/etc/ssh/sshd_config. Åbn filen i enhver tekstredigerer. Kør følgende kommando for at redigere filen i nano -editor.

$sudo nano /etc/ssh/sshd_config

Tilføj eller rediger filen med følgende linjer for at aktivere den adgangskodebaserede godkendelse og angive tilladelse til root-brugerlogin.

PasswordAuthenticationJa

PermitRootLoginJa

Gem og luk filen. Kør følgende kommando for at genstarte SSH -tjenesten.

$sudosystemctl genstartssh

Login fra SSH -klienten:

Log ind på klientmaskinen, hvorfra du vil oprette forbindelse til serveren for at kontrollere, om SSH -forbindelsen fungerer. Åbn terminalen, og kør følgende kommando for at tilføje servermaskinens identitet.

$ssh-tilføj

Kør følgende ssh -kommando for at oprette forbindelse til servermaskinen fra klientmaskinen. Adgangskodegodkendelse og root -login er blevet aktiveret i serverens SSH -konfigurationsfil i den foregående del af denne vejledning. Så brugeren skal angive den gyldige root -adgangskode til servermaskinen for at etablere en SSH -forbindelse.

$ssh <tilhref='mailto: [email protected]'>fahmida@10.0.2.15

Følgende lignende output vises efter oprettelse af en SSH -forbindelse til serveren fra klienten.

Konklusion:

Ssh-keygen bruger til at generere SSH nøglepar på forskellige måder er blevet forklaret i denne vejledning. Jeg håber, at Ubuntu-brugeren vil generere SSH-nøglerne ved at bruge ssh-keygen til at etablere en SSH-forbindelse efter at have læst denne vejledning.