我有 Ubuntu 10.04.1,SSH 服务器运行良好,但我很奇怪,为什么有两个 sshd 而不是一个?一个多线程守护进程还不够吗?这是个选择吗?
答案1
top 不是默认显示用户空间线程吗?其中一个很可能是另一个的线程。
如果您查看htop
(更具交互性的顶部),您可以按树排序并找出答案。您还可以在其选项屏幕中禁用显示线程(F2,显示选项并选中隐藏用户空间线程)
答案2
OpenSSH 服务器会为每个传入连接分叉,因此看到多个sshd
进程是正常的,尤其是当您登录服务器时,或者当计算机使用公共 IP 地址连接到互联网时(scriptkiddies 一直在尝试)。
来自手册:
sshd listens for connections from clients. It is normally started at boot from /etc/rc. It forks a new daemon for
each incoming connection. The forked daemons handle key exchange, encryption, authentication, command execution,
and data exchange.
如果没有人登录或者尝试登录,则应该只有一个sshd
进程。