centos7开通SSH免密码登录

SSH介绍

SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

SSH原理:节点A要实现无密码公钥认证连接到节点B上时,节点A是客户端,节点B是服务端。需要在客户端A上生成一个密钥对,包括一个公钥和一个私钥,而后将公钥复制到服务端B上。当客户端A通过ssh连接服务端B时,服务端B就会生成一个随机数并用客户端A的公钥对随机数进行加密,并发送给客户端A。客户端A收到加密数之后再用私钥进行解密,并将解密数回传给B,B确认解密数无误之后就允许A进行连接了。这就是一个公钥认证过程,其间不需要用户手工输入密码。重要过程是将客户端A公钥复制到B上。

准备

操作系统为:centos-release-7-5.1804.el7.centos.2.x86_64

三台机器

机器名 IP
master 192.168.0.128
slave1 192.168.0.129
slave2 192.168.0.130

检查是否安装SSH

[root@slave1 ~]# rpm -qa |grep ssh
libssh2-1.4.3-10.el7_2.1.x86_64
openssh-clients-7.4p1-16.el7.x86_64
openssh-7.4p1-16.el7.x86_64
openssh-server-7.4p1-16.el7.x86_64

已经安装里SSH,如果没安装的话,使用yum install ssh安装。

在hosts里添加各机器名和IP

在hosts里添加各机器名和IP的映射后,就可以通过机器名访问对应的机器,不需要记忆和输入复杂的IP了。
在文件/etc/hosts文件的末尾添加如下内容:

192.168.0.128 master
192.168.0.129 slave1
192.168.0.130 slave2

生成公私钥

回到家目录,执行ssh-keygen -t rsa,然后一路回车,在家目录下生成.ssh文件夹,其中包括公私钥文件。

[root@slave1 ~]# cd ~
[root@slave1 ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
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:
SHA256:QuZWoxNQTWlFd5/wHmGiO/aQJH97sExwWO8gOzT38WI root@slave1
The key's randomart image is:
+---[RSA 2048]----+
|    ...o.+o .+.o |
|     .  +  .+.*.o|
|      +.o. O + *.|
|     + + .= X = +|
|      * S  X +E+.|
|     . o  . O.+. |
|             = . |
|              .  |
|                 |
+----[SHA256]-----+
[root@slave1 ~]# 

在另外两台机器上也执行同样的操作

生成authorized_keys文件

在master的.ssh目录下创建authorized_keys文件,把三台机器的公钥(id_rsa.pub)复制进去。

通过SSH访问

下载就可以通过ssh + 机器名免密码登录其他机器了。

[root@slave2 ~]# ssh master
The authenticity of host 'master (192.168.0.128)' can't be established.
ECDSA key fingerprint is SHA256:VWkIQqhsAv3JSSYIPhVakh7bJZHzPA6xNH2mnwoJSko.
ECDSA key fingerprint is MD5:da:31:b0:ae:86:00:d3:93:af:04:f0:2e:02:4b:b4:31.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'master,192.168.0.128' (ECDSA) to the list of known hosts.
Last login: Mon Jun  4 15:20:34 2018 from 192.168.0.1
[root@master ~]# 
[root@master ~]# 
[root@master ~]#

猜你喜欢

转载自blog.csdn.net/wangganggang3168/article/details/80568049
今日推荐