SSH 信任限制只能执行 rsync 命令
浏览:1318次 出处信息
业务场景:
* server A 经常需要使用rsync将文件同步至 server B
* rsyncd 的配置稍显复杂,不想在 server B 上配置rsyncd
* 出于安全性的考虑,不能完全开放 server A 至 server B 的ssh权限
解决方案:
配置server B上的~/.ssh/authorized_keys, 允许server A使用ssh连接至server B, 但是限制只能使用rsync命令,并且限制rsync上传的目录
在server A上创建用于专门用于rsync验证的ssh密钥
ssh-keygen -C rsync_key -f ./rsync_key -P '' -N ''
在server B下载 rrsync 存放至 $HOME/bin/rrsync
在server B的~/.ssh/authorized_keys中加入以下内容,行尾的部分即是第一步生成的rsync_key.pub的内容:
command="$HOME/bin/rrsync /data/work/package/",no-agent-forwarding,no-port-forwarding,no-pty,no-user-rc,no-X11-forwarding ssh-rsa AAAA**content of rsync_key** rsync_key
在server A上可以通过下面的rsync命令把local_name上传至server B的/data/work/package/remote_name来传输文件:
rsync -av -e 'ssh -o StrictHostKeyChecking=no -i /path/to/rsync_key' local_name user@serverB:remote_name
参考链接:Restricting SSH Access to rsync
转自: http://oylb.in/blog/2015/09/01/restrict-rsync-with-authorized-keys/
建议继续学习:
- rsync同步的艺术 (阅读:8434)
- Linux shell脚本使用while循环执行ssh的注意事项 (阅读:6868)
- Linux探索:一次删除一百万个文件的最快方法 (阅读:5968)
- 在ssh服务里使用chroot (阅读:5009)
- 为什么要用公钥/私钥而不是密码去做SSH身份验证 (阅读:4846)
- 懒人连ssh不输密码若干大法 (阅读:4641)
- 如何让ssh登录更加安全 (阅读:4638)
- ssh连接超时解决办法 (阅读:4625)
- rsync 的核心算法 (阅读:4578)
- SSH无密码登录 (阅读:4461)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:详解Linux bash中的变量
后一篇:Linux lsof命令使用小结 >>
文章信息
- 作者:ideawu 来源: idea's blog
- 标签: rsync SSH
- 发布时间:2015-10-04 23:17:12
建议继续学习
近3天十大热文
-
[66] find命令的一点注意事项
-
[46] memory prefetch浅析
-
[45] 读书笔记-壹百度:百度十年千倍的29条法则
-
[33] 卡诺模型―设计品质与设计价值的思考
-
[31] 小屏幕移动设备网页设计注意事项
-
[28] Oracle bbed工具的编译
-
[25] 基本排序算法的PHP实现
-
[23] 8大实用又重要Mac使用技巧
-
[22] 杨建:网站加速--Cache为王篇
-
[21] 程序员技术练级攻略