rsync 后 ssh 密钥失效

rsync 后 ssh 密钥失效

我在摆弄 rsync 时不知怎么地终止了我的 ssh 密钥登录。这是我运行的 rsync 命令。(我一看到它工作正常,就按 Control-C 键):

rsync -avz -e "ssh -i .ssh/id_rsa.pub -p XXXX" --progress ./ user@SERVERNAME/home/user/

之后,当我尝试 ssh 时收到以下错误

权限被拒绝(publickey、gssapi-keyex、gssapi-with-mic)。

服务器上的权限如下,

.ssh:

drwx------  2 frank frank 4096 Nov 22 06:01 .
drwxrwxr-x 35 frank frank 4096 Nov 22 06:23 ..
-rw-------  1 frank frank 3893 Nov 22 05:50 authorized_keys
-rw-------  1 frank frank 1675 Oct 21  2016 id_rsa
-rw-r--r--  1 frank frank  397 Oct 21  2016 id_rsa.pub
-rw-r--r--  1 frank frank  420 Nov 22 06:26 known_hosts

〜/:

drwx------  2 frank frank  4096 Nov 22 06:01 .ssh

关于我的设置的几点简要说明:

1)非标准 ssh 端口 2)无需密码登录

答案1

在这种情况下,通过查看服务器的日志通常可以更容易地诊断问题,而不是尝试从客户端解决问题。

答案2

请注意,当使用 -a 传输到根文件夹时,Rsync 可能存在保护功能或错误。

给定一个包含 cow.txt 的本地文件夹,名为 Music

rsync -a Music/ [email protected]:/usr/ 

将音乐文件夹中的cow.txt文件移至usr/,我仍然可以登录。

rsync -a Music/ [email protected]:/root/ 

将 cow.txt 文件移动到 /root/ 中,授权密钥不受影响,但随后我无法使用[电子邮件保护]

我不确定为什么会发生这种情况,并且在服务器日志中看不到任何可以解释这种情况的内容。

但至少可以很容易地避免这个问题

远程和本地服务器均运行 rsync 版本 3.1.1 协议版本 31

在 Ubuntu 16.04 上

相关内容