技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> Linux --> SSH 信任限制只能执行 rsync 命令

SSH 信任限制只能执行 rsync 命令

浏览:1060次  出处信息

   业务场景:

   * 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/

建议继续学习:

  1. rsync同步的艺术    (阅读:8108)
  2. Linux shell脚本使用while循环执行ssh的注意事项    (阅读:6384)
  3. Linux探索:一次删除一百万个文件的最快方法    (阅读:5710)
  4. 在ssh服务里使用chroot    (阅读:4694)
  5. 为什么要用公钥/私钥而不是密码去做SSH身份验证    (阅读:4522)
  6. rsync 的核心算法    (阅读:4401)
  7. 懒人连ssh不输密码若干大法    (阅读:4351)
  8. ssh连接超时解决办法    (阅读:4319)
  9. 如何让ssh登录更加安全    (阅读:4309)
  10. Dropbox差异同步算法rsync及其改进算法原理    (阅读:4263)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1