远程连接linux服务器是我们经常使用到的,这方便我们管理维护linux服务器。为提高linux服务器的安全性,通常我们连接linux服务器是通过密钥对(私钥和公钥,私钥存放在客户端,公钥保存在服务器端)认证的方式进行连接。
Windows远程连接Linux的工具有很多种,比较流行的有SecureCRT、PuTTY、Xshell,本文主要介绍如何使用Xshell生成密钥对的配置和认证。
一、Xshell生成密钥(windows客户端)
1、密钥类型选择RSA,密钥长度2048位
2、生成公钥和私钥
3、设置密钥名称,给该密钥设置用户密码
4、公钥格式选择SSH2-OpenSSH,复制公钥,并保存为文件。
二、上传公钥到Linux服务器
1、将生成的公钥保存在/root/.ssh/authorized_keys文件中,该文件的内容和Xshell生成的公钥内容是一样的。
[root@www ~]# mkdir /root/.ssh
[root@www ~]# vim /root/.ssh/authorized_keys
2、修改/root/.ssh/文件和authorized_keys的权限
[root@www ~]# chmod 700 /root/.ssh/
[root@www ~]# chmod 600 /root/.ssh/authorized_keys
3、编辑/etc/ssh/sshd_config文件,把RSAAuthentication yes和PubkeyAuthentication yes这两行前面#注释去掉,这样就启用了密钥认证方式,把PasswordAuthentication no行yes改为no,作用是禁用口令认证。
[root@www ~]# vim /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
PasswordAuthentication no
4、重启sshd服务,使配置生效
[root@www ~]# service sshd restart
Stopping sshd: [ OK ]
Starting sshd: [ OK ]
三、配置Xshell使用密钥认证方式登录linux服务器
1、打开一个Xshell,选择Public Key,输入用户名,用户密钥选择第一步创建的密钥,密码是用户密钥加密的密码。
2、认证并登录成功
本文转自 HMLinux 51CTO博客,原文链接:http://blog.51cto.com/7424593/1719853