修改ssh端口的详细步骤(centos7):
step1 修改/etc/ssh/sshd_config
vi /etc/ssh/sshd_config
Port 22 //这行去掉#号,防止配置不好以后不能远程登录,还得去机房修改,等修改以后的端口能使用以后在注释掉
Port 20000 //下面添加这一行
step2 修改firewall配置
firewall添加想要修改的ssh端口:
firewall-cmd --zone=public --add-port=20000/tcp --permanent (permanent是保存配置,不然下次重启以后这次修改无效)
若未启动,请先执行 systemctl start firewalld 启动
reload firewall:
firewall-cmd --reload
查看添加端口是否成功,如果添加成功则会显示yes,否则no
firewall-cmd --zone=public --query-port=20000/tcp
如果是阿里云需要配置安全组规则如下图
step3 修改SELinux
使用以下命令查看当前SElinux 允许的ssh端口:
semanage port -l | grep ssh
解决 linux 下 semanage command not found 的问题
执行 :yum provides /usr/sbin/semanage 或者 yum whatprovides /usr/sbin/semanage
然后 yum -y install policycoreutils-python
如果SELinux未开启则先开启
查看SELinux状态:
1、/usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态
SELinux status: enabled
开启SELinux
修改/etc/selinux/config 文件
将SELINUX=disabled改为SELINUX=enforcing
重启机器即可
添加20000端口到 SELinux
semanage port -a -t ssh_port_t -p tcp 20000
然后确认一下是否添加进去
semanage port -l | grep ssh
如果成功会输出
ssh_port_t tcp 20000, 22
step4 重启ssh
systemctl restart sshd.service
step5 测试新端口的ssh连接
测试修改端口以后的ssh连接,如果成功则将step1里面的port 22 重新注释掉。