OpenSSH: file di configurazione: differenze tra le versioni
(Nuova pagina: ==OpenSSH: configurazione di base== In Debian potete tranquillamente installare SSH digitando da root: <pre> # aptitude update # aptitude install ssh openssh-server </pre> Aptitude p...) |
(Nessuna differenza)
|
Versione delle 06:46, 1 ott 2008
OpenSSH: configurazione di base
In Debian potete tranquillamente installare SSH digitando da root:
# aptitude update # aptitude install ssh openssh-server
Aptitude provvederà ad installare automaticamente il daemon SSH.
I files di configurazione di openSSH si trovano in /etc/ssh. Per configurare in modo corretto il nostro Server SSH il file da modificare è /etc/ssh/sshd_config.
La sua struttura è molto intuitiva, però potrebbe valer la pena osservare alcune opzioni:
- Port 22
Di default viene aperta la porta 22. Però per questioni di sicurezza e per evitare che il nostro server SSH possa essere trovato da un portscan occasionale è consigliato cambiarla, possibilmente scegliendone una superiore alla 1024, poichè le porte fino alla 1024 sono riservate per servizi noti.
- ListenAddress 0.0.0.0
Di default è 0.0.0.0 e indica che il demone SSH è in ascolto su tutte le interfacce di rete configurate e tutti gli indirizzi IP associati. Potrebbe essere utile cambiarlo con l’indirizzoIP specifico sul quale ci si aspettiamo connessioni SSH
- HostKey /etc/ssh/ssh_host_key
Specifica la posizione che contiene le chiavi private di un host e può essere lasciato il valore di default. Possono essere specificati più files ripetendo HostKey e cambiando il file di destinazione
- Protocol 2
Indica il protocollo da utilizzare. Possono essere indicati 1 o 2 o entrambi, separandoli con la virgola (1,2), tuttavia non è consigliato permettere connessioni con il protocollo 1
- UsePrivilegeSeparation yes
yes è il valore di default, e indica che per ogni login viene creato un processo figlio con i privilegi dell’user che ha effettuato il login per evitare tecniche di “privilege escalation” basati sui privilegi dei processi
- ServerKeyBits 1024
Dice quanti bit devono essere utilizzati perla creazione della chiave di criptazione della connessione. Si preferisce di solito utilizzare 1024 che è un buon compromesso tra velocità ed efficacia di crittazione.
- LoginGraceTime 120
Rappresenta il tempo massimo in secondi che intercorre tra il momento in cui viene stabilita la connessione e quello in cui avviene un login con successo. KeyRegenerationInterval 3600 Rappresenta il massimo tempo in secondi che il demone aspetta prima di rigenerare una nuova chiave per la connessione corrente e non deve essere eccessivamente elevato per evitare il cracking della chiave utilizzata nella sessione corrente PermitRootLogin no In genere di default è impostato su yes ma è altamente sconsigliato permettere ad un utente di effettuare il login remoto come root; è molto più sicuro far si che si effettui un login come normal user e da li guadagnare i permessi di root. IgnoreRhosts yes Dichiara di ignorare i files rhosts e shosts per l’autenticazione. IgnoreUserKnownHosts yes Dice al daemon di ignorare la lista degli hosts conosciuti presente in $HOME/.ssh/known_hosts durante la RhostsRSAAuthentication. StrictModes yes Questo serve per proteggere i files nelle home degli user che di solito vengono lasciati “world-writable”. X11Forwarding no Ci permette di disabilitare o abilitare il forwarding su X11. Se non abbiamo una GUI installata nel server (di solito è così) possiamo settarlo su no. PrintMotd yes Abilita la visualizzazione di /etc/motd a login avvenuto. IgnoreUserKnownHost yes Si ignora l’utilizzo si ~/.ssh/known_host e per il login ci si basa unicamente su user e password SyslogFacility AUTH LogLevel INFO Ci indica il grado di prolissità dei log. I valori possibili sono QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2, DEBUG3. Utilizzare un flag di DEBUG viola la privacy degli utenti pertanto non è consigliato RSAAuthentication yes Indica se sono concessi i login con solo RSA PasswordAuthentication yes Indica se utilizzare come metodo di accesso le password o meno PermitEmptyPasswords no Non permette i login senza user o senza password AllowUsers user1 user2 Permette il login via SSH solo agli user specificati. Da notare che gli user sono separati da spazi vuoti, quindi niente virgole o punto o altro AllowGroups group1 group2 Permette il login via SSH solo ai gruppi specificati. Da notare che i gruppi sono separati da spazi vuoti, quindi niente virgole o punto o altro