在两台服务器之间建立信任关系解决scp,ssh等不用输入密码等问题
rsync是通过ssh通道的,因此不输入密码实际上是ssh在两台主机之间建立信任关系。
数据在主服务器192.168.1.10上 备份服务器是192.168.1.20
在备份服务器192.168.1.20上执行
# ssh-keygen -t rsa
一路回车
注意:在程序提示输入passphrase时直接输入回车,表示无证书密码。
# chmod 755 ~/.ssh
将公钥证书id_rsa.pub复制到机器Server的root目录的.ssh子目录中,同时将文件名更换为authorized_keys
# scp ~/.ssh/id_rsa.pub 192.168.1.10:/root/
用root身份登录服务器192.168.1.10
# cat id_rsa.pub >> /root/.ssh/authorized_keys
现在用ssh从备份服务器登录一下主服务器看看是否可以不输密码了?
还不行的话,检查一下主服务器的/etc/ssh/sshd_config文件
AuthorizedKeysFile %h/.ssh/authorized_keys
是否被注释掉了,如果注释掉了,释放注释
还有一种最简单的方法,一步搞定
登陆到备份服务器,执行以下命令:
# cd /root
# ssh-keygen -t rsa
# ssh-copy-id -i .ssh/id_rsa.pub root@192.168.1.10
这样在执行rsync的时候,就可以不用输密码了。这为以后备份自动化提供了基础
--------都是凡人,何必装神-------