0
点赞
收藏
分享

微信扫一扫

Windows SSH服务器指定域用户名访问

是她丫 2022-05-10 阅读 80

一台windows AD域中的服务器,需要指定域用户通过ssh来访问。

服务器版本为windows server 2016,没有像win10和windows server 2019一样集成openssh,下载了openssh安装上,通过设置sshd_config文件来实现指定域用户访问的功能。

sshd_config配置文件路径在C:\ProgramData\ssh\下:

Windows SSH服务器指定域用户名访问_openssh

在最后一行加上AllowUsers user_name@domain_name

重启sshd服务

Windows SSH服务器指定域用户名访问_openssh_02

测试发现不成功,我所设置的域用户格式是:

XXX.XXX@XXX.com

结果域的administrator账号无法登录,而像XXX.XXX@XXX.com这样用户名带.号的也不行,但是像XXX@XXX.com这样用户名没有带点的居然能登录的

微软docs这篇文章​​https://docs.microsoft.com/zh-cn/windows-server/administration/openssh/openssh_server_configuration​​

说要用user?domain*的格式来避免与Linux的格式冲突(openssh移植自linux)

但是这种格式也不生效啊。

最后是发现把sshd_config最后面的

Match Group administrators
AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

这两行给注释掉:

#Match Group administrators
# AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

这样AllowUsers这个条目才生效,终于能只使用指定的域用户名来登录了

然后我发现以下三种格式都能成功的:

ssh -p port user@domain@IP

ssh -p port domain\user@IP

ssh -p port user@IP ——这个省略了域名的竟然也成功了

它们其实全部转换成了 域名\用户名@主机 这样的格式

对了,openssh在windows事件查看器里有单独的日志的,排错的时候可以看看

   Windows SSH服务器指定域用户名访问_openssh_03


举报

相关推荐

0 条评论