Cum se folosește ssh-keygen pentru a genera o cheie SSH

How Use Ssh Keygen Generate An Ssh Key



SSH sau Secure Shell este un protocol criptat util pentru securizarea conexiunilor între client și server pentru diferite sarcini administrative. Suportă diferite tipuri de sisteme de autentificare. Autentificarea bazată pe cheie publică și autentificarea bazată pe parolă sunt utilizate în cea mai mare parte. Autentificarea bazată pe cheie este mai sigură decât autentificarea bazată pe parolă. Perechile de chei de autentificare pentru SSH sunt generate de instrumentul ssh-keygen care poate fi utilizat în diferite scopuri, cum ar fi autentificarea gazdei, automatizarea autentificării etc. A fost prezentat modul în care acest instrument poate fi utilizat în Ubuntu.

Sintaxă:

Sintaxa acestei comenzi a fost prezentată mai jos. Acesta acceptă multe opțiuni pentru generarea perechilor de chei de autentificare care au fost descrise mai târziu.







ssh-keygen [-q] [-b biți] [-Cum e] [-f output_keyfile] [-formatul m]

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

[-N expresie_pass_nouă] [-O opțiune] [-w furnizor]

Diferite opțiuni ale ssh-keygen:

Scopurile utilizării diferitelor tipuri de opțiuni ssh-keygen sunt explicate mai jos.



Opțiune Scop
-LA Acesta generează cheile gazdă cu calea implicită a fișierului de chei, fraza de acces goală, biții impliciți pentru tipul de cheie și comentariul.
-b biți Este folosit pentru a defini numărul de biți din cheia care va fi creată.
-Cum e Este folosit pentru a defini noul comentariu.
-c Se folosește pentru a solicita modificarea comentariului fișierelor cu chei publice și private.
-E amprentă_hash Este folosit pentru a defini algoritmul hash care va fi utilizat pentru afișarea amprentelor digitale.
-Și Se folosește pentru a citi fișierul cu cheie publică sau privată și a imprima pe stdout.
-F nume gazdă | [nume gazdă]: port Este folosit pentru a căuta numele de gazdă particular cu numărul de port opțional în fișierul known_hosts.
-f nume de fișier Este folosit pentru a defini numele fișierului fișierului cheie.
-H Este folosit pentru a hash un fișier known_hosts. Acesta va înlocui toate numele de gazdă și adresele cu reprezentările hash din fișierul specificat. Conținutul original va fi mutat într-un fișier cu sufixul .old.
-i Este folosit pentru a citi un fișier de chei privat (sau public) necriptat.
-LA Este folosit pentru a imprima conținutul unuia sau mai multor certificate.
-la Este folosit pentru a arăta amprenta unui fișier specificat cu cheie publică.
-N expresie_pass_nouă Este folosit pentru a furniza noua expresie de acces.
-Fraza de acces P Este folosit pentru a furniza vechea expresie de acces.
-t dsa | ecdsa | ecdsa-sk | ed25519 | ed25519-sk | rsa Este folosit pentru a defini tipul de cheie care va fi creat.

Creați chei folosind ssh-keygen:

Puteți crea perechi de chei SSH executând ssh-keygen cu opțiuni sau fără nicio opțiune. Diferite moduri de a crea perechile de chei SSH au fost prezentate în această parte a acestui tutorial. Trebuie să vă conectați la computerul server pe care OpenSSH a instalat-o pentru a crea cheile



Generați perechile de chei fără nicio opțiune:

Următoarea comandă va crea perechi de chei fără a utiliza nicio opțiune.





$ssh-keygen

După executarea comenzii de mai sus, puteți furniza numele fișierului unde va fi salvată cheia sau apăsați tasta Enter pentru a salva numele de fișier implicit. Aici a fost apăsată tasta Enter. Apoi, puteți apăsa din nou tasta Enter pentru a seta parola goală sau pentru a seta parola.



Generați perechile de chei cu o singură opțiune:

Următoarea comandă va genera perechile de chei de tip rsa menționate în comandă cu opțiunea -t.

$ssh-keygen -trsa

La fel ca comanda anterioară, puteți furniza numele de fișier sau utilizați numele de fișier implicit pentru stocarea perechilor de chei și setați parola sau parola goală pentru conexiunea SSH.

Generați perechile de chei cu mai multe opțiuni:

Rulați următoarea comandă pentru a genera perechile de chei de tip rsa cu 2000 de biți și valoarea comentariului,[e-mail protejat].

$ssh-keygen -trsa-b 2000 -C ' [e-mail protejat] '

La fel ca comanda anterioară, puteți furniza numele de fișier sau utilizați numele de fișier implicit pentru stocarea perechilor de chei și setați parola sau parola goală pentru conexiunea SSH. Dacă ați generat fișierele cheie înainte de a executa comanda de mai sus, atunci vă va cere să suprascrieți fișierul cheie sau nu. Dacă introduceți „y”, atunci acesta va suprascrie fișierul generat anterior cu noile chei.

Copiați cheia publică pe server:

Rulați următoarea comandă de pe mașina server pentru a adăuga cheia publică pe mașina server. Comanda va copia cheia pe server și o va configura pentru a adăuga cheia în fișierul author_keys pentru a accesa serverul.

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

Următoarea ieșire va apărea dacă cheia publică nu a fost adăugată înainte în computerul server.

Modificați fișierul de configurare al serverului:

Trebuie să activați unele opțiuni în fișierul de configurare al mașinii server dacă doriți să setați autentificarea bazată pe parolă și să permiteți conectarea utilizatorului root la server. Calea fișierului de configurare SSH al serverului este / etc / ssh / sshd_config. Deschideți fișierul în orice editor de text. Rulați următoarea comandă pentru a edita fișierul în editorul nano.

$sudo nano /etc./ssh/sshd_config

Adăugați sau modificați fișierul cu următoarele linii pentru a activa autentificarea bazată pe parolă și setați permisiunea pentru autentificarea utilizatorului root.

Autentificare parolăda

PermitRootLoginda

Salvați și închideți fișierul. Rulați următoarea comandă pentru a reporni serviciul SSH.

$sudosystemctl repornițissh

Autentificare de la clientul SSH:

Conectați-vă la computerul client de unde doriți să vă conectați cu serverul pentru a verifica dacă conexiunea SSH funcționează. Deschideți terminalul și rulați următoarea comandă pentru a adăuga identitatea mașinii server.

$ssh-add

Rulați următoarea comandă ssh pentru a vă conecta la computerul server de la computerul client. Autentificarea parolei și autentificarea root au fost activate în fișierul de configurare SSH al serverului în partea anterioară a acestui tutorial. Deci, utilizatorul trebuie să furnizeze parola root validă a mașinii server pentru a stabili cu succes o conexiune SSH.

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

Următoarea ieșire similară va apărea după stabilirea unei conexiuni SSH la server de la client.

Concluzie:

Utilizarea ssh-keygen pentru a genera perechea de chei SSH în diferite moduri a fost explicată în acest tutorial. Sper că utilizatorul Ubuntu va genera cheile SSH utilizând ssh-keygen pentru stabilirea unei conexiuni SSH după ce a citit acest tutorial.