win10自带SSH免密登录Linux

0 前言
使用win10自带的SSH工具登录Linux,不需要每次都输入密码。网上找了很多教程才找到合适的,重新整理和操作并记录下来,给相同需求的小伙伴提供参考。(所有的操作都是在win10的CMD命令行)

1 生成公钥文件(win10)
1.1 键盘输入"win + R",再输入"cmd",在命令提示符上输入以下指令:

ssh-keygen -t rsa
win10自带SSH免密登录Linux_第1张图片
1.2 提示选择路径时,直接回车,会自动选择默认路径。

1.3 提示输入密码时,直接回车,不要输入密码。
win10自带SSH免密登录Linux_第2张图片
出现以下页面代表生了密钥
win10自带SSH免密登录Linux_第3张图片
2 上传公钥文件(win10)
2.1 找到公钥文件的路径

第1步出现“Your public key has been saved in C:\Users\Lenovo/.ssh/id_rsa.pub.”,所以公钥文件的路径是"C:\Users\Lenovo/.ssh/id_rsa.pub"
win10自带SSH免密登录Linux_第4张图片
2.2 上传。在命令提示符上输入以下命令,即可把公钥文件上传到linux服务器对应的路径下。

scp C:\Users\Lenovo/.ssh/id_rsa.pub [email protected]:~/.ssh

3 重命名公钥文件和修改文件权限(win10的cmd上登录linux)
3.1 登录linux,此时仍需要密码登陆

ssh [email protected]
(对应自己的用户和ip)
win10自带SSH免密登录Linux_第5张图片
win10自带SSH免密登录Linux_第6张图片
3.2 重命名公钥文件。

输入以下命令重命名公钥文件

mv .ssh/id_rsa.pub .ssh/authorized_keys
注意:这一步的目的是把id_rsa.pub中的内容添加到authorized_keys中去。也可以直接复制和粘贴内容。

3.3 修改文件权限

chmod 600 .ssh/authorized_keys
chmod 700 .ssh

4 修改SSH配置文件(Linux)
这个配置文件一般是只读文件,需要root权限

sudo vim /etc/ssh/sshd_config
win10自带SSH免密登录Linux_第7张图片
保证这三句不被注释掉,如果没有则添加新的对应的语句,我需要添加"RSAAuthentication yes"

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
保存退出。

5 重新启动SSH服务(Linux)
sudo service sshd restart
6 测试免密登录(win10)
在命令提示符上输入

ssh [email protected]
win10自带SSH免密登录Linux_第8张图片
可以看出,不需要输入密码就可以登录到linux啦!

7 最后
感谢微软,知乎和其他网友的分享。

你可能感兴趣的:(ssh,linux,服务器)