Provided by:
manpages-it_0.3.4-5_all 
NOME
ssh_config - file di configurazione per il client SSH di OpenSSH
SINTASSI
$HOME/.ssh/config
/etc/ssh/ssh_config
DESCRIZIONE
ssh ottiene i dati della configurazione dalle fonti seguenti (nell’ordine
dato):
1. opzioni sulla linea di comando
2. file di configurazione dell’utente ($HOME/.ssh/config)
3. file di configurazione generale (/etc/ssh/ssh_config)
Ad ognuno dei parametri verrà assegnato il primo valore ottenuto. I file
di configurazione contengono sezioni segnalate dalla parola chiave “Host”
con accanto modelli descrittori di host (o pattern); ogni sezione si
applica soltanto a quegli host che soddisfano uno dei modelli dati nella
descrizione. Il nome d’host digitato sulla linea di comando verrà
confrontato con i modelli delle descrizioni.
Dal momento che di ogni parametro verrà utilizzato il primo valore
ottenuto, le eventuali dichiarazioni multiple specifiche per host
dovrebbero essere fornite all’inizio del file, mentre quelle generali
(valide per tutti gli host) dovrebbero trovarsi in coda.
Il file di configurazione ha il formato seguente:
Le linee vuote e quelle che iniziano per ‘#’ sono commenti.
In tutti gli altri casi, una linea avrà il formato “parola-chiave
argomenti”. Le opzioni di configurazione possono essere separate
semplicemente da spazi, oppure da spaziature e un solo segno di
uguaglianza ‘=’; quest’ultimo formato è utile quando venissero indicate
le opzioni di configurazione -o (valide per ssh, scp e sftp), per evitare
di dover mettere gli spazi tra virgolette.
Le parole chiave utilizzabili, insieme ai loro significati, sono elencate
di seguito (si noti che le parole chiave possono essere indicate tanto in
lettere maiuscole che in minuscole, mentre per gli argomenti questo non è
più vero):
Host Circoscrive le dichiarazioni successive (fino alla susseguente
parola chiave Host) ai soli host corrispondenti ai modelli
forniti dopo la parola chiave. Nei modelli possono essere usati
i metacaratteri ‘*’ e ‘’?. Un singolo metacarattere ‘*’
rappresenta tutti gli host. L’host è l’argomento nomehost
fornito sulla linea di comando (cioè, il nome non viene
convertito in un nome di host regolare prima del confronto col
modello).
AFSTokenPassing
Indica il passaggio dei token AFS all’host remoto. L’argomento
per questa parola chiave deve essere “yes” o “no”. Quest’opzione
si applica alla sola versione 1 del protocollo.
BatchMode
Se impostata a “yes”, la richiesta della password viene
disabilitata. Quest’opzione è utile negli script e negli altri
job eseguiti in batch (ossia in sequenza) per i quali nessun
utente può essere presente per fornire la password. L’argomento
deve essere “yes” o “no” ed è predefinito come “no”.
BindAddress
Indica l’interfaccia da cui trasmettere per macchine con più
interfacce o più indirizzi di alias. Si noti che quest’opzione
non funziona se UsePrivilegedPort è impostata a “yes”.
ChallengeResponseAuthentication
Indica se va usata l’autenticazione con risposta a challenge.
L’argomento di questa parola chiave deve essere “yes” o “no”. Il
valore predefinito è “yes”.
CheckHostIP
Se quest’opzione è impostata a “yes”, ssh controllerà anche
l’indirizzo IP dell’host nel file known_hosts. Questo permette a
ssh di accorgersi se la chiave di un host è cambiata a causa
dello spoofing del DNS. Se l’opzione è impostata a “no”, il
controllo non sarà eseguito. È predefinita a “yes”.
Cipher Indica il tipo di cifratura da utilizzare per cifrare la sessione
nella versione 1 del protocollo. Attualmente sono supportati
“blowfish”, “3des”, e “des”. des è supportato soltanto nel
client di ssh_config per mantenere l’interoperabilità con le
precedenti implementazioni effettuate con il protocollo 1, cioè
quelle che non supportano la cifratura 3des. Il suo utilizzo è
fortemente sconsigliato a causa della sua debolezza. Il tipo di
cifratura predefinito è “3des”.
Ciphers
Indica i tipi di cifratura consentiti per la versione 2 del
protocollo, in ordine di preferenza. I tipi di cifratura devono
essere separati da virgole. Il valore predefinito è:
‘‘aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,
aes192-cbc,aes256-cbc’’
ClearAllForwardings
Indica che tutte le porte locali, remote e dinamiche, indicate
per l’inoltro della connessione nel file di configurazione o
sulla linea di comando, vanno azzerate. Quest’opzione è utile
principalmente quando è usata con ssh_config sulla linea di
comando, per azzerare le porte di inoltro della connessione
impostate nei file di configurazione; è impostata automaticamente
da scp(1) e sftp(1). L’argomento deve essere “yes” o “no”. Il
valore predefinito è “no”.
Compression
Indica se utilizzare o meno la compressione. L’argomento deve
essere “yes” o “no” ed è predefinito come “no”.
CompressionLevel
Se è stata abilitata la compressione, quest’opzione indica il
livello di compressione da impiegare. L’argomento deve essere un
intero da 1 (rapido) a 9 (lento, massimo). Il livello
predefinito è 6, valido per la maggior parte delle applicazioni.
Il significato dei valori è identico a quello di gzip(1). Si
noti che quest’opzione si applica alla sola versione 1 del
protocollo.
ConnectionAttempts
Indica il numero di tentativi da effettuare (uno al secondo)
prima di ritornare nella rsh o prima dell’uscita. L’argomento
deve essere un numero intero. Può essere utile negli script,
quando la connessione tenda a cadere. Il valore predefinito è 1.
DynamicForward
Indica che una porta TCP/IP sulla macchina locale va utilizzata
per l’inoltro della connessione attraverso il canale sicuro e il
protocollo dell’applicazione viene usato per determinare dove va
effettuata la connessione dalla macchina remota. L’argomento deve
essere un numero di porta. Attualmente è supportato il
protocollo SOCKS4 e ssh_config funzionerà come server SOCKS4.
Possono essere indicate più porte e altre aggiuntive possono
essere immesse sulla linea di comando. Solo il superutente può
inoltrare le porte privilegiate.
EscapeChar
Imposta il carattere di escape (predefinito come ‘~’). Il
carattere di escape può essere impostato anche sulla linea di
comando. L’argomento deve essere un singolo carattere, ‘^’
seguito da una lettera o da “none” per disabilitare del tutto il
carattere di escape (rendendo così trasparente la connessione per
i dati binari).
ForwardAgent
Indica se la connessione all’agente di autenticazione (se
presente) verrà inoltrata alla macchina remota. L’argomento deve
essere “yes” o “no”. Il valore predefinito è “no”.
Questo tipo di inoltro dovrebbe essere abilitato con cautela. Gli
utenti che hanno la possibilità di eludere i permessi dei file
sull’host remoto (per il socket di dominio Unix dell’agente)
possono accedere all’agente locale attraverso la connessione
inoltrata. Un aggressore non può ottenere la chiave materiale
dall’agente; tuttavia, può effettuare operazioni sulle chiavi per
abilitarlo all’autenticazione usando le identità caricate
nell’agente.
ForwardX11
Indica se le connessioni X11 verranno ridirette automaticamente
attraverso il canale sicuro e se verrà impostata la variabile
DISPLAY. L’argomento deve essere “yes” o “no”. Il valore
predefinito è “no”.
Questo tipo di inoltro dovrebbe essere abilitato con cautela. Gli
utenti che hanno la possibilità di eludere i permessi dei file
sull’host remoto (per il database contenente gli utenti
autorizzati a X) possono accedere al display X11 locale
attraverso la connessione inoltrata. Un aggressore può essere in
grado di effettuare azioni come il controllo della digitazione
dei tasti.
GatewayPorts
Indica se gli host remoti possono connettersi alle porte locali
inoltrate. Come comportamento predefinito, ssh_config vincola
l’inoltro delle porte locali all’indirizzo di loopback. Ciò
impedisce che host remoti possano connettersi alle porte
inoltrate. GatewayPorts può essere usato per indicare che
ssh_config vincolerà l’inoltro delle porte locali all’indirizzo
espresso attraverso un metacarattere, consentendo in tal modo
agli host remoti di connettersi alle porte inoltrate.
L’argomento deve essere “yes” o “no”. Il valore predefinito è
“no”. È predefinito come “no”.
GlobalKnownHostsFile
Indica un file da utilizzare come database generale delle chiavi
per host invece di /etc/ssh/ssh_known_hosts.
HostbasedAuthentication
Indica se vada provata l’autenticazione basata su rhosts con
l’autenticazione a chiave pubblica. L’argomento deve essere
“yes” o “no”. Il valore predefinito è “no”. È predefinito come
“no”. Quest’opzione vale solo per la versione 2 del protocollo
ed è simile a RhostsRSAAuthentication.
HostKeyAlgorithms
Indica, in ordine di preferenza, gli algoritmi per la chiave su
host (versione 2 del protocollo) che il client userà. Il valore
predefinito per quest’opzione è: “ssh-rsa,ssh-dss”.
HostKeyAlias
Indica un alias che andrebbe utilizzato al posto del nome reale
dell’host in fase di ricerca del suo indirizzo (look up) o quando
si salva la chiave dell’host nei file dei database relativi.
Quest’opzione è utile per realizzare connessioni attraverso un
tunnel ssh o per far funzionare più server su un singolo host.
HostName
Indica il nome reale dell’host cui connettersi; può essere usato
per indicare i nickname o le abbreviazioni degli host. Il nome
predefinito è quello dato sulla linea di comando. Anche gli
indirizzi IP numerici sono ammessi (sia da linea di comando che
attraverso l’indicazione in HostName).
IdentityFile
Indica un file dal quale verrà letta la chiave privata per
l’autenticazione RSA o DSA dell’utente. Il file predefinito è
$HOME/.ssh/identity per la versione 1 del protocollo, mentre è la
coppia $HOME/.ssh/id_rsa e $HOME/.ssh/id_dsa per la versione 2.
Inoltre, ogni identificazione rappresentata dall’agente di
autenticazione verrà utilizzata per l’autenticazione stessa.
All’interno del nome del file può essere usato il carattere tilde
(~) per far riferimento alla directory personale (home)
dell’utente. È possibile indicare più file di identificazione
nei file di configurazione; tutte queste identificazioni verranno
provate in successione.
KeepAlive
Indica se il sistema invierà messaggi TCP keepalive all’altro
capo della connessione. Se tali messaggi verranno inviati, la
caduta della connessione o il crash di una delle macchine saranno
opportunamente notificati. Comunque, ciò comporta la caduta
delle connessioni qualora l’instradamento fosse temporaneamente
disabilitato (down) e qualcuno potrebbe trovarlo fastidioso.
Quest’opzione è predefinita a “yes” (cioè i messaggi keepalive
vengono inviati) e il client segnalerà la disconnessione della
rete o il crash dell’host remoto. Questo torna utile negli
script e molti utenti ne vorranno trarre beneficio.
Per disattivare l’invio dei messaggi keepalive occorre impostare
il valore a “no”.
KerberosAuthentication
Indica se verrà usata l’autenticazione Kerberos. L’argomento di
questa parola chiave deve essere “yes” o “no”.
KerberosTgtPassing
Indica se al server verrà inoltrato un TGT Kerberos. Questo
funzionerà soltanto se il server Kerberos è in realtà un kaserver
AFS. L’argomento di questa parola chiave deve essere “yes” o
“no”.
LocalForward
Indica che una porta TCP/IP sulla macchina locale venga usata
(inoltrata) per la comunicazione (attraverso il canale sicuro)
con la macchina remota, attraverso l’indicazione di host e porta.
Il primo argomento deve essere un numero di porta, mentre il
secondo deve essere host:porta. Gli indirizzi IPv6 possono
essere indicati con una sintassi alternativa: host/porta. Gli
inoltri (o forward) multipli sono ammessi e quelli aggiuntivi
possono essere indicati sulla linea di comando. Soltanto il
superutente può effettuare l’inoltro sulle porte privilegiate.
LogLevel
Indica la ricchezza di informazioni utilizzate durante le
registrazioni dei messaggi. I valori possibili sono: QUIET,
FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2 e DEBUG3. Il
valore predefinito è INFO. DEBUG e DEBUG1 sono equivalenti.
DEBUG2 e DEBUG3 indicano livelli di output sempre più ricchi di
informazioni.
MACs Indica gli algoritmi di MAC (message authentication code) in
ordine di preferenza. L’uso degli algoritmo MAC è stato
introdotto nella versione 2 del protocollo, per protezione
dell’integrità dei dati. Gli algoritmi devono essere separati
con virgole. La sequenza predefinita degli algoritmi è
“hmac-md5,hmac-sha1,hmac-ripemd160,hmac-sha1-96,hmac-md5-96”.
NoHostAuthenticationForLocalhost
Quest’opzione può essere utilizzata se la propria directory
personale (home) è condivisa tra più macchine. In questo caso il
termine «localhost» farà riferimento ogni volta ad una macchina
diversa e l’utente riceverà molti avvisi legati alle variazioni
delle chiavi di host. Quest’opzione disabilita l’autenticazione
dell’host per localhost. L’argomento di questa parola chiave
deve essere “yes” o “no”. Come comportamento predefinito, la
chiave di host del localhost verrà verificata.
NumberOfPasswordPrompts
Indica il numero massimo di richieste della password prima di
scollegare l’utente. L’argomento deve essere un intero. Il
valore predefinito è 3.
PasswordAuthentication
Indica se deve essere utilizzata l’autenticazione della password.
L’argomento deve essere “yes” o “no”. Il valore predefinito è
“yes”.
Port indica il numero di porta dell’host remoto cui connettersi. Il
valore predefinito è 22.
PreferredAuthentications
Indica l’ordine in cui il client dovrebbe provare i metodi di
autenticazione del protocollo 2. Ciò consente ad un client di
preferire un metodo (ad es. keyboard-interactive) ad un altro
(ad es. password) Il valore predefinito per quest’opzione è:
“hostbased,publickey,keyboard-interactive,password”.
Protocol
Indica, in ordine di preferenza, quali versioni del protocollo
dovrebbero essere gestite da ssh_config. I valori possibili sono
“1” e “2”. Si possono indicare più versioni, avendo cura di
separarle con virgole. Il valore predefinito è “2,1”. Ciò
significa che ssh_config prova prima la versione 2; se questa non
fosse disponibile, prova la versione 1.
ProxyCommand
Indica il comando da utilizzare per connettersi al server. La
stringa che compone il comando si estende fino alla fine della
riga e viene eseguita con /bin/sh. Nella stringa del comando,
‘%h’ verrà sostituito con il nome dell’host cui connettersi e
‘%p’ con la porta. Il comando può essere uno qualsiasi, che
legge dal suo standard input e scrive sul suo standard output;
alla fine viene effettuata la connessione a un server sshd(8) in
funzione su qualche macchina, oppure ad uno che esegue sshd -i
(NdT: l’opzione -i fa eseguire sshd attraverso inetd). La
gestione della chiave dell’host sarà effettuata usando il valore
di HostName dell’host cui ci si connette (il cui valore
predefinito è quello digitato sulla riga di comando dall’utente).
Si noti che l’uso di CheckHostIP non è compatibile con una
connessione effettuata tramite un comando proxy.
PubkeyAuthentication
Indica se va effettuata l’autenticazione della chiave pubblica.
L’argomento di questa parola chiave deve essere “yes” o “no”. Il
valore predefinito è “yes”. Quest’opzione si applica soltanto
alla versione 2 del protocollo.
RemoteForward
Indica che una porta TCP/IP sulla macchina remota deve essere
inoltrata dalla macchina locale verso host e porta specificati
attraverso il canale sicuro. Il primo argomento deve essere un
numero di porta, mentre il secondo deve essere host:porta. Gli
indirizzi IPv6 possono essere indicati con una sintassi diversa:
host/porta. Possono essere indicati più inoltri; inoltri
aggiuntivi possono essere forniti in riga di comando. Solo il
superutente può effettuare l’inoltro delle porte privilegiate.
RhostsAuthentication
Indica se va utilizzata l’autenticazione basata sugli rhosts Si
noti che questa dichiarazione ha effetto solo per il client e
nessuna influenza sulla sicurezza. La maggior parte dei server
non permettono l’uso di RhostsAuthentication perché è insicuro
(si veda RhostsRSAAuthentication). L’argomento di questa parola
chiave deve essere “yes” o “no”. l valore predefinito è “no”.
Quest’opzione si applica alla sola versione 1 del protocollo e
necessita che ssh sia impostato come setuid del root e che
UsePrivilegedPort sia impostato a “yes”.
RhostsRSAAuthentication
Indica se va utilizzata l’autenticazione basata su rhosts insieme
all’autenticazione RSA. L’argomento deve essere “yes” o “no”.
Il valore predefinito è “no”. Quest’opzione si applica alla sola
versione 1 del protocollo e necessita che ssh sia impostato come
setuid del root.
RSAAuthentication
Indica se va provata l’autenticazione RSA. L’argomento di questa
parola chiave deve essere “yes” o “no”. L’autenticazione RSA
sarà tentata solo se esiste il file di identificazione, oppure se
è in funzione un agente di autenticazione. Il valore predefinito
è “yes”. Si noti che quest’opzione si applica alla sola versione
1 del protocollo.
SmartcardDevice
Indica il dispositivo di smartcard da utilizzare. L’argomento di
questa parola chiave è il dispositivo che ssh_config dovrebbe
utilizzare per comunicare con una smartcard che abbia memorizzata
la chiave RSA privata dell’utente. Come valore predefinito,
nessun dispositivo è indicato, cosicché il supporto delle
smartcard è disattivato.
StrictHostKeyChecking
Se quest’opzione è impostata a “yes”, ssh_config non aggiungerà
automaticamente le chiavi degli host al file
$HOME/.ssh/known_hosts, e rifiuterà di connettersi agli host la
cui chiave host sia stata cambiata. Ciò fornisce una maggior
protezione contro gli attacchi mediante cavalli di troia;
tuttavia, può essere problematico nei casi in cui il file
/etc/ssh/ssh_known_hosts venga sottoposto a poca manutenzione,
oppure quando le connessioni ai nuovi host vengono fatte molto
spesso. Quest’opzione obbliga l’utente a aggiungere manualmente
tutti i nuovi host. Se quest’opzione è impostata a “no”,
ssh_config aggiungerà automaticamente le chiavi dei nuovi host ai
file degli host noti. Se quest’opzione è impostata a “ask”, le
chiavi dei nuovi host verranno aggiunte solo dopo che l’utente
abbia dato conferma e ssh_config si rifiuterà di connettersi agli
host la cui chiave sia cambiata. In ogni caso, le chiavi degli
host conosciuti saranno verificate automaticamente. L’argomento
deve essere “yes”, “no” o “ask”. Il valore predefinito è “ask”.
UsePrivilegedPort
Indica se per le connessioni uscenti vada usata una porta
privilegiata. L’argomento deve essere “yes” o “no”. Il valore
predefinito è “no”. Se è impostato a “yes”, ssh deve essere
impostato come setuid del root. Si noti che quest’opzione deve
essere impostata a “yes” qualora le autenticazioni
RhostsAuthentication e RhostsRSAAuthentication siano necessarie
con i server più datati
User Indica l’utente con cui si fa la connessione. Quest’opzione può
essere utile quando si utilizzano nomi diversi su macchine
differenti; in tal caso si evita di dover dare il nome di utente
sulla riga di comando.
UserKnownHostsFile
Indica un file da utilizzare come fonte delle chiavi di host,
invece di $HOME/.ssh/known_hosts.
XAuthLocation
Indica la posizione del programma xauth(1). Il valore
predefinito è /usr/X11R6/bin/xauth.
FILE
$HOME/.ssh/config
Questo è il file di configurazione specifico dell’utente, il cui
formato è descritto nella sezione precedente. Questo file è
utilizzato dal client ssh. Esso non contiene, di solito,
informazioni sensibili, ma si raccomanda di imporre i permessi di
lettura/scrittura per l’utente proprietario e di renderlo
inaccessibile a chiunque altro.
/etc/ssh/ssh_config
Il file di configurazione generale; esso fornisce i valori
predefiniti per quei valori non altrimenti specificati nel file
di configurazione dell’utente, e per quegli utenti privi del file
di configurazione. Questo file deve essere leggibile da tutti.
AUTORI
OpenSSH è derivato dall’originale e libero ssh 1.2.12 di Tatu Ylonen.
Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt e
Dug Song ne hanno eliminato molti bug, gli hanno inserito funzionalità
aggiuntive e hanno creato OpenSSH. Markus Friedl ha contribuito fonendo
il supporto per le versioni 1.5 e 2.9 del protocollo SSH.
Traduzione di Fabio Teatini. Revisione di Valentino Squilloni.
VEDERE ANCHE
ssh(1)