ssh免密登录

ssh免密登录:

原理

通过密钥认证登录,首先在自己的服务器上生成公钥和私钥,其次将公钥上传到远程服务中,在于远程服务器建立连接通信时,远程服务器首先会验证该服务器上是否包含请求服务器的公钥,若不包含则需要远程登录的用户输入密码。

步骤

mkdir ~/.ssh


1.如果没有~/.ssh文件夹,则新建一个.ssh文件夹,

 2.在本地生成密钥对(公钥与私钥)

3,将公钥文件id_rsa.pub上传到服务器的.ssh/authorized_keys文件中

1.进入服务器 ~/.ssh文件夹,里边有id_rsa(私钥文件)id_rsa.pub(公钥文件)  
cd ~/.ssh
2.上传文件到服务器中
scp  ~/.ssh/id_rsa.pub root@slave01:~/
3.进入远程服务器,找到上传的id_rsa.pub文件,然后将公钥添加到远程服务器的~/.ssh/authorized_keys文件中
cat ~/id_rsa.pub >> ~./.ssh/authorized_keys

3.或者直接用ssh-copy-id命令,将文件上传到服务器:

ssh-copy-id -i ~/.ssh/id_rsa.pub 服务器用户名@服务器地址
ssh-copy-id是用来将本地公钥拷贝到远程的authorized_keys文件的脚本命令,它还会将身份标识追加到远程服务器的~/.ssh/authorized_keys文件中,并给远程主机的用户目录适当的权限。

4.把专用密钥添加到ssh-agent的高速缓存中:

eval `ssh-agent`
ssh-add
ssh-add -l

5.重启ssh服务

service sshd restart      或者   systemctl  restart  sshd

6. 使用ssh登录远程服务器系统

ssh 服务器用户名@服务器地址

 参考:

https://blog.csdn.net/tanga842428/article/details/71964688

author@nohert
原文地址:https://www.cnblogs.com/gzgBlog/p/14902086.html