Windows如何免密登录Linux服务器 - 详细指南

silverwq
2022-09-22 / 0 评论 / 275 阅读 / 正在检测是否收录...

生成密钥

使用ssh-keygen命令生成密钥,会有提示,一路默认就好了(如果已经有密钥对,就不需要这个一步骤,自己创建相关的文件即可)

ssh-keygen

生成之后会在用户的根目录生成一个 “.ssh”的文件夹

cd ~/.ssh
# 目录的权限必须是700
chmod 700 /root/.ssh/

进入后,“.ssh”会有以下几个文件

authorized_keys id_rsa id_rsa.pub known_hosts

authorized_keys文件,存放远程免密登录的公钥,主要通过这个文件记录多台机器的公钥,执行以下命令,将公钥添加到该文件里

# 一定要用这个命令,不要用手工赋值到这个文件进去,不然很有可能不行!!!
cat id_rsa.pub >> authorized_keys
# 文件权限必须是600
chmod 600 /root/.ssh/authorized_keys

公钥添加完成之后,公钥就没什么用了,可以删除

rm -rf id_rsa.pub

id_rsa文件文件:是生成的私钥文件,要保存好,放到windows用户目录的.ssh文件夹下
l8cnioms.png
know_hosts文件: 是已知的主机公钥清单,这里没什么用

配置sshd_config

打开配置文件

 vim /etc/ssh/sshd_config

修改以下几处:

PasswordAuthentication no # 这个好像不一定修改为no,也允许输入密码登录
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

修改完成之后,重启sshd服务

service sshd restart

windows登录

完成以上步骤,windows下,就可以免密登录了,如果还是弹出密码输入框,说明公钥或者权限有问题

ssh root@192.168.253.134
0

评论 (0)

取消