GNU/Linux >> Linux Esercitazione >  >> Rocky Linux

Come configurare l'accesso senza password SSH in Rocky Linux

SSH le chiavi sono chiavi crittografiche utilizzate per l'autenticazione e la protezione del traffico o della comunicazione tra due server o sistemi. Forniscono un metodo di autenticazione più sicuro rispetto alla tradizionale autenticazione tramite password, soggetta ad attacchi di forza bruta.

In questo tutorial, ti illustreremo come configurare le chiavi SSH su Rocky Linux .

Crea coppia di chiavi RSA SSH in Rocky Linux

Per iniziare a creare un RSA coppia di chiavi sul nostro sistema locale eseguire il seguente comando:

$ ssh-keygen
OR
$ ssh-keygen -t rsa 

Per impostazione predefinita, viene creata una RSA a 2048 bit coppia di chiavi considerata sufficientemente sicura da crittografare il traffico tra il client e l'host remoto.

Facoltativamente, puoi creare un 4096 bit coppia di chiavi più grande e più sicura passando il -b opzione come segue:

$ ssh-keygen -b 4096

Dopo aver eseguito ssh-keygen comando, seguirà una serie di prompt. Ti verrà prima richiesto di fornire il file in cui verranno salvate le chiavi. Per impostazione predefinita, le chiavi vengono salvate in ~/.ssh directory nella directory home. Puoi definire il tuo file personalizzato, ma in questa illustrazione andremo con le impostazioni predefinite

Quindi, premi INVIO per salvare le chiavi nel ~/.ssh directory nella tua directory home.

Se le chiavi SSH esistono già, verrà visualizzato il seguente messaggio e verrà richiesto di sovrascriverlo. Fai attenzione qui. La sovrascrittura delle chiavi significa che l'autenticazione non sarà possibile utilizzando le chiavi precedenti. Selezionando 'Sì' distrugge le chiavi correnti e ne genera di nuove.

Successivamente, ti verrà richiesta una passphrase. Questo è un passaggio facoltativo e fornisce un ulteriore livello di protezione per impedire agli utenti non autorizzati di utilizzare le chiavi per l'autenticazione. Tuttavia, puoi lasciare vuoto questo campo se la tua intenzione è di configurare l'autenticazione SSH senza password tra il tuo sistema locale e altri host remoti.

Per ora, lo lasceremo vuoto e premere INVIO .

Infine, la coppia di chiavi SSH (pubblica e privato chiavi) verranno salvati sul sistema locale nel percorso specificato. Questo è l'output generato dopo l'esecuzione del comando riuscita.

Con le opzioni predefinite, SSH le chiavi vengono salvate nel ~/.ssh directory all'interno della tua directory home. Per confermare, esegui il comando:

$ ls -la ~/.ssh
  • L'id_rsa è la chiave privata e dovrebbe essere mantenuta segreta e confidenziale. La divulgazione può portare a una grave violazione del tuo server remoto.
  • Il id_rsa.pub è la chiave pubblica e viene salvata sull'host remoto a cui vuoi connetterti.

Con SSH chiavi create con successo, il passaggio successivo sarà salvare il Pubblico chiave per il sistema remoto pronto per l'autenticazione.

Copia la chiave pubblica SSH su un server Linux remoto

L'ssh-copy-id Il comando fornisce un modo semplice e conveniente per copiare la chiave SSH pubblica su un host remoto. Richiede la seguente sintassi:

$ ssh-copy-id user@remote-host-ip-address

Abbiamo un sistema remoto con un utente normale chiamato bob già configurato. Per copiare la chiave SSH pubblica, esegui il comando:

$ ssh-copy-id [email protected]

Se ti connetti all'host per la prima volta, vedrai il seguente output. Per procedere, digita ‘yes’ e premi INVIO per procedere.

Il comando sonda il tuo sistema locale per la chiave pubblica id_rsa.pub e una volta stabilita la sua presenza, ti chiede la password dell'utente remoto.

Digita la password e premi INVIO . La chiave pubblica viene copiata sull'host remoto in ~/.ssh/authorized_keys file. Ne parleremo più avanti.

Sul tuo sistema locale, il ~/.ssh/known_hosts viene creato il file. Questo è un file che contiene le impronte SSH per gli host remoti a cui ti sei connesso.

Per visualizzare il file è sufficiente eseguire il comando:

$ cat ~/.ssh/known_hosts

Connessione a Linux remoto senza password

A questo punto, dovresti essere in grado di accedere all'host remoto senza una password. Per fare un tentativo, prova ad accedere normalmente come faresti.

$ ssh [email protected]

Questa volta verrai immediatamente rilasciato nella shell dell'host remoto.

Come accennato in precedenza, la chiave pubblica viene salvata nelle authorized_keys file sull'host remoto. Puoi confermarlo come mostrato.

$ ls -la ~/.ssh/

Per visualizzare il file, usa il comando cat come segue.

$ cat ~/.ssh/authorized_keys 

Disabilita l'autenticazione tramite password SSH

Il SSH l'autenticazione con chiave pubblica è stata impostata correttamente. Tuttavia, l'autenticazione della password è ancora attiva e questo rende il tuo host remoto suscettibile agli attacchi di forza bruta.

Pertanto, si consiglia vivamente di disabilitare l'autenticazione della password. Ora accedi nuovamente all'host remoto utilizzando l'utente root o sudo. Quindi apri sshd_config file di configurazione.

$ sudo vim /etc/ssh/sshd_config

Scorri verso il basso e individua PasswordAuthentication direttiva. Se è stato commentato, decommentalo e impostalo su 'no' .

PasswordAuthentication no

Salva le modifiche ed esci dal file.

Per applicare le modifiche apportate, riavvia sshd demone come mostrato.

$ sudo systemctl restart sshd

A questo punto, l'autenticazione della password SSH è stata disabilitata sul server remoto e l'unico modo possibile per accedere al server remoto è tramite l'autenticazione a chiave pubblica.

Abbiamo configurato correttamente SSH autenticazione basata su chiave sull'host remoto che consente di accedere senza password. Questo è il modo più sicuro per accedere a host remoti a condizione che la chiave privata rimanga confidenziale e segreta.


Rocky Linux
  1. Come impostare un registro Docker privato su Rocky Linux 8

  2. Come configurare l'accesso SSH senza password

  3. Come configurare SSH senza password su Linux

  4. Come configurare l'accesso SSH senza password in Linux

  5. Come impostare le chiavi SSH per l'accesso SSH "chiave pubblica/privata" su Linux

Come installare Rocky Linux 8.4

Come impostare l'autenticazione a più fattori per SSH in Linux

Come disabilitare l'accesso SSH a un utente specifico in Linux

Come configurare l'accesso senza password SSH in AlmaLinux

Come abilitare il servizio SSH su Rocky Linux 8 / CentOS 8

Come configurare le chiavi SSH su Debian 11 Linux