我正在尝试设置无密码登录到我的桌面从我的服务器,以便服务器上的 bash 脚本可以scp
备份到桌面。桌面运行 Kubuntu 12.10,服务器运行一些 Redhat 衍生产品。我的桌面的 IP 地址没有改变(在糟糕的互联网上没有改变,在 LAN 上也没有改变)。我可以从服务器顺利通过 SSH 进入桌面:
[remote]$ ssh backup@my-ip-address
backup@my-ip-address's password:
Welcome to Ubuntu 12.10 (GNU/Linux 3.5.0-25-generic x86_64)
...
[dotandesktop]$ exit
Connection to my-ip-address closed.
[remote]$
我已将文件从远程服务器scp
复制.ssh/id_rsa.pub
到桌面。然后,我使用附加运算符cat
将文件添加到桌面的.ssh/authorized_keys
密钥文件中>>
。我相信我拥有桌面上所有内容的正确权限:
[dotandesktop]$ sudo ls -la | grep .ssh
drwx------ 2 backupuser backupuser 4096 Apr 7 13:01 .ssh
[dotandesktop]$ ls -la .ssh
total 12
drwx------ 2 backupuser backupuser 4096 Apr 7 13:01 .
drwxrwxr-x 7 backupuser backupuser 4096 Apr 7 13:58 ..
-rw------- 1 backupuser backupuser 1211 Apr 7 13:58 authorized_keys
在服务器上:
[remote]$ ls -la | grep .ssh
drwx------ 2 fschafer fschafer 4096 Apr 7 04:05 .ssh
[remote]$ ls -la .ssh
total 24
drwx------ 2 fschafer fschafer 4096 Apr 7 04:05 .
drwx--x--x 4 fschafer fschafer 4096 Apr 7 06:05 ..
-rw------- 1 fschafer fschafer 1608 Feb 25 04:51 authorized_keys
-rw------- 1 fschafer fschafer 1675 Apr 7 04:05 id_rsa
-rw-r--r-- 1 fschafer fschafer 405 Apr 7 04:05 id_rsa.pub
-rw-r--r-- 1 fschafer fschafer 791 Apr 7 04:40 known_hosts
[remote]$
此外,从我的 SSH 配置文件中:
[dotandesktop]$ cat /etc/ssh/sshd_config | grep "RSAAuthentication\|PubkeyAuthentication"
RSAAuthentication yes
PubkeyAuthentication yes
RhostsRSAAuthentication no
# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
但是,当我尝试通过 SSH 从服务器进入桌面时,它仍然要求我输入密码。我还应该检查什么?
答案1
你做错了。你需要在客户端上保存私钥,在服务器上保存公钥authorized_keys
。
Oli 编辑:我要补充一点,只要使用提供给您的工具集,您就会得到很多好处。
即:ssh-copy-id