androide

Come configurare l'accesso ssh senza password

Settaggi dell'Home&Life Hub - Zyxel 8825 - parte seconda

Settaggi dell'Home&Life Hub - Zyxel 8825 - parte seconda

Sommario:

Anonim

Secure Shell (SSH) è un protocollo di rete crittografica utilizzato per la connessione sicura tra un client e un server e supporta vari meccanismi di autenticazione. I due meccanismi più popolari sono l'autenticazione basata su password e l'autenticazione basata su chiave pubblica.

In questo tutorial, ti mostreremo come impostare un'autenticazione basata su chiave SSH e come collegarti al tuo server Linux senza inserire una password.

Configurazione dell'accesso SSH senza password

Per impostare un accesso SSH senza password in Linux, tutto ciò che devi fare è generare una chiave di autenticazione pubblica e aggiungerla al file ~/.ssh/authorized_keys host remoti.

I seguenti passaggi descriveranno il processo di configurazione dell'accesso SSH senza password:

  1. Verificare la coppia di chiavi SSH esistente.

    Prima di generare una nuova coppia di chiavi SSH, verificare se sul computer client è già presente una chiave SSH perché non si desidera sovrascrivere le chiavi esistenti.

    Esegui il seguente comando ls per vedere se sono presenti chiavi SSH esistenti:

    ls -al ~/.ssh/id_*.pub

    Se sono presenti chiavi esistenti, è possibile utilizzare quelle e saltare il passaggio successivo o eseguire il backup delle vecchie chiavi e generarne una nuova.

    Genera una nuova coppia di chiavi SSH.

    Il seguente comando genererà una nuova coppia di chiavi SSH a 4096 bit con il tuo indirizzo e-mail come commento:

    ssh-keygen -t rsa -b 4096 -C "[email protected]"

    Premere Enter per accettare il percorso e il nome file predefiniti:

    Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

    Successivamente, lo strumento ssh-keygen ti chiederà di digitare una passphrase sicura. Se vuoi usare la passphrase dipende da te, se scegli di usare la passphrase otterrai un ulteriore livello di sicurezza. Nella maggior parte dei casi, gli sviluppatori e gli amministratori di sistema utilizzano SSH senza passphrase perché sono utili per processi completamente automatizzati. Se non si desidera utilizzare la passphrase, premere Enter

    Enter passphrase (empty for no passphrase):

    L'intera interazione si presenta così:

    Per essere sicuri che vengano generate le chiavi SSH, puoi elencare le tue nuove chiavi pubbliche e private con:

    ls ~/.ssh/id_*

    /home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub

    Copia la chiave pubblica

    Ora che hai generato una coppia di chiavi SSH, per poter accedere al tuo server senza password devi copiare la chiave pubblica sul server che desideri gestire.

    Il modo più semplice per copiare la chiave pubblica sul server è utilizzare un comando chiamato ssh-copy-id . Sul terminale della macchina locale digitare:

    ssh-copy-id remote_username@server_ip_address

    Ti verrà richiesto di inserire la password remote_username :

    remote_username@server_ip_address's password:

    Una volta autenticato l'utente, la chiave pubblica verrà aggiunta al file user_keys dell'utente remoto e la connessione verrà chiusa.

    Se per qualche motivo l'utility ssh-copy-id non è disponibile sul tuo computer locale puoi usare il seguente comando per copiare la chiave pubblica:

    cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

    Accedi al tuo server usando le chiavi SSH

    Dopo aver completato i passaggi precedenti, dovresti essere in grado di accedere al server remoto senza che ti venga richiesta una password.

    Per provarlo basta provare ad accedere al tuo server tramite SSH:

    ssh remote_username@server_ip_address

    Se tutto è andato bene, verrai eseguito l'accesso immediatamente.

Disabilitazione dell'autenticazione password SSH

Per aggiungere un ulteriore livello di sicurezza al server è possibile disabilitare l'autenticazione della password per SSH.

Prima di disabilitare l'autenticazione della password SSH, assicurarsi di poter accedere al server senza password e l'utente con cui si accede dispone dei privilegi sudo.

Le seguenti esercitazioni descrivono come configurare l'accesso sudo:

  1. Accedi al tuo server remoto con le chiavi SSH, sia come utente con privilegi sudo o root:

    ssh sudo_user@server_ip_address

    Apri il file di configurazione SSH /etc/ssh/sshd_config , cerca le seguenti direttive e modifica come segue:

    / Etc / ssh / sshd_config

    PasswordAuthentication no ChallengeResponseAuthentication no UsePAM no

    Al termine, salvare il file e riavviare il servizio SSH.

    Sui server Ubuntu o Debian, eseguire il comando seguente:

    sudo systemctl restart ssh

    Sui server CentOS o Fedora, eseguire il comando seguente:

    sudo systemctl restart sshd

Conclusione

In questo tutorial hai imparato come configurare un'autenticazione basata su chiave SSH, che ti consente di accedere al tuo server remoto senza fornire una password utente. Puoi aggiungere la stessa chiave a più servizi remoti.

Ti abbiamo anche mostrato come disabilitare l'autenticazione con password SSH e aggiungere un ulteriore livello di sicurezza al tuo server.

sicurezza ssh