解决 CentOS 修改 SSH 端口出错 error: Bind to port 1024 on 0.0.0.0 failed: Permission denied.

基本上所有 VPS 商家的 SSH 端口都是默认的 22,有时候就会出现被暴力 SSH 破解的问题,为了解决这个问题,比较方便快捷的方法就是修改默认的 SSH 端口。今天老王照常修改 SSH 端口时,提示错误:error: Bind to port 1024 on 0.0.0.0 failed: Permission denied.,这个错误是由于 selinux 导致的,本文分享下解决办法。

一、问题描述与原因

如何修改 SSH 端口可以参考这篇教程:《Linux修改SSH默认22端口,指定SSH端口的方法

今天老王在一台 Linode 的 VPS 上修改完 sshd_config 后(CentOS 7 系统),在操作 service sshd restart 重启 SSH 服务时,提示错误:

Job for sshd.service failed because the control process exited with error code. See "systemctl status sshd.service" and "journalctl -xe" for details.

运行 journalctl -xe 查看错误日志如下:

-- Unit sshd.service has begun starting up.
sshd[12291]: error: Bind to port 1024 on 0.0.0.0 failed: Permission denied.
sshd[12291]: error: Bind to port 1024 on :: failed: Permission denied.
sshd[12291]: fatal: Cannot bind any address.
systemd[1]: sshd.service: main process exited, code=exited, status=255/n/a
systemd[1]: Failed to start OpenSSH server daemon.

这个问题是由于 selinux 引起的,需要修改 selinux 中的 SSH 端口。

二、解决办法

解决办法就是修改 selinux 中的 SSH 端口,解决步骤如下:

1、安装修改工具

yum -y install policycoreutils-python

2、查看 selinux 中的 SSH 端口(输出默认的端口 22)

semanage port -l | grep ssh

3、新增目标端口

semanage port -a -t ssh_port_t -p tcp 1024

4、重启 SSH 服务

service sshd restart

这样就可以重启 SSH 服务成功了,SSH 端口也就修改成功了。

赞(5)
关注我们
未经允许不得转载:老王博客 » 解决 CentOS 修改 SSH 端口出错 error: Bind to port 1024 on 0.0.0.0 failed: Permission denied.

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址