我使用的是 Linux Mint 18,这是我在学校学期大部分时间都在使用的发行版。我的任务是对 sshd_config 文件进行一些调整,包括将监听端口更改为 444、只允许协议 2、只允许自己登录而不允许名为“otheraccount”的其他用户登录、不允许 root 登录、禁用帐户登录使用空密码,并创建欢迎横幅。使用 sudo 并保存 sshd_config 文件后,我继续尝试使用 sudo /etc/init.d/ssh restart 重新启动 ssh,但出现错误。
错误显示“重新启动 ssh(通过 systemctl):ssh.service 的 ssh.serviceJob 失败,因为控制进程退出并显示错误代码。有关详细信息,请参阅“systemctl status ssh.service”和“journalctl -xe”。在此消息下方显示红字“失败!”
答案1
本例中的问题是SELinux
(安全增强型 Linux)阻止 ssh 在该端口上运行。
要解决该问题,请使用以下命令:
semanage
1) 使用以下命令更改 ssh 服务的类型上下文
semanage port -a -t ssh_port_t -p tcp 444
2)重启ssh
服务
systemctl restart sshd && systemctl status sshd