如何将公钥限制为仅sftp登录
Contents
起因
最近有个权限控制的需求,需要允许同事通过SFTP软件上传和下载文件,不允许他登录到服务器;因为涉及到程序运行权限的问题,不能另外开一个用户,只能使用当前用户来上传。查阅 ssh
帮助文档,看到参数: SSH_ORIGINAL_COMMAND
可以很简单的解决这个问题
原理
通过我的测试,我发现 sftp 登录的时候,SSH_ORIGINAL_COMMAND
的值为 /usr/lib/sftp-server
我们知道 linux
的公钥是可以通过在开头加上 command
模块来执行自定义命令,那么我们只需要在里面加上判断就可以了,最终结果如下:
|
|
关于 SSH_ORIGINAL_COMMAND
|
|