admin 管理员组

文章数量: 1184232

目录

具体安装教程

常见的坑

Windows中特有的操作:

更改authorized_keys文件权限,不更改则无法通过密钥登录

需要修改sshd_config配置文件

Windows如果本身没有登录密码,则无法使用SSH公钥密钥连接


一、具体安装教程

服务器端方法看这篇

Windows OpenSSH 服务器启用密钥登录 - 知乎https://zhuanlan.zhihu/p/404179039

客户端公钥密钥生成方法详情看这篇

SSH简介及两种远程登录的方法-CSDN博客https://blog.csdn/li528405176/article/details/82810342

客户端公钥密钥进阶一点看这篇

Mac终端 使用ssh密钥登录Linux_mac terminal 密钥登陆-CSDN博客https://blog.csdn/lvtu_rain/article/details/111719491


二、常见的坑

2.1 Windows中特有的操作:


2.1.1 更改authorized_keys文件权限,不更改则无法通过密钥登录

客户端(发起控制端):

​# 远程通过ACL更改文件权限
ssh --% user1@ip icacls.exe "C:\Users\username(替换自己的)\.ssh\authorized_keys" /inheritance:r /grant "Administrators:F" /grant "SYSTEM:F"

服务器端:通过以下命令修改,需要管理员权限

#在服务器端修改authorized_keys文件权限
icacls.exe "C:\Users\username\.ssh\authorized_keys" /inheritance:r /grant "Administrators:F" /grant "SYSTEM:F"

2.1.2 需要修改sshd_config配置文件

需要管理员权限(推荐使用vscode打开编辑,可以快速获取管理员权限)

#配置文件目录:
C:\ProgramData\ssh\sshd_config

使用vscode打开sshd_config文件,搜索后检查并修改以下配置:

#允许公钥授权访问,确保:不被注释
PubkeyAuthentication yes

#授权文件存放位置,确保:不被注释
AuthorizedKeysFile	.ssh/authorized_keys

#(可选)关闭密码登录,提高安全性
PasswordAuthentication no

#注释掉默认授权文件位置,确保:被注释!!!
#Match Group administrators
#       AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

请保持以上3个(或4个条目) “被注释”的情况与以上展示的保持一致

然后在PowerShell(管理员)中重启sshd服务

#重启sshd,需要管理员权限
Restart-Service sshd

这里有大坑!!!Windows默认隐藏C盘目录下的'ProgramData'文件夹

需要在C盘目录下,开启:'查看-隐藏的项目',Windows11同理

2.2Windows如果本身没有登录密码,则无法使用SSH公钥密钥连接

 解决方法:

win+R运行,输入:

secpol.ms

如下图所示:安全设置-本地策略- 安全选项-账户:使用空密码的本地账号……

选择禁用,然后在powershell中restart sshd即可

本文标签: 密钥 工作站 常见 密码 服务器