Configurazione del client OpenSSH

Installare i pacchetti client OpenSSH e gestire i file di configurazione SSH per utente.

Per configurare OpenSSH sul client, sono necessari i pacchetti openssh e openssh-clients.

Installazione dei pacchetti client OpenSSH

Installare i pacchetti client OpenSSH se non sono già presenti.

Un'installazione predefinita di Oracle Linux include sia i pacchetti openssh che openssh-clients. Se i pacchetti non sono installati, eseguire il comando seguente:

sudo dnf install openssh openssh-clients

Configurazione dei file di configurazione del client OpenSSH

Esaminare i file delle chiavi in $HOME/.ssh in cui sono memorizzate le impostazioni SSH lato client.

Un utente configurato per l'autenticazione basata su chiavi SSH su un sistema client in genere dispone dei seguenti file di configurazione nella directory $HOME/.ssh:

File di chiavi private e pubbliche SSH2

Per impostazione predefinita, le chiavi private e pubbliche dell'utente, create con la utility ssh-keygen, sono denominate come indicato di seguito.

  • id_rsa e id_rsa.pub su Oracle Linux 8 e 9.

  • id_ed25519 e id_ed25519.pub su Oracle Linux 10.

I nomi di file predefiniti nell'elenco precedente riflettono l'algoritmo (rsa o ed25519) utilizzato per generare le chiavi.

È possibile memorizzare diverse coppie di chiavi nella directory $HOME/.ssh da utilizzare su connessioni diverse.

Per ulteriori informazioni, vedere la pagina del manuale ssh-keygen(1).

ATTENZIONE

I file di chiavi private devono essere leggibili e scrivibili solo dal proprietario e inaccessibili ad altri utenti.

file known_hosts

Contiene le chiavi host pubbliche ottenute da OpenSSH dai server SSH. OpenSSH aggiunge una voce per ogni nuovo server a cui un utente si connette.

file config

Contiene le impostazioni di configurazione del client.

ATTENZIONE

Assicurarsi che il file config sia leggibile e scrivibile solo dall'utente e non sia accessibile ad altri utenti.

Per ulteriori informazioni, vedere le pagine del manuale ssh(1) e ssh-keygen(1).

Convalida delle autorizzazioni di configurazione

Impostare e verificare le autorizzazioni sicure per i file e le directory del client SSH.

OpenSSH applica autorizzazioni rigorose alla directory $HOME/.ssh e ai file memorizzati in questa directory. Se le autorizzazioni nelle directory su entrambi i lati della connessione sono errate, OpenSSH blocca la connessione e restituisce un messaggio Permission denied.

Attenersi alla procedura riportata di seguito per impostare le autorizzazioni consigliate per la directory $HOME/.ssh e il relativo contenuto.

  1. Impostare le autorizzazioni per la directory e il file come indicato di seguito. Alcuni di questi file potrebbero non essere presenti sul sistema in cui vengono eseguiti i seguenti comandi:

    chmod 700 $HOME/.ssh                  # The user .ssh directory.
    chmod 600 $HOME/.ssh/id_sshkey      # A user's private key. Typical values for id_sshkey are id_rsa or id_ed25519. 
    chmod 644 $HOME/.ssh/id_sshkey.pub  # A user's public key. Typical values for id_sshkey.pub are id_rsa.pub or id_ed25519.pub.
    chmod 600 $HOME/.ssh/config           # Customized configuration entries for the SSH client.
    chmod 600 $HOME/.ssh/authorized_keys  # A user's authorized public key entries to allow login.
    chmod 644 $HOME/.ssh/known_hosts      # A user's known hosts entries for system fingerprints.
    chown -R $USER:$USER $HOME/.ssh       # Recursively set ownership of all .ssh files.
  2. Verificare che le autorizzazioni del file siano corrette.

    ls -al .ssh
    drwx------. 2 user group     5 Jun 12   08:33 .
    drwx------. 5 user group     9 Jun 12   08:32 ..
    -rw-------. 1 user group   397 Jun 12   08:33 authorized_keys
    -rw-------. 1 user group  2283 Nov 22 13:22 config
    -rw-------. 1 user group   963 Aug 22 09:27 id_sshkey
    -rw-r--r--. 1 user group   221 Aug 22 09:27 id_sshkey.pub
    -rw-r--r--. 1 user group 85531 Nov  9 10:01 known_hosts
    Nota

    Nell'esempio di output precedente, il segnaposto id_sshkey ha i seguenti valori predefiniti sulle istanze Oracle Linux:

    • id_rsa sulle istanze di Oracle Linux 8 e Oracle Linux 9.

    • id_ed25519 sulle istanze di Oracle Linux 10.