首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sshd中的PermitrootLogin no,但sshd -T显示允许登录是

sshd中的PermitrootLogin no,但sshd -T显示允许登录是
EN

Stack Overflow用户
提问于 2017-07-03 08:43:19
回答 1查看 1.2K关注 0票数 0

因此,我在/etc/ sshd _config中设置了“ssh”,并重新启动了sshd服务,但是根用户仍然可以通过ssh登录。

进一步研究表明,运行时配置与sshd_config文件不同:

代码语言:javascript
复制
[root@CEBECOM-Hq5AT03 ~]# grep PermitRootLogin /etc/ssh/sshd_config
PermitRootLogin no
[root@CEBECOM-Hq5AT03 ~]# service sshd restart
Redirecting to /bin/systemctl restart  sshd.service
[root@CEBECOM-Hq5AT03 ~]# sshd -T |grep -i permitrootlogin
permitrootlogin yes

我也试着重新启动机器,但是我仍然可以用root登录.

有什么想法吗?

编辑:我有更多的信息。

我发现我必须将PermitRootLogin放在Match指令之前,这样它才能正常工作:

代码语言:javascript
复制
# here it works
PermitRootLogin no
Match Group sFTP
    ChrootDirectory /sftp/salsftp
    ForceCommand internal-sftp
    AllowTcpForwarding no

# here it doesn't work
# PermitRootlogin no

我找不出为什么它会这样。

EN

回答 1

Stack Overflow用户

发布于 2017-07-03 09:12:12

啊,好的,我知道了。来自sshd_config手册页:

Match引入一个条件块。如果匹配线上的所有条件都满足,则下面一行的关键字将覆盖配置文件的全局部分中设置的关键字,,直到另一条匹配行或文件的末尾。

因此,如果我将PermitRootlogin放在匹配之后,这将被视为匹配配置的一部分。由于根不在sFTP组上,所以忽略了PermitRootLogin指令。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44881185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档