Configurazione di SSH

Postato da psegno il 01-09-2007 in: ssh

Questo how-to spiega come configurare un server ssh sotto linux per effettuare connessioni tramite autenticazione basata su chiavi pubbliche, come generare le chiavi con windows e come connettersi utilizzando SSH secure shell e putty

Configurazione del server ssh

Opzioni generali

# L'opzione Port specifica su quale porta il demone ssh è in ascolto. La porta di default è la 22
Port 22

# Specifica l'IP address dell'interfaccia di rete su cui il demone ssh è in ascolto
ListenAddress 0.0.0.0

# Indica il protocollo utilizzato dal server
Protocol 2

# Specifica i bits da usare per le chiavi del server
ServerKeyBits 1024

# Abilita o disabilita il login per root. Si consiglia di disabilitare
PermitRootLogin no

Tipologie di autenticazione

# Autenticazione tramite RSA
RSAAuthentication no

# Autenticazione basata su rhost
RhostsRSAAuthentication no

# Specifica se il server deve considerare i file rhosts or shosts
IgnoreRhosts yes

# Autenticazione basata sugli host
HostbasedAuthentication no

# Autenticazione con password
PasswordAuthentication no

Questa è la tipologia di autenticazione che ci interessa

# Autenticazione tramite chiave pubblica
PubkeyAuthentication yes

# Directory del server nella quale risiede la chiave
AuthorizedKeysFile .ssh/authorized_keys

# Demone sftp da usare
Subsystem sftp /usr/lib/openssh/sftp-server

Generazione della chiavi

A questo punto è necessario generare le chiavi; usando puttygen

  1. cliccare su Generate e muovere il mouse
  2. inserire una passphrase che verrà richiesta ad ogni accesso
  3. cliccare su save public key e salvarla con estensione .pub [esempio key.pub]
  4. cliccare su Conversion > Export ssh.com key e salvarla, senza estensione [esempio key]
  5. cliccare su save private key e salvarla con estensione .ppk

Copiare il testo contenuto nella finestra sotto la voce Public key for pasting into OpenSSH authorized_keys file e salvarlo in un file con nome authorized_keys e senza estensione.

A questo punto è necessario copiare il file authorized_keys nella cartella ssh dell'utente sul server; ad esempio
/home//.ssh/authorized_keys

La chiave privata senza estensione (nell'esempio key) e la chiave pubblica (nell'esempio key.pub) vanno copiate nella cartella di windows
C:\Documents and Settings\\Application Data\SSH\UserKeys

Connessione tramite SSH secure shell

Completata anche l'ultima operazione, si può tentare un accesso con SSH secure shell; aggiungere un nuovo profilo, impostare come host name il nome del nostro server o l'indirizzo IP e come username l'utente nella cui home abbiamo copiato il file authorized_keys. Nella scheda di configurazione Authentication impostare Public Key. Connettersi ed inserire la passphrase.

Connessione tramite putty

Per effettuare una connessione con putty, impostare come host name il nome del nostro server o l'indirizzo IP, selezionare SSH > auth, cliccare su browse e importare la chiave privata key.ppk. Connettersi, inserire il nome utente e la passphrase.