现象:为保证服务器远程连接的安全性,修改ssh远程端口从默认22端口至其他端口

修改/etc/ssh/sshd_config

vi /etc/ssh/sshd_config

#Port 22 //这行去掉#号

Port 520 //下面添加这一行

重启ssh服务

systemctl restart sshd.service

查看ssh状态

systemctl status sshd.service

Centos 7修改ssh端口启动失败解决办法_远程连接

 

 使用ssh工具连接服务器失败

原因:

服务器操作系统版本为Centos 7

[root@localhost ~]# getenforce

Enforcing

 Centos 7修改ssh端口启动失败解决办法_linux_02

 

 解决方法:

①关闭selinux,修改配置文件

vi /etc/selinux/config

设置SELinux为disable

SELINUX=disabled

保存退出,重启服务器,远程连接正常。

②使用以下命令查看当前SElinux允许的ssh端口:

semanage port -l | grep ssh

添加520端口到SELinux

semanage port -a -t ssh_port_t -p tcp 520

然后确认一下是否添加进去

semanage port -l | grep ssh

如果成功会输出

ssh_port_t tcp 520, 22

重启ssh

systemctl restart sshd.service

不过上述方法仅仅是在ssh中设置端口,还要在防火墙firewalld中放行端口才是

CentOS 7防火墙换用Friewalld了

其实跟iptable一样就命令不一样

这里有个问题如果要添加范围例外端口如1000-2000

语法命令如下:

启用区域端口和协议组合

firewall-cmd [--zone=] --add-port=[-]/ [--timeout=]

此举将启用端口和协议的组合。端口可以是一个单独的端口 或者是一个端口范围。协议可以是tcp或udp。

实际命令如下:

firewall-cmd --zone=public --add-port=520/tcp --permanent 

执行可以成功。

 

作者:运维密码