Apakah Anda mencoba mengirim sinyal hangup: kill -HUP <PID of sshd>? Menurut man sshd: sshd rereads its configuration file when it receives a hangup signal, SIGHUP. (Anda dapat menemukan PID sshddengan ps -ef|grep sshd. Jika ada lebih dari satu sshdproses, kirim HUPke semuanya.)
jaume
(lihat hasil edit terakhir saya)
kjo
6
Ya, Anda benar, jika Anda HUP sshdproses yang memiliki koneksi terbuka, sshdberakhir. Namun, mengirimkan sinyal HUP ke utama sshd, yaitu, orangtua sshdyang mengarang daemon baru untuk setiap koneksi yang masuk, akan memiliki efek yang diinginkan. Pada OS X, meskipun, tidak ada utama sshd: sshddimulai dengan launchdmelalui launchproxydengan opsi -i, yang memberitahu sshdbahwa itu berjalan dari inetddan mulai pada permintaan, ketika launchdmenerima permintaan. Dengan pengaturan ini, setiap koneksi SSH baru mulai sshddikonfigurasikan dengan versi terbaru file konfigurasi-nya.
jaume
Jawaban:
5
sshd tidak "membaca kembali" itu file konfigurasi, itu me-restart sendiri (lihat man sshd (8)), namun, itu tidak boleh membunuh anak / koneksi jika Anda mengirim SIGHUP ke ORANGTUA dari mereka semua. Saat itulah Anda berbicara tentang sshd yang mengikat ke port 22, seperti dalam "biasa" dengan Linux / FreeBSD / etc. [ada pengecualian dan alasan sysadmin mengapa harus mengikuti rute jenis MacOSX]
NAMUN MacOSX telah launchd sebagai yang mendengarkan dan menangani port 22 (dari mesin 10.10.4 saya):
Ini launchd yang mungkin perlu "restart" di macosx, atau diberitahu tentang port yang berbeda untuk mendengarkan sshd, karena launchd akan menelurkan sshd baru untuk setiap koneksi port 22 yang masuk.
Saya ssh akan ke router saya dan kembali untuk menunjukkan masalah, dan Anda akan melihat bahwa kedua proses sudah "dimiliki" oleh saya. Bandingkan ini dengan sistem Linux (roouter saya) di mana Anda akan melihat sshd "nyata" ketiga yang dimiliki oleh root:
kill -HUP <PID of sshd>
? Menurutman sshd
:sshd rereads its configuration file when it receives a hangup signal, SIGHUP
. (Anda dapat menemukan PIDsshd
denganps -ef|grep sshd
. Jika ada lebih dari satusshd
proses, kirimHUP
ke semuanya.)sshd
proses yang memiliki koneksi terbuka,sshd
berakhir. Namun, mengirimkan sinyal HUP ke utamasshd
, yaitu, orangtuasshd
yang mengarang daemon baru untuk setiap koneksi yang masuk, akan memiliki efek yang diinginkan. Pada OS X, meskipun, tidak ada utamasshd
:sshd
dimulai denganlaunchd
melaluilaunchproxy
dengan opsi-i
, yang memberitahusshd
bahwa itu berjalan dariinetd
dan mulai pada permintaan, ketikalaunchd
menerima permintaan. Dengan pengaturan ini, setiap koneksi SSH baru mulaisshd
dikonfigurasikan dengan versi terbaru file konfigurasi-nya.Jawaban:
sshd tidak "membaca kembali" itu file konfigurasi, itu me-restart sendiri (lihat man sshd (8)), namun, itu tidak boleh membunuh anak / koneksi jika Anda mengirim SIGHUP ke ORANGTUA dari mereka semua. Saat itulah Anda berbicara tentang sshd yang mengikat ke port 22, seperti dalam "biasa" dengan Linux / FreeBSD / etc. [ada pengecualian dan alasan sysadmin mengapa harus mengikuti rute jenis MacOSX]
NAMUN MacOSX telah launchd sebagai yang mendengarkan dan menangani port 22 (dari mesin 10.10.4 saya):
Ini launchd yang mungkin perlu "restart" di macosx, atau diberitahu tentang port yang berbeda untuk mendengarkan sshd, karena launchd akan menelurkan sshd baru untuk setiap koneksi port 22 yang masuk.
periksa hal berikut:
Saya ssh akan ke router saya dan kembali untuk menunjukkan masalah, dan Anda akan melihat bahwa kedua proses sudah "dimiliki" oleh saya. Bandingkan ini dengan sistem Linux (roouter saya) di mana Anda akan melihat sshd "nyata" ketiga yang dimiliki oleh root:
sumber
Baris berikut memeriksa konfigurasi terlebih dahulu dan mendapatkan PID dari proses utama menjaga semua yang lain (diuji di Linux, zsh):
sumber
sshd
proses.Secara sederhana:
sumber
sshd
proses.