OpenSSH: file di configurazione: differenze tra le versioni
Nessun oggetto della modifica |
S3v (discussione | contributi) Nessun oggetto della modifica |
||
Riga 6: | Riga 6: | ||
</pre> | </pre> | ||
Aptitude provvederà ad installare automaticamente il daemon SSH. | Aptitude provvederà ad installare automaticamente il daemon SSH. | ||
I | I file di configurazione di openSSH si trovano in <code>/etc/ssh</code>. Per configurare in modo corretto il nostro Server SSH il file da modificare è <code>'''/etc/ssh/sshd_config'''</code>.<br/> | ||
La sua struttura è molto intuitiva, però potrebbe valer la pena osservare alcune opzioni: | La sua struttura è molto intuitiva, però potrebbe valer la pena osservare alcune opzioni: | ||
* < | * <code>'''Port 22'''</code> | ||
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, | 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. | ||
* < | * <code>'''ListenAddress 0.0.0.0'''</code> | ||
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 | 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’indirizzo IP specifico sul quale ci si aspettiamo connessioni SSH | ||
* < | * <code>'''HostKey /etc/ssh/ssh_host_key'''</code> | ||
Specifica la posizione che contiene le chiavi private di un host e può essere lasciato il valore di default. Possono essere specificati più | Specifica la posizione che contiene le chiavi private di un host e può essere lasciato il valore di default. Possono essere specificati più file ripetendo HostKey e cambiando il file di destinazione | ||
* < | * <code>'''Protocol 2'''</code> | ||
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 | 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 | ||
* < | * <code>'''UsePrivilegeSeparation yes'''</code> | ||
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 | 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 | ||
* < | * <code>'''ServerKeyBits 1024'''</code> | ||
Dice quanti bit devono essere utilizzati | Dice quanti bit devono essere utilizzati per la creazione della chiave di criptazione della connessione. Si preferisce di solito utilizzare 1024 che è un buon compromesso tra velocità ed efficacia di crittazione. | ||
* < | * <code>'''LoginGraceTime 120'''</code> | ||
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. | 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. | ||
* < | * <code>'''KeyRegenerationInterval 3600'''</code> | ||
Rappresenta il massimo tempo in secondi che il demone aspetta prima di rigenerare una nuova chiave per la connessione corrente. Non deve essere eccessivamente elevato per evitare il cracking della chiave utilizzata nella sessione corrente | Rappresenta il massimo tempo in secondi che il demone aspetta prima di rigenerare una nuova chiave per la connessione corrente. Non deve essere eccessivamente elevato per evitare il cracking della chiave utilizzata nella sessione corrente | ||
* < | * <code>'''PermitRootLogin no'''</code> | ||
In genere di default è impostato su yes, ma è altamente sconsigliato permettere ad un utente di effettuare il login remoto come root; è molto più sicuro fare in modo che si effettui un login come normal user per poi guadagnare i permessi di root. | In genere di default è impostato su yes, ma è altamente sconsigliato permettere ad un utente di effettuare il login remoto come root; è molto più sicuro fare in modo che si effettui un login come normal user per poi guadagnare i permessi di root. | ||
* < | * <code>'''IgnoreRhosts yes'''</code> | ||
Dichiara di ignorare i | Dichiara di ignorare i file rhosts e shosts per l’autenticazione. | ||
* < | * <code>'''IgnoreUserKnownHosts yes'''</code> | ||
Dice al daemon di ignorare la lista degli hosts conosciuti presente in $HOME/.ssh/known_hosts durante la RhostsRSAAuthentication. | Dice al daemon di ignorare la lista degli hosts conosciuti presente in <code>$HOME/.ssh/known_hosts</code> durante la RhostsRSAAuthentication. | ||
* < | * <code>'''StrictModes yes'''</code> | ||
Serve per proteggere i | Serve per proteggere i file nelle home degli user che di solito vengono lasciati “world-writable”. | ||
* < | * <code>'''X11Forwarding no'''</code> | ||
Permette di disabilitare o abilitare il forwarding su X11. Se non abbiamo una GUI installata nel server (di solito è così) possiamo settarlo su no. | Permette di disabilitare o abilitare il forwarding su X11. Se non abbiamo una GUI installata nel server (di solito è così) possiamo settarlo su ''no''. | ||
* < | * <code>'''PrintMotd yes'''</code> | ||
Abilita la visualizzazione di /etc/motd a login avvenuto. | Abilita la visualizzazione di <code>/etc/motd</code> a login avvenuto. | ||
* < | * <code>'''IgnoreUserKnownHost yes'''</code> | ||
Ignora l’utilizzo di ~/.ssh/known_host e per il login si basa unicamente su user e password | Ignora l’utilizzo di <code>~/.ssh/known_host</code> e per il login si basa unicamente su user e password | ||
* < | * <code>'''SyslogFacility AUTH'''</code> | ||
* < | * <code>'''LogLevel INFO'''</code> | ||
Indicano 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 e pertanto non è consigliato | Indicano 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 e pertanto non è consigliato | ||
* < | * <code>'''RSAAuthentication yes'''</code> | ||
Indica se sono concessi i login con solo RSA | Indica se sono concessi i login con solo RSA | ||
* < | * <code>'''PasswordAuthentication yes'''</code> | ||
Indica se utilizzare come metodo di accesso le password o meno | Indica se utilizzare come metodo di accesso le password o meno | ||
* < | * <code>'''PermitEmptyPasswords no'''</code> | ||
Non permette i login senza user o senza password | Non permette i login senza user o senza password | ||
* < | * <code>'''AllowUsers user1 user2'''</code> | ||
Permette il login via SSH solo agli user specificati. Da notare che gli user sono separati da spazi vuoti, quindi niente virgole o punti o altro | Permette il login via SSH solo agli user specificati. Da notare che gli user sono separati da spazi vuoti, quindi niente virgole o punti o altro | ||
* < | * <code>'''AllowGroups group1 group2'''</code> | ||
Permette il login via SSH solo ai gruppi specificati. Da notare che i gruppi sono separati da spazi vuoti, quindi niente virgole o punti o altro | Permette il login via SSH solo ai gruppi specificati. Da notare che i gruppi sono separati da spazi vuoti, quindi niente virgole o punti o altro | ||
<br/> | <br/> |
Versione delle 15:42, 31 gen 2010
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 file 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’indirizzo IP 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ù file 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 per la 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. 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 fare in modo che si effettui un login come normal user per poi guadagnare i permessi di root.
IgnoreRhosts yes
Dichiara di ignorare i file 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
Serve per proteggere i file nelle home degli user che di solito vengono lasciati “world-writable”.
X11Forwarding no
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
Ignora l’utilizzo di ~/.ssh/known_host
e per il login si basa unicamente su user e password
SyslogFacility AUTH
LogLevel INFO
Indicano 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 e 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 punti 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 punti o altro
Guida basata sull'originale presente sul sito: Oscene.net
--Ferdybassi 17:49, 22 dic 2009 (CET)