ssh公钥认证自动登录服务器

基于公钥认证登录服务器可以很好的隐藏服务器的登录密码,特别是多人登录的开发服务器就非常有用了。

1、需要登录的服务器,如果是第一次使用公钥登录,则需要生成本机的公钥和私钥(其实没有必要,主要是在家目录下生成.ssh的隐藏目录,还有其目录下的公钥和私钥以备后用。)

我一般省的麻烦运行 ssh-keygen -b 2048 -t rsa 生成rsa类型的长度为2048的ssh公私钥,然后一路回车下去。ps:如果不放心的可以根据提示过程输入密钥的口令,这样每次使用时需要验证口令。

[root@xxxxxxxxx ~]# ssh-keygen -b 2048 -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Created directory '/root/.ssh'.
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:
43:08:d5:6c:8c:d1:b4:f8:5a:c1:31:43:f2:4c:a9:be root@AY140718160534398661Z
The key's randomart image is:
+--[ RSA 2048]----+
|    ..+XB.       |
|     ..OB=       |
|      ooB        |
|      .o .       |
|     .  S        |
|      .o .       |
|      ..         |
|      E          |
|                 |
+-----------------+

2、从服务器A登录到服务器B。

将服务器A生成的公钥 id_rsa.pub 内的字符串拷贝到服务器B .ssh/authorized_keys文件中。authorized_keys每行由三部分构成,分别由空格隔开。第一部分指明公钥的类型一般是 ssh-rsa ,第二部分是公钥字符串,第三部分是对该公钥的自定义标识,可以不要。

3、从Xshell工具生成私钥登录服务器。

关键是生成Xshell的公钥,然后将公钥粘贴到服务器的authorized_keys文件中,然后客户端登录时选择对应的私钥文件就可以登录了。这样生成公钥:

ssh01 ssh02 ssh03 ssh04 ssh05 ssh06

装载请注明出处:http://www.xiaomastack.com/2014/08/10/linuxserverssh/ 谢谢!

发表评论:

你的电子邮件地址将不会被公开.

42 − = 39