欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

基于Xshell使用密钥方式连接远程主机

程序员文章站 2022-06-02 13:10:36
基于xshell使用密钥方式连接远程主机,具体内容如下 连接远程主机,就验证身份而言,一般有两种方式,一种是通过用户密码;另一种通过公钥的方式(public key)。...

基于xshell使用密钥方式连接远程主机,具体内容如下

连接远程主机,就验证身份而言,一般有两种方式,一种是通过用户密码;另一种通过公钥的方式(public key)。

基于Xshell使用密钥方式连接远程主机

图1、xshell支持验证登录用户的方式

下面就使用public key的方式来实现连接,通过工具ssh-kengen生成密钥对。

注意:操作之前需要ping通本机和目的主机(如果ping不通,可能的原因是防火墙、selinux没关闭,或者网关设置有问题等)

使用xshell,这里使用的是xshell manager 5,目的主机为centos6,将需要连接的远程主机称为目的主机。

目的主机安装ssh服务端,并开启

[root@node1 ~]$ yum install -y openssh-server   # 安装openssh服务端
[root@node1 ~]$ yum install -y openssh-clients  #安装openssh客户端,可以不安装 
[root@node1 ~]$ service sshd start     # 临时开启sshd服务
[root@node1 ~]$ chkconfig sshd on      # 永久开启sshd服务,服务器重启也生效
[root@node1 ~]$service sshd status     # 查看sshd服务运行状态
openssh-daemon (pid 1384) 正在运行...  # 显示正在运行

生成ssh密钥对(包括私钥和公钥)

[root@node1 ~]$ (umask 0077; ssh-keygen)  # 生成ssh密钥对,并将权限设置为600
generating public/private rsa key pair.
enter file in which to save the key (/root/.ssh/id_rsa): # 回车
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:
fd:72:10:50:a6:7d:83:c7:93:d2:26:3d:12:0e:38:2f root@node1
the key's randomart image is:
+--[ rsa 2048]----+
|  .o.+  |
|  o b * . |
|  o. o % |
|  e .. o + |
|  .s o  |
|   o  |
|   . o |
|   o  |
|     |
+-----------------+
[root@node1 ~]$ cd .ssh/
[root@node1 .ssh]$ ll # 查看密钥/公钥对信息,权限都为600
总用量 8
-rw-------. 1 root root 1675 5月 21 14:26 id_rsa     # 私钥
-rw-------. 1 root root 392 5月 21 14:26 id_rsa.pub # 公钥
[root@node1 .ssh]$ 

修改sshd连接配置文件vim /etc/ssh/sshd_config

passwordauthentication no  # 不允许密码验证登录
pubkeyauthentication yes   # 允许公钥验证登录
authorizedkeysfile .ssh/id_rsa.pub # 指定公钥文件路径

将ssh密钥对导出到本机,建议创建一个目录专用放置密钥对

#]sz id_rsa
#]sz id_rsa.pub

重载sshd服务

[root@node1 .ssh]$ service sshd reload
重新载入 sshd:      [确定]

使用xshell连接

ssh root@ip

基于Xshell使用密钥方式连接远程主机

图2、选择密钥文件

基于Xshell使用密钥方式连接远程主机

图3、导入私钥并确定

注意:点击确定之后还要重新连接一次

基于Xshell使用密钥方式连接远程主机

图4、连接成功

客户端使用私钥去验证,而远程主机使用公钥验证。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。