GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come approvare computer specifici per Ssh in una macchina con l'autenticazione della password disabilitata?

Le istruzioni in help.ubuntu.com/community/SSH/OpenSSH/Configuring consigliano di disabilitare l'autenticazione della password in modo che "sarà possibile connettersi solo da computer che hai specificamente approvato". Ma non dicono come approvare specificamente un computer. Come faccio?

Risposta accettata:

Su ogni utente a cui vuoi accedere al server, esegui in un terminale:

ssh-keygen
ssh-copy-id <username>@<serverIPorDNSname>

Ti chiederà dove salvarlo, l'impostazione predefinita va bene. Ti chiederà di inserire una passphrase. Questo serve per crittografare la chiave nel caso in cui il computer venga rubato o compromesso. Se non si desidera una passphrase, lasciare vuote entrambe le richieste di passphrase.

Il primo comando crea una chiave ssh per l'utente corrente su cui viene eseguito. Il secondo comando ssh è nel server e aggiunge la chiave dell'utente corrente all'elenco del server di chi è autorizzato ad accedere. Poiché ssh-copy-id utilizza ssh, dovrai farlo prima di disabilitare gli accessi con password.

Le chiavi SSH sono due metà corrispondenti. Una metà viene raccontata a tutti, l'altra viene tenuta segreta. Utilizzando un algoritmo matematico, la metà pubblica può essere utilizzata per decrittografare i dati crittografati con la chiave privata. Se i dati vengono decodificati correttamente con la chiave pubblica, sai senza ombra di dubbio che è stata la metà privata della chiave a crittografarli. Quindi, quando accedi con una chiave ssh, il client invia un messaggio (crittografato utilizzando la chiave privata) che in pratica dice "fammi entrare". Il server verifica utilizzando la chiave pubblica e se la chiave pubblica è nell'elenco dei computer consentiti l'accesso è riuscito.

ssh-copy-id sta (usando ssh) copiando la metà pubblica nell'elenco dei server di quali chiavi possono accedere (questo elenco è archiviato in /home//.ssh/authorized_keys2, o nel caso di root in /root/.ssh/chiavi_autorizzate2). Se hai già disabilitato l'autenticazione della password, puoi comunque aggiungere un computer. Devi solo copiare la chiave pubblica (in /home/username/.ssh/id_rsa.pub su un computer client) su qualcosa come una chiavetta USB e quindi aggiungere il contenuto di id_rsa.pub alla fine di /home//.ssh/authorized_keys2 sul server. (Puoi farlo eseguendo comandi come cat /media/USB/stick/path/to/id_rsa.pub >>/home/<username>/.ssh/authorized_keys2 sul server.)

Correlati:il touchpad ha smesso improvvisamente di funzionare?
Ubuntu
  1. Accesso SSH al server RHEL 7 senza password

  2. Come utilizzare le chiavi SSH con Plesk

  3. SSHPass:come eseguire SSH in un server utilizzando uno script senza password (in modo non interattivo)

  4. Come connettersi al server ssh con plink e cmd e chiave pubblica

  5. Come installare il server SSH su Ubuntu/Debian con OpenSSH

Come configurare l'autenticazione a due fattori SSH su Ubuntu 16.04 con Google Authenticator

Come impostare l'autenticazione basata su chiave Ssh per Github utilizzando il file ~/.ssh/config?

Come configurare la chiave SSH su un server Plesk

Come aggiungere la chiave pubblica SSH al server

Come impostare l'autenticazione della password con Apache su Ubuntu 18.04

Come proteggere SSH con Fail2Ban