linux - SSH 服务器以不接受连接的系统帐户启动

标签 linux ssh openssh sshd

我用一个带有非标准端口号的配置文件启动了一个新的 SSH 守护进程。现在,如果我以 sudo 身份启动 SSHD,我可以通过 SSH 连接到主机上,但如果我以不同的系统帐户身份启动,守护进程将启动,但连接失败。 SSHD 是否总是需要以 root 身份启动?

我确保 SSHD 正在运行,它只是不接受连接。

最佳答案

运行sshd不实用作为非根。 sshd需求root特权

  • 密码认证(只有root才能访问/etc/shadow)
  • 绑定(bind)到低于 1024 的端口
  • 调用 setuid()为了获得已连接用户的权限

如果您使用非特权端口和仅基于 key 的身份验证,您可能能够使其工作,但您将被限制与正在运行的用户连接 sshd .

这里有相关讨论:http://seclists.org/basics/2003/Aug/564

关于linux - SSH 服务器以不接受连接的系统帐户启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23505471/

相关文章:

linux - Docker - 在多层应用程序中移动到新主机时需要传输哪些图像?

perl - 文件处理

ssh - 在 .ssh/config 文件中指定密码?

c# - 使用 SSH.NET SftpClient 设置扩展文件属性

go - 如果通过 os.exec 运行,调用的程序失败

linux - Git checkout 未跟踪问题

linux - 如何使用 cut 显示文件的第一个字段

bash - 检查路径上是否有空格的远程服务器上存在文件

linux - 如何在 Linux 上获取中断向量号?

Linux (庆典) : how to list available SSH authentication methods for local host?