我使用 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
除此之外,您的解决方案看起来还不错。