使用未设置密码的SSH用户登录


20

我有一个未设置密码的用户(即passwd -d)。

我不想在此设置上使用公共密钥。

有没有办法通过SSH登录到这样的用户?


您是否要以该用户身份登录,还是要确保没有其他人以该用户身份登录?
巴恩2012年

Answers:


18

PermitEmptyPasswords yes 然后重新启动sshd?


2
这行得通,但是非常不安全。
Piskvor

可以肯定的是,但是,正如
lovethebomb 2012年

4
使用Ubuntu 13.10时PermitEmptyPasswords yes,即使重启后也不允许用户使用空密码设置登录名。
专业备份

7
您必须添加@ProBackup ssh才能/etc/securetty使其正常工作。
Ruslan

^谢谢@Ruslan!
Tony Bogdanov

2

如果您只是想成为有问题的用户,最简单的方法是使用其他用户(通过ssh)和登录su $username。这需要root特权,但是您可以将命令放入/etc/sudoers,仅让您的用户以root身份执行该命令。

如果您确实要通过ssh登录(或以其他方式远程登录),则需要选择以下选项之一:

  • 让任何人(或至少在您所在的网络上)登录。
  • 使用密码来限制谁可以登录。
  • 使用证书限制谁可以登录。对于ssh直接来说,这意味着一个公钥/私钥对,即ssh样式的rsa对或x509(类似于其他ssl内容)。

这有点令人困惑:1)su不是sudo2)与sudo“作为根”不适用。尽管可以su选择使用,但我(以前是Unix sysadmin)宁愿将重点放在上sudo
reinierpost 2012年

我没明白你的意思。1)sudo看起来不像以用户身份登录或切换为用户su。op希望以某些用户身份登录,而不是像这样执行命令。2)sudo让您以其他用户的身份执行命令(看看man sudo您是否不相信我)。在这种情况下,您希望以su root用户身份执行而不必为切换到的用户提供密码。3)用于不同任务的不同工具,尽管我猜有些人在输入sudo -u postfix 实际命令之前具有比我更高的容忍度。
Eroen

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.