Ssh 修改端口 error Bind to port xxx on failed Permission denied
Linux修改ssh Port端口后,无法启动ssh访问。
具体修改 /etc/ssh/sshd_config 里的 Port 端口,然后查日志后出现:
error: Bind to port 77 on 0.0.0.0 failed: Permission denied.
最后发现是SELinux的问题,关闭SELinux的两种方法
然后重启ssh访问即可。
1 永久方法 – 需要重启服务器
修改/etc/selinux/config文件中设置
SELINUX=disabled
然后重启服务器。
2 临时方法 – 设置系统参数
使用命令setenforce 0
附:
setenforce 1 设置SELinux 成为enforcing模式
setenforce 0 设置SELinux 成为permissive模式
如果又想不关闭SELINUX,又想让ssh修改的端口生效:
- 安装semanage
yum -y install policycoreutils-python
- 查看selinux中sshd当前的端口
[root@BabyishRecent-VM ~]# semanage port -l | grep ssh
ssh_port_t tcp 22
- 在selinux中添加端口
[root@BabyishRecent-VM ~]# semanage port -a -t ssh_port_t -p tcp 3389
[root@BabyishRecent-VM ~]# semanage port -l | grep ssh
ssh_port_t tcp 3389, 22
- 重启sshd服务
[root@BabyishRecent-VM ~]# systemctl restart sshd
[root@BabyishRecent-VM ~]# netstat -tunlp |grep sshd
tcp 0 0 0.0.0.0:3389 0.0.0.0:* LISTEN 25333/sshd
tcp6 0 0 :::3389 :::* LISTEN 25333/sshd
- 防火墙放行修改后的端口
[root@BabyishRecent-VM ~]# firewall-cmd --add-port=3389/tcp --permanent
success
[root@BabyishRecent-VM ~]# firewall-cmd --reload
success