SSH免密登录
1.免密传输的原理,共分为6个阶段,服务器可以是windows或者linux,如下图所示:
假设A服务器要实现对B服务器的免密登录,需要做两件事
(1)A服务器生成密钥对,包括公钥和私钥
(2)将A服务器的的公钥类容注册到B服务器
2.免密登陆的应用场景:
2.1 windows下Git客户端免密登录github
2.2 windows下SSH远程登录工具免密登录linux
2.3 linux之间免密登录
3.操作流程
3.1.1进入/root/.ssh目录
>cd /root/.ssh
3.1.2 执行ssh-keygen -t rsa 命令,三个回车后生成公钥和私钥
>ssh-keygen -t rsa
.ssh文件夹下(~/.ssh)的文件功能解释
known_hosts | 记录ssh访问过计算机的公钥(public key) |
id_rsa | 生成的私钥 |
id_rsa.pub | 生成的公钥 |
authorized_keys | 存放授权过得无密登录服务器公钥 |
3.1.3在cd /root/.ssh目录下执行ssh-copy-id [-i [identity_file]] [user@]machine
ssh-copy-id命令可以把本地的ssh公钥文件安装到远程主机对应的账户下。
达到的功能:ssh-copy-id - 将你的公共密钥填充到一个远程机器上的authorized_keys文件中。
使用模式:ssh-copy-id [-i [identity_file]] [user@]machine。比如:当前linux为hadoop-101,将当前机器的ssh公钥文件安装hadoop-103,采用如下命令。
>ssh-copy-id root@hadoop-103
3.1.4linux之间免密登录
>ssh hadoop-103