基于密钥的连接:实现不输入密码登录远程主机,是相对于用户来说的
公钥(公钥)与私钥(私钥)
——是通过一种加密算法得到的一个密钥对
——公钥是密钥对中公开的部分。公钥由本人公开,用于加密和验证签名,是给别人用的。
——私钥则是非公开的部分。私钥用来进行解密和签的名,给自己用。
——通过这种算法得到的密钥对能保证在世界范围内是唯一的。
——使用这个密钥对的时候,如果用其中一个密钥加密一段数据,必须用另一个密钥解密。
——当该用户发送文件时,用私钥签名,别人用他给的公钥解密,可以保证该信息是由他发送的。即数字签名。
——当该用户接受文件时,别人用他的公钥加密,他用私钥解密,可以保证该信息只能由他接收到。可以避免被其他人看到。
——如果是对称加密算法就一样,如果是非对称加密算法,公钥和私钥是不一样的。
注:如果你想在远程连接某台机器不输入密码的话,那么就将自己的公钥拷贝给它。
如果对方改密码了,不影响访问,因为文件里存的不是密码,是指纹信息字符串,就不走密码验证了。
如果想互相访问无密码,那么就互相把公钥给对方即可。
具体实验:
实验环境:
node1:192.168.0.100 node2:192.168.0.102
2,在node1生成密钥对
[oracle@leopard ~]美元ssh - keygen rsa - t
生成rsa公共/私有密钥对。
输入文件中保存的关键(/home/oracle/. ssh/id_rsa): & lt;——空
创建目录/home/oracle/. ssh。
输入密码(没有密码空):& lt;——空
再次输入相同的密码:& lt;——空
你一直保存在/home/oracle/.ssh/id_rsa.识别
您的公钥一直保存在/home/oracle/.ssh/id_rsa.pub。
指纹的关键是:
1 f: b8: c3: c0:8c: 69: a4:76:02:38:1a: 1 E:艾德:06:06:30 oracle@leopard.uplook.com
关键的randomart p_w_picpath是:
+——[RSA 2048] - - - - - +
| E,,,,,,,,|
| o . .,,,,,,,|
|=+ . .,,,,,,|
| + + + o=,。,,,|
| . .+ o=+ S。,,,|
| . .+,o o。,,,|
|,,,+。,,|
|,,,,。,,|
|,,,,,,,,|
+ - - - - - - - - - - - - - - - - - - +
(oracle@leopard . ssh) $ pwd
/home/oracle/sh
(oracle@leopard . ssh) $ ls
id_rsa(私钥),id_rsa . pub(公钥)
#使用证书登录ssh
, ssh - keygen生成公私钥
,一路回车
,进入~/. ssh
, ssh-copy-id - id_rsa。酒吧root@192.168.0.102
,,,即将公钥存放到了172.16.5.88的~/sh/authorized_keys目录下。
4,测试:
(oracle@leopard . ssh) ssh 192.168.0.102美元,实现无密码连接
最后登录:2015年4月14日13:21:57星期二从192.168.0.100
[oracle@localhost ~]美元,