SSH (Secure Shell) adalah sistem rangkaian terenkripsi ujung ke ujung yang memungkinkan pengguna mendapatkan akses dari jarak jauh dari klien ke pelayan atau sistem. Kerana sistem keselamatan kriptografi asimetri, cukup selamat dan selamat untuk mengakses pelayan walaupun dari rangkaian pelanggan yang tidak selamat. Tetapi kadang-kadang kerana tidak aktif atau isyarat rangkaian yang buruk, akses jauh SSH dapat terputus. Apa pun alasannya, sebagai pentadbir Linux, adalah tugas yang sangat penting untuk memastikan sesi dan proses SSH berjalan setelah terputus.
Sebab Mengapa Sesi SSH Terputus
Ringkasnya, ralat proksi terowong SSH, timeout rangkaian, menggunakan port rangkaian yang salah, atau bahkan tidak masuk ke sistem anda kerana pengguna root juga dapat membuat anda terputus dari pentadbiran jarak jauh SSH. Dalam catatan ini, kita akan membincangkan soalan yang paling kerap ditanya mengenai SSH; bagaimana memastikan sesi dan proses SSH berjalan setelah pemutusan berlaku.
1. Terus Menjalankan Sesi SSH Menggunakan skrin
Perintah
The skrin
perintah adalah arahan yang paling banyak digunakan dan berguna untuk pentadbiran SSH. The skrin
arahan dapat menyelesaikan masalah nama host untuk kedua-dua alamat IPv4 dan IPv6. Dengan fungsi akar, yang skrin
arahan boleh log keluar atau menolak sesi dari hujung klien hingga akhir pelayan. Sekiranya anda seorang pemula di Linux SSH, berikut adalah beberapa CLI yang dapat membantu anda memasang dan mencari manual skrin
perintah.
Untuk Ubuntu:
$ sudo apt skrin pemasangan
Untuk OpenSUSE:
Skrin pemasangan $ sudo zypper
Untuk Arch Linux:
Skrin $ sudo pacman -S
Untuk Red Hat Enterprise Linux:
$ sudo yum pasang skrin
Setelah selesai memasang, mulailah memantau skrin mula sistem anda.
$ screen $ screen --help
Setelah anda mendapat akses, SSH ke pelayan, anda ingin mendapatkan akses dari jauh. Sekiranya anda merancang kerja malam yang panjang dari stesen anda, tetapi anda tidak mahu menurunkan pelanggan SSH anda, anda boleh menggunakan skrin
perintah. Ini dapat melepaskan sesi layar anda, tetapi jangan khawatir, tugas yang anda mulakan akan selesai.
Untuk melepaskan skrin anda, tekan Ctrl-A
dan kemudian Ctrl-D
dari papan kekunci anda. Anda boleh log masuk untuk memantau kemajuan kerja bila-bila masa dari terminal anda. Untuk menyambung semula atau berhubung dengan yang sudah ada dengan sesi, gunakan CLI berikut.
$ skrin -r skrin -D -r
2. Terus Menjalankan Sesi SSH Menggunakan tmux
Alat
Tmux atau terminal multiplexer adalah alat yang sangat popular dan berguna untuk pengaturcara dan pentadbir sistem yang membolehkan pengguna beralih antara program ke program di terminal yang sama. Untuk memastikan sesi SSH berjalan di latar belakang, tmux
boleh menjadi penyelesaian yang sangat cepat. Ia dapat melepaskan dan memasang kembali aplikasi di mana proses terus berjalan di latar belakang. Berikut adalah arahan pemasangan dari tmux
untuk distro Linux.
Untuk Arch Linux:
$ sudo pacman -S tmux
Untuk Red Hat Enterprise Linux:
$ sudo yum pasang tmux
Untuk Ubuntu:
$ sudo apt-get install tmux
Untuk OpenSUSE:
$ sudo zypper pasang tmux
Selepas memasang tmux
, mulakan sesi tmux
menggunakan perintah terminal. Tidak perlu banyak masa untuk dipasang. Setelah selesai memasang, anda kini boleh memulakannya tmux
. Untuk mula tmux
, hanya ketik tmux di terminal.
$ tmux
Sekiranya anda perlu menjalankan lebih daripada satu terminal multiplexer agar semua sesi SSH berjalan di latar belakang, sekiranya demikian, anda mungkin menghadapi kesukaran untuk menukar antara tmux
ke tmux
. Berikut adalah baris arahan untuk menukar satu bentuk yang lain.
$ tmux detach $ tmux attach $ tmux attach -t 2
Untuk memeriksa semua tmux
skrin menggunakan tmux senarai
perintah.
$ tmux ls
3. Terus Menjalankan Sesi SSH Menggunakan byobu
Alat
Alat byobu kebanyakannya digunakan untuk pentadbiran SSH jarak jauh dan pemantauan di skrin di Linux. Ini adalah perisian sumber terbuka dan dapat digunakan bersama dengan tmux
atau skrin
alat. Anda dapat melihat status, pemberitahuan, dan pesan terkini dengan byobu
alat. Walaupun byobu
dipasang secara lalai dengan Ubuntu. Tetapi jika tidak, anda boleh memasangnya di dalam mesin Linux anda. Untuk memeriksa sama ada byobu
dipasang atau tidak di sistem anda dengan memeriksa versi byobu yang lain.
$ byobu - penukaran
Kemudian aktifkan byobu, ia akan memastikan sesi SSH anda tetap berjalan di latar belakang walaupun terputus.
$ byobu-enabled
Di sini proses pemasangan dijelaskan dengan CLI.
Untuk Ubuntu:
$ sudo apt pasang byobu
Untuk OpenSUSE:
$ sudo zypper addrepo https: // muat turun.terbuka.org / repositori / utiliti / openSUSE_Leap_42.3 / utiliti.repo
$ sudo zypper refresh $ sudo zypper install byobu
Untuk Arch Linux:
$ yaourt -S byobu $ packer -S byobu
Untuk Red Hat Enterprise Linux:
$ sudo yum pasang byobu
Untuk Fedora:
$ sudo dnf pasang byobu
Untuk memulakan dengan byobu
, hanya ketik byobu di terminal dan tekan Enter.
$ byobu
Sekarang, jika anda menggunakan tmux
atau skrin
, anda boleh memilih dan memilih antara mana-mana untuk backend bekerjasama.
$ byobu-pilih-backend
Sekarang, anda boleh mengurus dan memastikan sesi SSH anda berjalan di latar belakang setelah terputus, gunakan kekunci fungsi papan kekunci sistem. Untuk memulakan SSH bersama byobu, tekan CTRL + SHIFT + F2
dari papan kekunci anda untuk membolehkan persekitaran SSH. Untuk menggerakkan sesi SSH anda ke hadapan dan ke belakang, anda boleh menggunakan ALT + KE ATAS
dan ALT + TURUN
.
Untuk memutuskan sesi SSH anda, tekan F6
dari papan kekunci. Sekarang, jika anda ingin melepaskan sesi tetapi tidak memutuskan sesi, ini dia. Untuk melepaskan sesi SSH dan masih tersambung, tekan SHIFT + F6
. Inilah satu lagi arahan papan kekunci tambahan untuk anda. Untuk memastikan sesi skrin tetap aktif dan tutup semua tetingkap lain tekan ALT + F6
.
4. Terus Menjalankan Sesi SSH Menggunakan nohup
Perintah
The nohup
atau perintah 'no hangup' adalah alat alternatif yang sangat berguna untuk skrin atau tmux. Ini juga membolehkan pengguna untuk menjalankan sesi SSH walaupun mereka terputus. The nohup
arahan memberitahu sistem untuk menjalankan semua proses di latar belakang dengan mengelakkan isyarat ditutup (SIGHUP).
Untuk memeriksa nohup
manual dan pilihan membentuk terminal Linux anda, ketik perintah berikut di terminal dan tekan Enter.
pilihan $ nohup
Untuk memeriksa senarai pekerjaan yang sedang aktif, gunakan -l
arahan dari terminal anda.
$ pekerjaan -l
Sekarang, untuk sambungan SSH, untuk mengelakkan sambungan terputus dan memastikan sesi anda berjalan selepas terputus, gunakan baris perintah nohup yang diikuti oleh tugas anda. Anda juga boleh mendapatkan senarai output pekerjaan anda dalam fail teks dengan menggunakan perintah kucing di samping perintah nohup.
$ nohup ./ salam.sh $ kucing nohup.keluar
Untuk menjalankan proses di latar belakang, anda boleh menggunakan &
simbol sejurus selepas nohup
perintah. Seperti, jika saya ingin menguji ping untuk wordpress-408970-1286763.cloudwaysapps.com di latar belakang, baris perintah akan sama seperti baris berikut di bawah ini. Dan apabila anda fikir tugas anda sudah selesai, untuk melihat hasilnya, gunakan pgrep
perintah.
$ nohup ping ubuntupit.com & $ pgrep -a ping
5. Terus Menjalankan Sesi SSH Menggunakan tidak dibenarkan
Perintah
Sekiranya anda tidak mempunyai hak root sistem, mungkin ini akan menyelesaikan masalah anda. The tidak dibenarkan
arahan boleh membuat tugas yang tidak disenaraikan dari log sistem berjalan anda. Oleh itu, ia dapat menyembunyikan proses yang sedang berlangsung untuk mengelakkan semua kesalahan log keluar automatik atau menutup isyarat (SIGHUP). Anda sebenarnya boleh menggunakan perintah pengurusan proses diswon untuk memastikan sesi SSH anda berjalan dengan menyembunyikan tugas anda.
Untuk membuang atau menyembunyikan tugas anda dari pengurus tugas, gunakan perintah diswon di terminal.
$ tidak disetujui
Untuk memeriksa status tugas semasa, gunakan perintah shell semasa.
$ tempurung semasa
Anda juga boleh menetapkan senarai tugas pada perintah terminal satu baris.
$ disown jobs1 $ disown jobs1 jobs2… jobsn
Dan untuk menyemak senarai tugas, gunakan -l
perintah.
$ pekerjaan -l
Untuk membuang semua pekerjaan semasa dari tetingkap, ketik -a
sintaks yang diikuti oleh arahan yang ditolak.
$ tidak diizinkan -a
Untuk membuang hanya satu atau tugas yang sedang berjalan dari tetingkap, gunakan -r
sintaks diikuti oleh perintah diswon.
$ tidak disetujui -r
Sekarang untuk SSH, untuk menjalankan tugas di latar belakang setelah sesi disambungkan, gunakan -h
sintaksis. Proses ini dapat memastikan sesi SSH anda tetap berjalan walaupun selepas terputus.
$ disown -h jobID $ disown -h% 2
Memperbaiki masa tamat
Ralat SSH di RHEL
Apabila anda bersambung ke SSH di Red Hat Enterprise Linux (RHEL), anda mungkin mengalami masalah waktu tunggu yang kerap dan sambungan anda terputus. Masalah ini berlaku kerana borang masa tindak balas yang tidak betul sama ada hujung klien atau akhir hos. Di direktori root Red Hat anda, anda harus mencari dan mengedit sshd_config.txt
fail untuk menyelesaikan masalah masa tamat ini. Setelah selesai, anda boleh mendapatkan kembali sambungan SSH anda walaupun terputus.
Terdapat di dalam sshd_config.txt
, fail anda akan menemui dua pilihan bernama ClientAliveInterval
dan PelangganAliveCountMax
, anda perlu mengedit fail log ini untuk memaksimumkan masa respons pelayan kepada pelanggan. Selang waktu tamat dikira dengan mengalikan nilai ClientAliveInterval dan ClientAliveCountMax.
Yang anda perlukan hanyalah mengedit jangka masa kedua nilai ini mengikut jangka masa sistem dan rangkaian anda. Biarkan anda ingin memaksimumkan masa 10 minit untuk akhir selang klien dan 5 kali untuk jumlah pelanggan, maka pendaftaran teks anda di dalam sshd_config.txt
fail akan seperti di bawah. Kemudian, mulakan semula SSH.
ClientAliveInterval 10m ClientAliveCountMax 5
Pemikiran Akhir
Bagi pentadbir sistem, memastikan sesi dan proses SSH berjalan adalah tugas penting untuk memuaskan pelanggan dan memenuhi tugas. Sesi yang terputus dan kerap hilang sangat mengganggu dan menyusahkan. Oleh itu, dalam catatan ini, kami telah mencuba untuk membincangkan dan menerangkan sebab-sebab mengapa sesi SSH terputus dan juga menerangkan semua kaedah yang mungkin mengenai bagaimana memastikan sesi SSH berjalan setelah terputus.
Sekiranya anda pernah mengalami kerumitan pemutusan sesi SSH dan mengetahui betapa menjengkelkannya, sila kongsi pengalaman anda dengan kami. Dan juga buat komen jika anda mempunyai sesuatu untuk ditambahkan atau meminta apa-apa yang berkaitan dengan siaran ini di bahagian komen. Jangan lupa untuk berkongsi catatan ini dengan rakan anda di media sosial.