分类: LINUX
2010-03-25 22:43:46
ssh无密码互通
1.确认ssh可以运行
1.1. 修改sshd_config文件:vi /etc/ssh/sshd_config
1.2. 将#PasswordAuthentication no的注释去掉,并且将NO修改为YES
1.3. 将#PermitRootLogin yes的注释去掉
1.4. 重新启动SSH服务,命令为:/etc/init.d/sshd restart
1.5. 验证SSH服务状态,命令为:/etc/init.d/sshd status
2.更改互信节点的/etc/hosts文件
2.1.打开hosts文件:vi /etc/hosts ,在其中一个节点上,如server1上将其他的server2,server3等节点的ip和hostname写上,如
server1ip server1
server2ip server2
server3ip server3
server4ip server4
2.2 所有需互信节点均添加ip地址主机名对应关系。
3.设置server1
3.1 生成ssh密钥对:ssh-keygen -t rsa 一路回车即可.
3.2 查看是否有.ssh文件夹:ls -a
3.3 进入.ssh目录:cd .ssh
3.4 生成authorized_keys文件:cp id_rsa.pub authorized_keys
3.5 建立本身的信任连接:ssh server1 输入yes 无需密码
4.设置server2
7.1 生成ssh密钥对:ssh-keygen -t dsa (dsa与server1的rsa设置不要相同)
7.2 进入.ssh目录:cd .ssh
7.3 生成authorized_keys文件:cp id_dsa.pub authorized_keys
7.4 建立本身的信任连接:ssh server2 输入yes 无需密码
5.设置server3的方法与server1,server2相同
6.关键步骤
6.1 将server2,server3的authorized_keys内容追加至server1的authorized_keys文件中。
6.1.1 server2: cat authorized_keys 复制内容
6.1.2 server1: vi authorized_keys 在最末行添加复制。
server3 同上述操作相同
6.2 将以追加的文件authorized_keys覆盖server2,server3上的authorized_keys文件。
6.2.1 登陆server2:scp server1ip:/root/.ssh/authorized_keys /root/.ssh/authorized_keys
6.2.2 登陆server3:scp server1ip:/root/.ssh/authorized_keys /root/.ssh/authorized_keys
7.确认机器的信任连接已建立
7.1 对每台机器执行:ssh server1;ssh server2;ssh server3 在提示处输入yes回车。