通过Xshell使用密钥对远程登录Linux服务器 – 21运维
通知: .-运维QQ交流群:534829726 欢迎加入。

通过Xshell使用密钥对远程登录Linux服务器

linux 21运维 590浏览 0评论

21运维原创,转载请注明出处。

Linux系统服务器的登录方式最常见的无非通过ssh进行用户名、密码登录或者采用密钥登录,其他方式这里不进行讨论。

安全起见,我们管理linux系统服务器,很少采用root直接登录且禁用root登录并修改了ssh端口,设置跳板机或者进行iptables安全设置等措施,或者采用更为安全的密钥对进行登录服务器。本文简单记录下通过Xshell使用密钥对登录Linux服务器。

平台:Centos 6.8_x86_64

有两个方法生成密钥对,步骤简单说下并分别做步骤操作记录:
方案一:
1,登录Linux服务器通过ssh-keygen生成密钥
2,将生成的公钥追加到~/.ssh/authorized_keys
3,将私钥下载到本地并导入到客户端软件,进行密钥登录。
方案二:
1,通过Xshell生成密钥对。
2,将生成的公钥追加到~/.ssh/authorized_keys
3,客户端选中生成的key(私钥),进行密钥登录。

一,Linux服务器自己生成密钥对实现密钥登录服务器的方法步骤说明。
1,登录Linux服务器通过ssh-keygen生成密钥

[root@21yunwei /]# ssh-keygen 
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:
d0:75:a6:ec:88:0f:02:7b:c3:10:20:eb:c9:a5:3e:e9 root@21yunwei
The key's randomart image is:
+--[ RSA 2048]----+
|o..       . o    |
|.. .   . o +     |
|. o.  . . o      |
|o +=   o o       |
| =. = o S .      |
|. .. o o         |
| +      .        |
|. .              |
| E               |
+-----------------+

终端输入命令ssh-keygen三次回车即可完成。完成后看到一组密钥对:

id_rsa      #私钥
id_rsa.pub  #公钥

2,将生成的公钥追加到~/.ssh/authorized_keys

[root@21yunwei .ssh]# cat  id_rsa.pub  >> ~/.ssh/authorized_keys
[root@21yunwei .ssh]# chmod 600  authorized_keys

3,将私钥下载到本地并导入到客户端软件,进行密钥登录。
将私钥id_rsa下载到本地。 通过客户端登录之前,我们需要将linux服务器的ssh配置更改下,启用密钥登录:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

启用之后重启ssh服务器。
设置xshell导入刚才的私钥进行密钥登录,这里我下载的id_rsa改成了名字21yunwei.pem,这个可以根据自己的实际情况进行重命名,便于后续知道哪个密钥对应哪个服务器。

1
好了,新建主机通过这个密钥登录服务器,已经OK。

二,通过Xshell生成密钥对实现密钥登录服务器的方法步骤说明。
1,通过Xshell生成密钥对。
打开xshell,到菜单“工具”–“新建用户密钥生成向导”进去生成密钥对。
1

3
填写密钥信息:
1
注意:这里可以填写密钥名称,以便区分是哪个主机的密钥,这里我们以21yunweinew为名字,避免和上个方法的密钥冲突。

下一步,可以查看公钥:
5
保存为文件,也可以复制。我这里直接是保存为文件21yunweinew.pub,并将这个文件上传到了服务器的.ssh目录中。
2,将生成的公钥追加到~/.ssh/authorized_keys
cat  21yunweinew.pub   >>  authorized_keys
3,客户端选中生成的key(私钥),进行密钥登录。

1

测试连接,已经可以登录服务器,设置完成。

 

说明:这里的测试机是以root用户为例测试的,生成环境一般是禁用root登录。这个方法针对非root 用户一样是可以实现,只不过是将密钥对中的公钥,添加到对应的这个用户~/.ssh/authorized_keys中就可以了。

转载请注明:21运维 » 通过Xshell使用密钥对远程登录Linux服务器

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址