Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。
日常无论测试环境还是生产环境,在进行多台服务器(集群)安装配置的时候,经常需要对集群内服务器SSH访问做免密码设置。比如Hadoop、HBase等集群的安装配置,或者多台服务器为便于后续运维也需要做SSH免密配置。
结合近期搭建测试环境的过程,对如何快速给多台服务器做相互SSH访问免密配置做一个说明。主要分为几个步骤:修改主机名称、配置汇聚服务器的秘钥、汇聚其他服务器秘钥、拷贝汇聚秘钥文件、生成know_hosts文件、拷贝know_hosts文件。
1、集群规划
主机IP | 主机名称 |
10.141.93.101 | dmz01 |
10.141.93.102 | dmz02 |
10.141.93.103 | inside01 |
10.141.93.104 | inside02 |
10.141.93.105 | inside03 |
10.141.93.106 | inside04 |
10.141.93.107 | inside05 |
10.141.93.108 | inside06 |
10.141.93.109 | inside07 |
10.141.93.110 | inside08 |
10.141.93.111 | inside09 |
10.141.93.112 | inside10 |
10.141.93.113 | inside11 |
10.141.93.114 | inside12 |
10.141.93.115 | inside13 |
10.141.93.116 | inside14 |
10.141.93.117 | inside15 |
10.141.93.118 | inside16 |
该集群共有18台服务器,划分为DMZ区2台,INSIDE区16台。主要用于web服务器和应用服务器、数据库、缓存等。为了部署应用、管理集群服务器方便,将18台服务器做SSH互访免密码配置。
2、修改主机名称
无论初装系统或云主机,其主机名称“localhost”或“VM_75_173_centos”都不容易进行区分服务器作用。所以便于安装、部署、维护方便,会重新修改主机名称hostname。
修改主机名称可以使用下面命令:
hostnamectl set-hostname inside01
使用上述命令修改主机名称后重新ssh登陆,即可看到主机名称已经修改。
3、配置汇聚服务器秘钥
此处所谓汇聚服务器就是选定集群中的一台服务器,然后其他服务器与其做SSH免密码信任。本文选定dmz01(10.141.93.101)作为汇聚服务器。关系图如下所示:
其他服务器向dmz01做SSH登陆免密码信任配置。此处dmz01就是汇聚服务器。
配置汇聚服务器秘钥的命令如下所示:
[root@dmz01 ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): [Enter键]
Enter passphrase (empty for no passphrase): [Enter键]
Enter same passphrase again: [Enter键]
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
43:0d:08:18:ec:9e:d6:1f:ea:5f:04:30:0f:66:26:41 root@dmz01
The key's randomart image is:
+--[ RSA 2048]----+
关键词:Linux集群内SSH免密码访问的迅速设置办法。