Il problema
1. Come modificare il periodo di timeout telnet?
2. La connessione Telnet viene disconnessa dopo un po' di tempo di inattività. Come disabilitare il timeout in telnet?
La soluzione
Utilizzo del parametro tcp_keepalive_time
Per modificare il timeout telnet è necessario modificare il valore del parametro tcp_keepalive_time . Di seguito sono riportati i dettagli del parametro dalla pagina man di tcp.
# man tcp tcp_keepalive_time (integer; default: 7200; since Linux 2.2) The number of seconds a connection needs to be idle before TCP begins sending out keep-alive probes. Keep-alives are sent only when the SO_KEEPALIVE socket option is enabled. The default value is 7200 seconds (2 hours). An idle connection is terminated after approximately an additional 11 minutes (9 probes an interval of 75 seconds apart) when keep-alive is enabled.
1. Per visualizzare il valore corrente del parametro tcp_keepalive_time, utilizzare il comando seguente.
# sysctl -a | grep tcp_keepalive_time net.ipv4.tcp_keepalive_time = 7200
2. Per impostare un nuovo valore del parametro tcp_keepalive_time, utilizzare il comando seguente.
# echo 3600 > /proc/sys/net/ipv4/tcp_keepalive_time
3. Per mantenere la modifica permanente, aggiungi una riga a /etc/sysctl.conf simile alla seguente.
# vi /etc/sysctl.conf net.ipv4.tcp_keepalive_time = 3600
4. Ora esegui il comando seguente per rendere effettive le modifiche anche nella sessione corrente.
# sysctl -p net.ipv4.tcp_keepalive_time = 3600
Utilizzo della variabile d'ambiente TMOUT
Puoi anche regolare il timeout usando la variabile d'ambiente 'TMOUT='. Se non desideri utilizzare la disconnessione automatica, inserisci quanto segue in ~/.bashrc file del rispettivo utente.
# export TMOUT=0