将 SSH 限制为仅限 SFTP?

将 SSH 限制为仅限 SFTP?

我使用 SSH 密钥允许无密码登录我的机器。我想将它们限制为仅使用 SFTP。

我的文件中有以下内容authorized_keys似乎可以工作:

command="internal-sftp" ssh-rsa ...

我似乎找不到解决这个问题的方法......但我不是天才......我真的安全吗?

答案1

不是。您可以直接下载 authorized_keys 文件,编辑它并删除 command="internal-sftp" 部分,然后将其上传到您的文件之上,然后通过 ssh 进入框。

答案2

我认为配置此功能的正确方法是添加ForceCommand internal-sftp到特定用户部分sshd_config

Subsystem sftp internal-sftp

Match User MyUser
    PasswordAuthentication no
    ChallengeResponseAuthentication no
    ForceCommand internal-sftp
    ChrootDirectory /home/MyUser

答案3

你最好也删除账户的密码(不管“没人知道密码”)。

passwd --delete username

除此之外,您的解决方案看起来还不错。

相关内容