xshell密钥远程登录管理服务器
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
本文来自博客园,作者:郭德纲又打人了嘿,转载请注明原文链接:https://www.cnblogs.com/blibli/p/17460757.html