双机互信的原理:通过ssh密钥对的认证,复用ssl协议进行通信。

配置方法

1、生成密码对

# ssh-keygen -t rsa -b 2048

-t 指定加密算法为rsa,-b指定加密码的位数。

其他的默认,一路回车,会在~/.ssh/目录下生成id_rsa  id_rsa.pub,两个文件,id_rsa是私钥文件,  id_rsa.pub是公钥文件。

2、将公钥文件放到远程主机即需要信任的主机上。

有两种方法:

(1)使用命令ssh-copy-id -i ~/.ssh/id_rsa.pub user@remotehost,

会询问是否要把remotehost写到~/.ssh/knownhost里,当然要写入了

然后输入remotehost的user登录密码,即完成。

此时,使用ssh user@@remotehost即可登录。如果远程机器的ssh端口非默认,需要使用添加 -p port参数。如果登入远程机器的用户和当前用户相同,可使用简化命令 ssh remotehost直接登录。比如当前用户为root,登入remotehost的用户也是root,则可以用简化命令 

(2)复制文件安装

先scp ~/.ssh/id_rsa.pub user@remotehost:~/

如果ssh端口非默认,加-P port参数

然后ssh user@remotehost登录到远程机上操作。

ls -a ~/,确认家目录下有.ssh目录。

cat ~/id_rsa.pub >~/.ssh/authorized_keys完成公钥的安装。

完成后,ctrl+d,退回到被信任机上。

3、sshd配置

配置文件:/etc/ssh/sshd_config

禁止密码登录配置:

ChallengeResponseAuthentication no
PasswordAuthentication no
UsePAM no


启用密钥认证:

RSAAuthentication yes
PubkeyAuthentication yes


按相应的值修改后,service sshd reload或/etc/init.d/sshd reload重新加载配置文件生效。