xshell密钥远程登录管理服务器

发布时间 2023-06-06 15:48:08作者: 郭德纲又打人了嘿

1.生成公钥(Pubic Key)与私钥(Private Key):

Xshell自带有用户密钥生成向导,如下图所示:点击菜单栏的工具->新建用户密钥生成向导 
这里写图片描述

生成密钥参数

这里写图片描述

生成公钥对

这里写图片描述

用户密钥信息

这里写图片描述

点击下一步,保存公钥信息,另存为文件,将来上传到服务器中使用。

这里写图片描述

点击完成,用户私钥自动导入xshell,点击完成后,如图所示。

这里写图片描述

注: 
1、公钥已经另存为,保存到电脑中。 
2、如果没有弹出上面的窗口,可以选择菜单栏的工具->用户密钥管理者,打开用户密钥这个窗口。 
3、选中刚才生成的私钥,点击右侧的导出按钮,如果换电脑或者重装系统了,重新导入私钥即可。

导出密钥时,需要输入之前输入的密钥密码,完成导出。

这里写图片描述

2.添加公钥(Pubic Key)到远程Linux服务器

使用到Xshell登录到服务器,进入到“/root/.ssh/”目录,运行rz命令(如果没有rz命令,运行yum install lrzsz安装),将生成的公钥文件id_rsa_2048.pub发送到服务器,然后运行如下命令,将公钥(Public Key)导入到“authorized_keys”文件:

[root@localhost ~]# cd /root
[root@localhost ~]# mkdir .ssh
[root@localhost ~]# cd .ssh
[root@localhost .ssh]# rz
[root@localhost .ssh]# cat id_rsa_2048.pub >> authorized_keys
[root@localhost .ssh]# chmod 600 authorized_keys 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

3、配置Xshell使用密钥认证方式登录到服务器:

新建会话连接

这里写图片描述

点击“用户身份验证”,选择私钥,配置用户密钥信息,输入私钥密码

这里写图片描述

4、连接服务器

5、问题

centos系统默认关闭SELinux,导致无法连接成功,提示“所选的用户密钥未在远程主机上注册,请再试一次”

解决方法:关闭SELinux。

操作方法:

查看SELinux状态:

1、/usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态 
SELinux status: enabled 
2、getenforce ##也可以用这个命令检查

关闭SELinux:

1、临时关闭(不用重启机器): 
setenforce 0 ##设置SELinux 成为permissive模式 
##setenforce 1 设置SELinux 成为enforcing模式 
2、修改配置文件需要重启机器: 
修改/etc/selinux/config 文件 
将SELINUX=enforcing改为SELINUX=disabled 
重启机器即可

6、说明

私钥,在Xshell里也叫用户密钥 
公钥,在Xshell里也叫主机密钥

from:http://blog.csdn.net/bjnihao/article/details/52325322