如何建立SSH互信
2015-07-11 14:39
239 查看
如何建立SSH互信:假设有三台主机host1,host2,host3
(1) 关闭防火墙和SELinux
该命令可以关闭防火墙,但是当重启后,防火墙会重新开启,输入下面的命令,让防火墙在重启后也不会开启。
关闭SELINUX
编辑,令SELINUX=disabled。保存退出。
立即生效。
分别在host1,host2和host3上执行上述命令。
(2) 修改SSH配置文件
找到下列行 去掉注释井号#
保存退出。
修改后需要重启ssh
分别在host1,host2和host3上执行上述命令。
(3) 生成密码对
直接回车几次,可在默认路径~/.ssh/下生成私钥idrsa公钥idrsa.pub。
分别在host1,host2和host3上执行上述命令
(4) 生成authorized_keys
将host2、host3的公钥传到host1上。
在host2上输入
在host3上输入
以上命令目前还需要输入目标机用户密码。
在host1上输入
查看idrsa.pub.host2、idrsa.pub.host3是否已经传输过来。
生成authorized_keys。
给authorized_keys修改权限
利用scp把该文件传送到host2、host3的.ssh/下
(5) 验证
测试在host1下输入
应该都不需要密码。 这三个互联都应该不需要密码。
(1) 关闭防火墙和SELinux
#/sbin/service iptables stop
该命令可以关闭防火墙,但是当重启后,防火墙会重新开启,输入下面的命令,让防火墙在重启后也不会开启。
#chkconfig --level 35 iptables off
关闭SELINUX
#vim /etc/selinux/config
编辑,令SELINUX=disabled。保存退出。
立即生效。
分别在host1,host2和host3上执行上述命令。
(2) 修改SSH配置文件
#vim /etc/ssh/sshd_config
找到下列行 去掉注释井号#
RSAAuthentication yes //字面意思..允许RSA认证 PubkeyAuthentication yes //允许公钥认证 AuthorizedKeysFile .ssh/authorized_keys //公钥存放在.ssh/au..文件中
保存退出。
修改后需要重启ssh
#/etc/initd/sshd restart
分别在host1,host2和host3上执行上述命令。
(3) 生成密码对
$ ssh-keygen -t rsa
直接回车几次,可在默认路径~/.ssh/下生成私钥idrsa公钥idrsa.pub。
分别在host1,host2和host3上执行上述命令
(4) 生成authorized_keys
将host2、host3的公钥传到host1上。
在host2上输入
$scp /home/hadoop/.ssh/id_rsa.pub hadoop@host1:~/.ssh/id_rsa.pub.host2
在host3上输入
$scp /home/hadoop/.ssh/id_rsa.pub hadoop@host1:~/.ssh/id_rsa.pub.host3
以上命令目前还需要输入目标机用户密码。
在host1上输入
$cd ~/.ssh/ $ls
查看idrsa.pub.host2、idrsa.pub.host3是否已经传输过来。
$ cat id_rsa.pub >> authorized_keys $ cat id_rsa.pub.host2 >> authorized_keys $ cat id_rsa.pub.host3 >> authorized_keys
生成authorized_keys。
给authorized_keys修改权限
#chmod 644 authorized_keys
利用scp把该文件传送到host2、host3的.ssh/下
#scp authorized_keys hadoop@host2:~/.ssh/ #scp authorized_keys hadoop@host3:~/.ssh/
(5) 验证
测试在host1下输入
$ssh host2 $exit $ssh host3 $exit
应该都不需要密码。 这三个互联都应该不需要密码。
相关文章推荐
- nginx反向代理异步传输模式(原理)
- 日历月份日期显示错误,修改
- CodeIgniter学习笔记(十五)——CI中的Session
- Java多线程当中的violate
- C# 一个进程调用另外一个进程并传入参数
- MFC CView中添加CListCtrl控件的方法
- 机器学习技法总结(六)Decision Tree Hypothesis
- JS高级学习历程-15
- 关于C语言书籍推荐:深入学习c语
- OpenHCI - Data Transfer Types
- 【Ajax】脑补一下 ajax 的options
- Apache Common下的工具类介绍
- Log4j – 如何配置多个logger?
- Maven 生命周期
- [LeetCode] Valid Number
- 花生壳二级域名怎么用
- 初学python、Django
- swift错误: Type "xxx" does not confirm to protocol "BooleanType"
- ZH奶酪:编程语言入门经典100例【Python版】
- linux /proc/stat 文件说明