Koneksi SSH turun secara otomatis setelah periode waktu tertentu yang ditetapkan oleh ClientAliveInterval
dan ClientAliveCountMax
parameter dan setara sisi klien mereka. Jika batas waktu ini cukup tinggi, Anda akan mengalami kulit beku. Namun, jika Anda menggunakan OpenSSH
Anda tidak harus menunggu waktu habis dan dapat memaksa menutup koneksi menggunakan karakter melarikan diri :
ESCAPE CHARACTERS
When a pseudo-terminal has been requested, ssh supports a number
of functions through the use of an escape character. A single
tilde character can be sent as ~~ or by following the tilde by a
character other than those described below. The escape character
must always follow a newline to be interpreted as special. The
escape character can be changed in configuration files using the
EscapeChar configuration directive or on the command line by the
-e option.
The supported escapes (assuming the default ‘~’) are:
~.
Disconnect.
(...)
Ketika koneksi macet tekan ~(artinya Shift+ `kunci bersamaan), lepaskan dan tekan .. Atau, jika Anda bekerja dengan koneksi yang tidak stabil atau perlu terhubung ke server jarak jauh setiap saat Anda dapat menggunakan autossh untuk secara otomatis memperbarui koneksi yang hilang, itu sangat nyaman.
EDIT :
Namun, jika keduanya ClientAliveInterval
dan ServerAliveInterval
diatur ke 0 secara eksplisit atau tidak diatur secara eksplisit dan kemudian diatur ke 0 secara default sesuai dengan sshd_config
dan ssh_config
halaman manual, pengaturan batas waktu diatur dalam file berikut (dari http://tldp.org/HOWTO/TCP- Keepalive-HOWTO / usingkeepalive.html ):
# cat /proc/sys/net/ipv4/tcp_keepalive_time
7200
# cat /proc/sys/net/ipv4/tcp_keepalive_intvl
75
# cat /proc/sys/net/ipv4/tcp_keepalive_probes
9
The first two parameters are expressed in seconds, and the last is
the pure number. This means that the keepalive routines wait for
two hours (7200 secs) before sending the first keepalive probe,
and then resend it every 75 seconds. If no ACK response is
received for nine consecutive times, the connection is marked as
broken.
Anda dapat memodifikasi 3 file ini hanya dengan menggunakan echo
dan melihat sendiri bahwa sesi SSH beku terputus sesuai dengan nilai-nilai ini.
Enter
~
.
sebagai urutan yang mengakhiri koneksi./proc/sys/net/ipv4/tcp_keepalive*
file danClientAliveInterval
danServerAliveInterval
bekerja bersama? Apakah mereka semua untuk pengaturan yang sama yaitu untuk menjaga koneksi ssh tetap hidup? Apakah file-file sebelumnya tidak hanya untuk koneksi ssh tetapi juga koneksi TCP lainnya?/proc/sys/net/ipv4/tcp_keepalive*
tidak hanya untukssh(d)
tetapi seperti yang tertulis dalam dokumen yang sayaRemember that keepalive support, even if configured in the kernel, is not the default behavior in Linux. Programs must request keepalive control for their sockets using the setsockopt interface. There are relatively few programs implementing keepalive, but you can easily add keepalive support for most of them following the instructions explained later in this document.
sshd
pada remote atau lepaskan kabel dan periksa kapan sesi yang membekussh
akan keluar dengan sendirinya. Denganfrozen shell
saya berarti shell yang tidak aktif, tidak mengambil kunci apapun dan tidak mencetak apa pun.