sshd nie „ponownie czyta” swojego pliku konfiguracyjnego, uruchamia się ponownie (patrz man sshd (8)), jednak nie powinien zabijać podrzędnych / połączeń, jeśli wysłałeś SIGHUP do ich wszystkich. Właśnie wtedy mówimy o sshd, który łączy się z portem 22, jak w „zwykłym” systemie Linux / FreeBSD / etc. [istnieją wyjątki i powody, dla których należy kierować się ścieżką typu MacOSX]
JEDNAK MacOSX został uruchomiony jako ten, który nasłuchuje i obsługuje port 22 (z mojego komputera 10.10.4):
BlackYos:~ hvisage$ sudo lsof -i :22
Password:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
launchd 1 root 57u IPv4 0xdb59a664e4b34941 0t0 TCP blackyos:ssh->hvs:39093 (ESTABLISHED)
launchd 1 root 58u IPv4 0xdb59a664e4b34941 0t0 TCP blackyos:ssh->hvs:39093 (ESTABLISHED)
launchd 1 root 62u IPv6 0xdb59a664c78cd671 0t0 TCP *:ssh (LISTEN)
launchd 1 root 66u IPv4 0xdb59a664c78d2e21 0t0 TCP *:ssh (LISTEN)
launchd 1 root 67u IPv6 0xdb59a664c78cd671 0t0 TCP *:ssh (LISTEN)
launchd 1 root 68u IPv4 0xdb59a664c78d2e21 0t0 TCP *:ssh (LISTEN)
ssh 1262 hvisage 3u IPv4 0xdb59a664e59313b1 0t0 TCP blackyos:51628->hvs:ssh (ESTABLISHED)
sshd 1272 root 4u IPv4 0xdb59a664e4b34941 0t0 TCP blackyos:ssh->hvs:39093 (ESTABLISHED)
sshd 1272 root 5u IPv4 0xdb59a664e4b34941 0t0 TCP blackyos:ssh->hvs:39093 (ESTABLISHED)
sshd 1274 hvisage 4u IPv4 0xdb59a664e4b34941 0t0 TCP blackyos:ssh->hvs:39093 (ESTABLISHED)
sshd 1274 hvisage 5u IPv4 0xdb59a664e4b34941 0t0 TCP blackyos:ssh->hvs:39093 (ESTABLISHED)
Jest uruchamiany, co może wymagać ponownego uruchomienia na MacOSX lub powiedzenia o różnych portach nasłuchiwania dla sshd, ponieważ uruchomi się pojawi się nowy sshd dla każdego przychodzącego połączenia portu 22.
sprawdź następujące:
BlackYos:~ hvisage$ sudo ps -ef |grep -i ssh
501 1263 1 0 6:46PM ?? 0:00.06 /usr/bin/ssh-agent -l
0 1272 1 0 6:46PM ?? 0:00.40 sshd: hvisage [priv]
501 1274 1272 0 6:46PM ?? 0:00.03 sshd: hvisage@ttys004
501 1262 570 0 6:46PM ttys001 0:00.05 ssh -v hvs
501 1303 1275 0 6:50PM ttys004 0:00.00 grep -i ssh
BlackYos:~ hvisage$
Przekazałem ssh do routera iz powrotem, aby zademonstrować problem, a zauważysz, że oba procesy są już „własnością”. Porównaj to z systemem Linux (mój router), w którym zauważysz trzeci „prawdziwy” sshd, którego właścicielem jest root:
hvisage@hvs:~$ ps -ef |grep -i ssh
root 4053 1 0 Jul11 ? 00:04:22 /usr/sbin/sshguard -i /var/run/sshguard.pid -l /var/log/auth.log -w /etc/sshguard/whitelist -a 40 -p 420 -s 1200
root 16244 30219 0 18:46 ? 00:00:00 sshd: hvisage [priv]
hvisage 16249 16244 0 18:46 ? 00:00:00 sshd: hvisage@pts/0
hvisage 16563 16250 0 18:52 pts/0 00:00:00 grep -i ssh
root 30219 1 0 Aug09 ? 00:00:00 /usr/sbin/sshd
hvisage@hvs:~$
kill -HUP <PID of sshd>
? Wedługman sshd
:sshd rereads its configuration file when it receives a hangup signal, SIGHUP
. (Możesz znaleźć PIDsshd
zps -ef|grep sshd
. Jeśli jest więcej niż jedensshd
proces, wyślij jeHUP
do wszystkich.)