Answers:
从3.9版开始,这特定于OpenSSH。
对于每个新连接,sshd都会重新执行自身,以确保为每个新连接重新生成所有执行时随机化。为了使sshd重新执行自身,它需要知道自身的完整路径。
以下是3.9版本说明中的报价:
- 使sshd(8)在接受新连接时重新执行自身。此安全措施可确保在主进程的生命周期中,对每个连接重新应用所有执行时间随机化,而不是一次。这包括mmap和malloc映射,共享库寻址,共享库映射顺序,支持此类的系统上的ProPolice和StackGhost cookie。
无论如何,通常最好使用其初始化脚本(例如/etc/init.d/sshd restart
)或使用来重新启动服务service sshd restart
。如果没有其他问题,它将帮助您验证服务在下次重新启动后是否可以正常启动...
(原始答案,现在无关紧要:我的第一个猜测是那/usr/sbin
不在您的$ PATH中。)
这是为了防止某人将sshd
程序注入您目录中某个目录中的某个位置,PATH
而您又无意间执行了该程序。2004年的这篇文章已经描述了这个问题。