rsync 通过 SSH 备份 vps,禁止 root 登录是不是不能备份了?

2018-08-27 16:52:20 +08:00
 liangzi
rsync -aptgovrlHAXzP -e "ssh -p 端口" --delete-excluded --exclude={"/media/*","/sys/*","/proc/*","/mnt/*","/tmp/*","/home/other/*","/var/run/*","/var/tmp/*"} 
rsync --rsh='sshpass -p 服务端密码 ssh -l 服务端用户名' -e "ssh -p 服务端口" -aptgovrlHAXzP --delete-excluded --exclude={"/media/*","/sys/*","/proc/*","/mnt/*","/tmp/*","/home/other/*","/var/run/*","/var/tmp/*"}
300 次点击
所在节点    VPS
14 条回复
msg7086
2018-08-29 01:46:24 +08:00
谁让你挪公钥的……
liangzi
2018-08-29 10:37:40 +08:00
@msg7086 我表示不清楚 原来的公钥还在 只是 cp 到新用户目录下 chown -R 新用户 .ssh
liangzi
2018-08-29 10:38:00 +08:00
@liangzi 表示=表述
msg7086
2018-08-29 15:02:23 +08:00
如果原来的公钥还在,那么你直接 ssh 应该能登录到 root 账号吧?
liangzi
2018-08-29 17:51:54 +08:00
@msg7086 是的 ssh 登录后可以用 sudo -i 登录 root 账户 然而 本地执行上面的 rsync 命令显示没有权限 根本没办法同步
msg7086
2018-08-29 20:21:01 +08:00
不是,我是说直接登录到 root 账号。

还是说你希望使用 sudo 来做 rsync ?
msg7086
2018-08-29 20:24:21 +08:00
--rsync-path="sudo rsync"

如果你想要的是这个的话。sudo 需要设置成无密码提权。
liangzi
2018-08-29 20:53:10 +08:00
@msg7086 我在服务器 sshd 的配置文件里面禁止了 root 用户登录 目前只开方新添加的用户登录 希望是直接使用现在的新用户登录方式 rsync 同步备份 vps 内容到本地 然而 目测 这个 sshpass 好像识别不了密码还是其他原因?“ rsync --rsh='sshpass -p 服务端密码 ssh。。。。”这里都是明文密码 你说的 需要设置成无密码提取权具体方法有吗 谢谢
msg7086
2018-08-29 21:00:43 +08:00
你 SSH 是密钥登录,当然不需要 sshpass 来输入密码了。

至于 sudo 提权,需要修改 sudoers,加上 NOPASSWD 参数。你可以自己搜一下。
还有不建议在还没有配置完成的时候就禁用 root 登录。否则配置文件改错就意味着你再也无法远程登录了。

另外,提权 = 提升权限。
liangzi
2018-08-29 21:05:17 +08:00
@msg7086 刚才网上搜了一下是不是把服务器里面配置成 “新用户 ALL=(ALL) NOPASSWD: /usr/bin/sudo ”就可以了?
msg7086
2018-08-29 21:09:17 +08:00
不是。NOPASSWD 后面跟的是你要执行的命令。
liangzi
2018-08-29 21:20:02 +08:00
@msg7086 我就是不知道这里该怎么写呢 。。。。。。
msg7086
2018-08-29 21:25:40 +08:00
如果你禁止了 root 登录的话,这里可以写 NOPASSWD:ALL。

用户 ALL=(ALL) NOPASSWD:ALL

另一种写法是

用户 ALL=(ALL) ALL
用户 ALL=(ALL) NOPASSWD: /usr/bin/rsync

还是那句话,先保证你能远程登录 root 账号,然后再修改这个配置文件!
否则修改错误会导致你失去服务器控制权。
liangzi
2018-08-29 21:29:42 +08:00
@msg7086 好的 非常感谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/483700

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX