修改SSH服务监听端口,引起服务启动失败原因分析

本文解决SSH服务因端口配置与SELinux规则不符导致的服务启动失败问题。通过调整SELinux规则,确保SSH服务能够正常运行。

某天,对一台服务器修改sshd.config文件,指定SSH服务监听端口,然后重启ssh服务,提示失败。

是什么原因引起的呢,因为SSH服务没有独立日志文件,需要查看 /var/log/messages文件 ,/var/log/secure文件和journalctl -xe 进行分析。

在/var/log/messages文件中没有提示具体原因。

但是通过journalctl -xe 命令可以明确看到提示权限不够。

再次通过查看/var/log/secure文件,也看到权限不够的记录

为什么只修改了SSH服务的监听端口,就会提示权限不够呢?

因为SELinux进行权限管控,

通过semanage port -l | grep ssh 查看SELinux规则中SSH服务的监听端口,看到SELinux默认配置的SSH服务端口为22,与ssh服务配置文件中的端口不一致,所以无法启动服务。

( 如果提示没有semanage命令通过yum install policycoreutils-python -y进行安装)

通过 audit2why分析SELinux日志,可以看到相关的拦截记录

现在知道是因为SELinux的原因引起服务不能启动,那怎么办?

很简单,修改SELinux规则就可以了。

可以通过semanage命令调整ssh服务的端口

现在再次重启SSH服务,一切正常

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值