ssh免密登录服务器
一、免密登录原理
免密登录原理通过RSA公开密钥算法的一种应用。RSA是公开密钥密码体制的一种使用不同的加密密钥与解密密钥,“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制(非对称加密) 。在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然解密密钥SK是由公开密钥PK决定的。
通俗的来说就是同时生成公钥和私钥,私钥自己保存,公钥发给其他人。
二、配置ssh
1.生成密钥
进入~目录下,生成一对密钥,使用rsa通用密钥算法,这时需要有三次回车;
ssh-keygen -t rsa
2.生成后文件介绍
这时出现几个文件,id_rsa.pub(publilc)公钥,id_rsa私钥,known_hosts是上几步输入ssh 192.168.41.102 产生的文件;
known_hosts | 记录ssh访问过计算机的公钥(public key) |
id_rsa | 生成的私钥 |
id_rsa.pub | 生成的公钥 |
authorized_keys | 存放授权过的无密登录服务器公钥(后面会提到) |
3.将公钥复制到远程服务器
ssh-copy-id -i ~/.ssh/id_rsa.pub user@localhost
其中user是用户名,localhost是目标服务器ip
4.ssh 效果展示
命令 ssh 连接其他机器,发现不需要密码
如果此时不行,则还需要在服务器电脑上执行指令
chmod 600 ~/.ssh/authorized_keys
再测试即可