是否有可能在openssh上设置Ubuntu的用户,使SSH不使用密码authentication,但SFTP呢?
我假设,如果我改变/etc/ssh/ssh_config有PasswordAuthentication yes这使得用户可以使用密码login与ssh和sftp。
编辑:我的目的是让一些用户sftp密码,而不是密钥文件。 但我不希望SSH用户能够使用密码login,我希望他们必须使用密钥文件。 如果有帮助,我不需要sftp用户能够login,他们只需要做sftp。
据我所知,你(至less对于这个特定的问题)有两个不同的用户组,一个能够通过SSHlogin并获得一个交互式shell(我们称之为ssh组),一个可以通过SFTPlogin, SFTP shell(我们称之为sftp组)。
现在使用groupadd在你的系统上创build组ssh和sftp ,将相应的用户放到组中( gpasswd -a $USERNAME $GROUPNAME ),并在/etc/ssh/sshd_config sshd_config的末尾附加下面的行( 这很重要! /etc/ssh/sshd_config :
Match Group sftp PasswordAuthentication yes # Further directives for users in the "sftp" group Match Group ssh PasswordAuthentication no # Further directives for users in the "ssh" group
阅读有关sshd_config(5)中的Match指令以及有关ssh_config(5)中允许的模式的信息 。
您还必须重新启动ssh进程才能生效:
sudo /etc/init.d/ssh restart
不,我不明白这将如何提高安全性,那么重要的是什么?
authorized_keys可以允许不同的命令不同的键,如果这就是你以后。 否则,您可以select创build多个帐户并使用acls或sudo。
在这里黑暗中刺,但你可能会发现这个线程有趣。
监狱我的SFTP用户到他们的主目录是公平的吗?