文章目录
- 1.在Windows上生成公钥和私钥
- 2.将公钥中的内容复制到linux服务器
- 3.确认linux服务器开启了允许SSH免密登录
- 4.确认免密登录配置成功
ssh提供了安全的身份认证的策略,在免密登录之前,首先需要一对公钥和私钥。
客户端拿着私钥,服务端拿着公钥,属于非对称加密。
私钥客户端自己拿着不在网络上传输,公钥可以网络传输存在服务器上,登录的时候用户拿私钥进行加密,内容发送给服务器,服务器对公钥进行解密,成功解密就告诉客户端建立链接。
1.在Windows上生成公钥和私钥
打开命令行,执行如下命令
ssh-keygen.exe -t rsa
一路enter键确认,最后会在C:\Users{你的用户名}.ssh目录下生成两个文件,id_rsa和id_rsa.pub,其中
id_rsa 私钥文件
id_rsa.pub 公钥文件
2.将公钥中的内容复制到linux服务器
authorized_keys文件中文件详细位置位于 ~/.ssh/authorized_keys,如果没有这个文件可以手动创建(vi authorized_keys),并确认authorized_keys文件权限为600,.ssh目录权限为700。
chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh
3.确认linux服务器开启了允许SSH免密登录
确认linux服务器/etc/ssh/sshd_config配置文件中开启了允许SSH免密登录。默认是开启的
主要就是确认是否有下面这一行,并且没有被注释。
PubkeyAuthentication yes
4.确认免密登录配置成功
在Windows上打开Windows Terminal或者命令提示符,使用ssh连接linux服务器,输入yes回车,即可免密登录成功。