Chinaunix首页 | 论坛 | 博客
  • 博客访问: 167216
  • 博文数量: 31
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 425
  • 用 户 组: 普通用户
  • 注册时间: 2014-10-13 17:05
文章分类

全部博文(31)

文章存档

2016年(11)

2015年(20)

我的朋友

分类: LINUX

2015-05-27 21:56:44


        发现好久不用都丢了。赶紧记录下来。
1、以root用户登录,更改ssh的配置文件/etc/ssh/sshd_config

RSAAuthentication yes # 启用 RSA 认证
 PubkeyAuthentication yes # 启用公钥私钥配对认证方式
 AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径
 重启SSH服务: service sshd restart

2、以无密码访问的用户执行如下命令建立公钥和私钥,提示输入时直接回车。
 
[root@10vps bash]# 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:
67:47:f9:2b:73:0c:8e:f1:e9:60:3d:cd:da:80:79:50 root@10vps
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|             .   |
|            E    |
|           o .   |
|        S = o .  |
|         o @ * . |
|          * @ *  |
|         . + O   |
|            o .  |
+-----------------+
默认公钥文件/root/.ssh/id_rsa.pub
默认私钥文件/root/.ssh/id_rsa
.ssh文件夹如果不存在,需要手动创建,并将权限改为700

三、如果要和其他机器建立互信、让其他机器无密码访问本机,需要将其他机器的公钥拷贝到本机,并追加到文件/root/.ssh/authorized_keys,然后修改该文件权限为600.


四、SSH无密码验证的原理:
Master作为客户端,要实现无密码公钥认证,连接到服务器Salve上时,需要在Master上生成一个密钥对,包括一个公钥和一个私钥,而后将公钥 复制到所有的Salve上。当Master通过SSH链接到Salve上时,Salve会生成一个随机数并用Master的公钥对随机数进行加密,并发送 给Master。Master收到加密数之后再用私钥解密,并将解密数回传给Salve,Salve确认解密数无误之后就允许Master进行连接了。这 就是一个公钥认证过程,期间不需要手工输入密码,重要的过程是将Master上产生的公钥复制到Salve上。



阅读(2164) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~