Windows ssh免密访问Linux服务器


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回车,即可免密登录成功。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_37924396/article/details/128157414