Lesson9 Hadoop 完全分布式 主机 SSH 免密登录
之前在利用 scp 和 sync 等进行主机间通信时,每一次都要输入各主机的密码,配置SSH免密登录即可省去该过程。一、 免密登录原理:1. 在主机 A 利用非对称性加密算法生成密钥对,公钥发送给其它主机,私钥保留。2. 主机 A 将公钥发送给 B,即可免密访问 B。3. 主机 A 将数据用私钥加密后发送给 B 。4. B 接收到数据后用 A 给的公钥解密数据。...
之前在利用 scp 和 sync 等进行主机间通信时,每一次都要输入各主机的密码,配置SSH免密登录即可省去该过程。
一、 免密登录原理:
1. 在主机 A 利用非对称性加密算法生成密钥对,公钥发送给其它主机,私钥保留。
2. 主机 A 将公钥发送给 B,即可免密访问 B。
3. 主机 A 将数据用私钥加密后发送给 B 。
4. B 接收到数据后用 A 给的公钥解密数据。
5. B把自己的信息用 A 给的公钥加密后发给 A,A 用自己的私钥解密数据。
二、免密登录配置:
1. 生成密钥对:过程中遇到提示直接按回车即可。
ssh-keygen -t rsa
切换到 home 目录下,即可看到隐藏文件夹 .ssh,进入文件夹,即可看到密钥文件,.pub 文件即为公钥。
重复该过程,包含 NameNode、ResourceManager、Secondary NameNode 等需要进行通信的主机都要生成密钥对。
2. 发送公钥:要将公钥发给主机本身,再发给其它主机。
ssh-copy-id 目标机器
如上述原因,重复该过程。
可以看到之后登录其它主机无需输入密码。
三、 ~/.ssh 下文件功能解析:
密钥生成并发送完毕后在 ~/.ssh 文件夹下可以看到如下四个文件:
其对应功能如下标所示:
authorized_keys | 存放授权过的免密登陆的主机公钥 |
id_rsa | 生成的私钥 |
id_rsa.pub | 生成的公钥 |
known_hosts | 记录ssh访问过的主机的公钥(public key) |
四、关于 Windows 与 Linux 免密登录
1. 确认 Windows 环境变量中添加了 C:\Windows\System32\OpenSSH 文件夹
2. 使用 ssh-keygen 命令在 Windows 中生成公钥,将公钥更名 id_rsa_windows.pub
3. 将公钥发送到 Linux 服务器 /root/.ssh 文件夹下
4. 使用 cat 命令将公钥内容追加如 authorized_keys 文件中
更多推荐
所有评论(0)