为SecureCRT配置密钥验证,实现免密登录远程Linux服务器

本实例以普通用户zhangsan远程连接Linux服务器为例。

一、生成密钥对

在Linux服务器上为普通用户zhangsan远程连接服务器制作密钥对,执行命令如下:

[root@Server ~]# su  -  zhangsan		#切换到zhangsan身份登录
[zhangsan@Server ~]$ ssh-keygen			#生成密钥
Generating public/private rsa key pair.
Enter file in which to save the key (/home/zhangsan/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 		#输入密码,默认为空
Enter same passphrase again: 				#确认密码
Your identification has been saved in /home/zhangsan/.ssh/id_rsa	#私钥文件
Your public key has been saved in /home/zhangsan/.ssh/id_rsa.pub	#公钥文件
The key fingerprint is:
SHA256:JSrgdLX77zo/bl24uvBlgzPRoZ6H44TFemV9qDiZm5k [email protected]
The key's randomart image is:
+--------[RSA 3072]-------+
|     ...o.       	|
|    . .+..  .    	|
|   o  o.B... .   	|
|    *.oO.*...    	|
|   + *+ S. ..    	|
|    . E+ =..     	|
|      oo* ..+   	|
|       +o+.+.+   	|
|       .o .++ .  	|	
+-------[SHA256]-- ------+

二、在服务器上安装公钥

以root身份登录服务器,执行以下命令,将上面生成的公钥信息追加到文件authorized_keys中

[root@Server ~]# cd  /home/zhangsan/.ssh
[root@Server .ssh]# cat  id_rsa.pub  >>  authorized_keys

三、设置 SSH,允许密钥验证
以root身份登录服务器,编辑 /etc/ssh/sshd_config 文件,确保“PubkeyAuthentication”前面的注释符号#已删除,且值设置为yes,其它默认不用改动,如下所示。

[root@server ~]# vim  /etc/ssh/sshd_config 

……此处省略文件原有部分内容……
PubkeyAuthentication yes

最后,重启 SSH 服务,使修改配置生效,命令如下

[root@Server ~]# systemctl  restart  sshd

四、下载私钥文件

将在第一步中生成的私钥文件(/home/zhangsan/.ssh/id_rsa)下载到Windows主机中,操作步骤如下:

首先通过SecureCRT客户端以root或者zhangsan身份登录服务器,如下图所示。

为SecureCRT配置密钥验证,实现免密登录远程Linux服务器_第1张图片

然后依次打开SecureCRT的菜单File-->Connect SFTP Session,如下图所示。

为SecureCRT配置密钥验证,实现免密登录远程Linux服务器_第2张图片

打开如下图所示的SFTP连接。

为SecureCRT配置密钥验证,实现免密登录远程Linux服务器_第3张图片

在SFTP窗口中,依次执行以下命令,将私钥文件(/home/zhangsan/.ssh/id_rsa)下载到Windows的某个目录,比如D盘根目录。

lcd  d:/
cd  /home/zhangsan/.ssh
get  id_rsa

成功执行上述命令后,检查Windows主机的D盘根目录,确保存在id_rsa文件。

五、配置密钥登录

在SecureCRT客户端,新建一个连接,或者修改现有连接属性(Properties),如下图所示。

为SecureCRT配置密钥验证,实现免密登录远程Linux服务器_第4张图片

打开如下图所示对话框,依次输入Hostname、Username、勾选认证方式为PublicKey、单击“Properties…”按钮,在打开的对话框中,选择上一步下载的id_rsa私钥文件,最后一路单击“OK”按钮直接关闭所有对话框。

为SecureCRT配置密钥验证,实现免密登录远程Linux服务器_第5张图片

六、测试验证

直接双击SecureCRT左侧的连接,如若免密连接成功,则配置OK。

你可能感兴趣的:(openEuler,linux,服务器,运维)