/etc/init.d/ssh restart 不会重新加载配置

/etc/init.d/ssh restart 不会重新加载配置

我已将 chroot 配置添加到我的/etc/ssh/sshd_config

我使用重新加载配置文件/etc/init.d/ssh reload,然后尝试使用 SFTP 客户端连接,但没有任何变化,用户可以登录但无法 chroot。

但是,如果我使用 手动启动 SSH 守护程序(在不同的端口上)/usr/sbin/sshd -p2222,则会加载新的配置并应用 chroot。

有什么提示为什么/etc/init.d/ssh reload实际上不能重新加载配置?

附加信息:

  • 如果我使用,则会发生同样的restart问题
  • 在重新加载/重新启动时,我与服务器保持开放连接,以进行 root 访问
  • 我正在运行 Debian Wheezy。

答案1

不要运行/etc/init.d/ssh restart使用service ssh restart

在 Ubuntu 14.04.2 上,直接调用 init 脚本不会发生配置更改。Debian 很可能也存在同样的情况。

答案2

事实证明,无论是restart还是stop+start都不够,因为它不会终止正在运行的 sshd 守护进程。

我必须获取对服务器的物理访问权限,然后停止kill <sshd PID>(以便服务器不会接受任何新的传入连接),然后重新启动守护进程。

相关内容