Bagaimana saya bisa melepaskan diri dari sesi SSH yang mogok?


62

Sering kali saya memiliki sesi SSH yang tidak merespons lagi (misalnya, ketika saya kehilangan koneksi internet dan kemudian menyambung kembali). Ctrl+ C, Ctrl+ D, Ctrl+ Zdan jutaan penekanan tombol tidak memiliki efek apa pun.

Sebagian besar waktu saya sudah tmuxatau byobusudah berjalan, jadi saya bisa memulai terminal lain dan menghubungkan kembali. Namun rasanya tidak praktis. Bagaimana saya bisa memutuskan SSH dari terminal saat ini?

Jawaban:


87

Gunakan "karakter melarikan diri" (biasanya, tilde ~) untuk mengontrol sesi SSH:

  • ~diikuti dengan .menutup koneksi SSH;
  • ~diikuti oleh Ctrl+ Zmenunda proses SSH;
  • ~diikuti oleh yang lain ~mengirimkan secara literal ~.

Anda dapat mengatur karakter pelarian menggunakan -eopsi ke ssh .

Selain itu, ingat itu

Anda juga harus ingat untuk menekan Entersebelumnya ~. Karakter melarikan diri berfungsi ketika itu adalah karakter pertama dalam barisan. Dan juga Anda dapat menggunakan ~dan nanti ?untuk mendapatkan bantuan dari klien ssh. (Terima kasih atas komentar Lukasz Stelmach .)


11
Anda juga harus ingat untuk menekan Entersebelumnya ~. Karakter melarikan diri berfungsi saat itu adalah karakter pertama dalam barisan. Dan juga Anda dapat menggunakan ~dan nanti ?untuk mendapatkan bantuan dari ssh client.
Lukasz Stelmach

7
~diikuti oleh ?memberi Anda daftar lengkap dari urutan pelarian yang didukung
Matijs

1

Openssh dapat dikonfigurasikan untuk mengirim pesan hidup ke klien atau server ke sisi lain. Jika tidak ada respons yang diperoleh, koneksi akan terputus. Dari sisi server, lihat opsi ClientAliveIntervaldan ClientAliveCountMaxkonfigurasi. Dari sisi klien, lihat opsi ServerAliveIntervaldan ServerAliveCountMax. TCPKeepAlivejuga merupakan opsi, tetapi spoofable sedangkan opsi sebelumnya tidak, jadi mereka mungkin lebih baik.

Jika Anda menetapkan ini ke nilai yang masuk akal, Anda mungkin tidak akan pernah memiliki koneksi hang lagi. Satu-satunya downside adalah bahwa koneksi ssh Anda mungkin tetap terbuka jika Anda lebih suka mereka akan berakhir, karena alasan keamanan.

Lihat OpenSSH sshd halaman manual config dan halaman manual ssh config OpenSSH untuk infrormation lanjut.


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.