SSH o Secure Shell és un protocol xifrat útil per assegurar connexions entre el client i el servidor per a diferents tasques administratives. Admet diversos tipus de sistemes d’autenticació. L’autenticació basada en claus públiques i l’autenticació basada en contrasenyes s’utilitzen principalment. L’autenticació basada en claus és més segura que l’autenticació basada en contrasenyes. Els parells de claus d’autenticació per a SSH són generats per l’eina ssh-keygen que es pot utilitzar per a diferents propòsits, com ara autenticar l’amfitrió, automatitzar l’inici de sessió, etc.
Sintaxi:
A continuació es mostra la sintaxi d'aquesta ordre. Admet moltes opcions per generar parells de claus d’autenticació que s’han descrit més endavant.
ssh-keygen [-q] [-b bits] [-Com és això] [-f fitxer_clau de sortida] [-m format]
[-t dsa|ecdsa|ecdsa-sk|ed25519|ed25519-sk|rsa]
[-N nova frase de contrasenya] [-O opció] [-w proveïdor]
Diferents opcions de ssh-keygen:
A continuació s’expliquen els propòsits d’utilitzar diferents tipus d’opcions ssh-keygen.
Opció | Propòsit |
---|---|
-A | Genera les claus d'amfitrió amb el camí d'accés predeterminat del fitxer de claus, la frase de contrasenya buida, els bits predeterminats per al tipus de clau i el comentari. |
-b bits | S'utilitza per definir el nombre de bits de la clau que es crearà. |
-Com és això | S'utilitza per definir el nou comentari. |
-c | S'utilitza per sol·licitar un canvi de comentari dels fitxers de claus pública i privada. |
-E empremta digital_hash | S'utilitza per definir l'algorisme de hash que s'utilitzarà per mostrar les empremtes digitals. |
-I | S'utilitza per llegir el fitxer de clau privada o pública i imprimir a la versió estàndard. |
-F nom d'amfitrió | [nom d’amfitrió]: port | S'utilitza per cercar el nom d'amfitrió concret amb el número de port opcional al fitxer known_hosts. |
-f nom del fitxer | S'utilitza per definir el nom del fitxer del fitxer clau. |
-H | S'utilitza per hash d'un fitxer known_hosts. Substituirà tots els noms d’amfitrió i adreces per les representacions hash dins del fitxer especificat. El contingut original es mourà a un fitxer amb el sufix .old. |
-i | S'utilitza per llegir un fitxer de clau privada (o pública) sense xifrar. |
-EL | S'utilitza per imprimir el contingut d'un o més certificats. |
-la | S'utilitza per mostrar l'empremta digital d'un fitxer de clau pública especificat. |
-N nova frase de contrasenya | S'utilitza per proporcionar la nova contrasenya. |
-Contrasenya P | S'utilitza per proporcionar la contrasenya antiga. |
-t dsa | ecdsa | ecdsa-sk | ed25519 | ed25519-sk | rsa | S'utilitza per definir el tipus de clau que es crearà. |
Creeu claus amb ssh-keygen:
Podeu crear parells de claus SSH executant ssh-keygen amb opcions o sense cap opció. En aquesta part d’aquest tutorial s’han mostrat diferents maneres de crear els parells de claus SSH. Heu d’iniciar sessió a la màquina servidor on s’ha instal·lat OpenSSH per crear les claus
Genereu els parells de claus sense cap opció:
L'ordre següent crearà parells de claus sense utilitzar cap opció.
$ssh-keygen
Després d’executar l’ordre anterior, podeu proporcionar el nom de fitxer on es desarà la clau o prémer la tecla Retorn per desar el nom de fitxer per defecte. Aquí s’ha premut la tecla Retorn. A continuació, podeu tornar a prémer la tecla Retorn per definir la contrasenya buida o definir la contrasenya.
Genereu els parells de claus amb una sola opció:
L'ordre següent generarà els parells de claus del tipus rsa esmentats a l'ordre amb l'opció -t.
$ssh-keygen -trsaIgual que l'ordre anterior, podeu proporcionar el nom de fitxer o utilitzar el nom de fitxer per defecte per emmagatzemar els parells de claus i establir la contrasenya o la contrasenya buida per a la connexió SSH.
Genereu els parells de claus amb diverses opcions:
Executeu l'ordre següent per generar els parells de claus de tipus rsa amb 2000 bits i el valor del comentari,[correu electrònic protegit].
$ssh-keygen -trsa-b 2000 -C ' [correu electrònic protegit] 'Igual que l'ordre anterior, podeu proporcionar el nom de fitxer o utilitzar el nom de fitxer per defecte per emmagatzemar els parells de claus i establir la contrasenya o la contrasenya buida per a la connexió SSH. Si heu generat els fitxers de claus abans d’executar l’ordre anterior, us demanarà que sobreescriviu el fitxer de claus o no. Si escriviu 'y', sobreescriurà el fitxer generat anteriorment amb les claus noves.
Copieu la clau pública al servidor:
Executeu l'ordre següent des de la màquina servidor per afegir la clau pública a la màquina servidor. L'ordre copiarà la clau al servidor i la configurarà per afegir la clau al fitxer autoritzat_keys per accedir al servidor.
$ssh-copy-id-i~/.ssh/id_rsa fahmida@Fahmida-VirtualBoxLa següent sortida apareixerà si la clau pública no s'ha afegit abans a la màquina del servidor.
Modifiqueu el fitxer de configuració del servidor:
Heu d'activar algunes opcions al fitxer de configuració de la màquina servidor si voleu establir l'autenticació basada en contrasenya i permetre l'accés d'usuari root al servidor. El camí del fitxer de configuració SSH del servidor és / etc / ssh / sshd_config. Obriu el fitxer en qualsevol editor de text. Executeu l'ordre següent per editar el fitxer a nano editor.
$suo nano /etc/ssh/sshd_configAfegiu o modifiqueu el fitxer amb les línies següents per habilitar l'autenticació basada en contrasenya i definir els permisos per a l'inici de sessió d'usuari root.
Autenticació de contrasenyasíPermitRootLoginsí
Deseu i tanqueu el fitxer. Executeu l'ordre següent per reiniciar el servei SSH.
$suoreinici de systemctlsshInici de sessió des del client SSH:
Inicieu la sessió a la màquina client des d'on voleu connectar-vos amb el servidor per comprovar si la connexió SSH funciona. Obriu el terminal i executeu l'ordre següent per afegir la identitat de la màquina servidor.
$ssh-addExecuteu l'ordre ssh següent per connectar-vos amb la màquina servidor des de la màquina client. L'autenticació de contrasenya i l'inici de sessió de root s'han habilitat al fitxer de configuració SSH del servidor a la part anterior d'aquest tutorial. Per tant, l’usuari ha de proporcionar la contrasenya d’arrel vàlida de la màquina servidor per establir correctament una connexió SSH.
$ssh <ahref='mailto: [email protected]'>fahmida@10.0.2.15La següent sortida similar apareixerà després d'establir una connexió SSH al servidor des del client.
Conclusió:
Els ssh-keygen que s’utilitzen per generar parells de claus SSH de diferents maneres s’han explicat en aquest tutorial. Espero que l'usuari d'Ubuntu generi les claus SSH mitjançant ssh-keygen per establir una connexió SSH després de llegir aquest tutorial.