CentOS7以上系统修改SSH端口号的方法

CentOS7以上系统修改SSH端口号的方法

CentOS目前发展到8了,以前一直使用CentOS6,是因为从centOS7开始,操作的命令就已经有很大的变化,一直以来都懒得换系统,但是按照目前发展的趋势,必须得迈出这一步了。

需要使用新版的系统,那么首先第一步肯定要先进行服务器的基础配置,增强防护,本文就讲解一下CentOS7修改SSH端口的实例;

第一步:修改SSH配置文件

vim /etc/ssh/sshd_config

找到“#Port 22”,键入“yyp”复制一行,修改:

Port 22
Port 10086

SSH默认监听端口是22,先保留了22端口,防止后面出现问题,导致连22端口都不能访问了,设置完成后,再关闭22端口。

增加一个16888端口,大家修改端口时候最好挑10000~65535之间的端口号,10000以下容易被系统或一些特殊软件占用,或是以后新应用准备占用该端口的时候,却被你先占用了,导致软件无法运行。

第二步:如果你关闭了SELinux,可以忽略第二步。

先查看SELinux开放给ssh使用的端口

semanage port -l|grep ssh

如果提示:bash: semanage: command not found

则执行下面命令:

使用yum查找提供此功能的的软件包:yum provides semanage

安装policycoreutils-python软件包:yum install policycoreutils-python -y

然后再执行上面的命令

查阅了相关资料,发现是CentOS8上这个包已经换了一个名称了:

It’s renamed in el8: policycoreutils-python-utils-2.9-9.el8.noarch

于是使用命令yum -y install policycoreutils-python-utils,成功安装semanage:

我的系统打印如下:

ssh_port_t                    tcp      22

可知,SELinux没有给SSH开放16888端口,那么我们来添加该端口:

semanage port -a -t ssh_port_t -p tcp 16888

完成后,再次查看

semanage port -l|grep ssh
ssh_port_t          tcp   22,16888

第三步:如果你关闭了防火墙,可以忽略第三步,话说防火墙不开启太危险了,建议开启。

先查看防火墙是否开启了16888端口:

firewall-cmd --list-all

或firewall-cmd --permanent --query-port=16888/tcp

打印结果如下:

no

表示没有开放16888端口,那么添加下该端口:

firewall-cmd --permanent --add-port=16888/tcp

打印结果如下:

yes

重新加载防火墙策略:

firewall-cmd --reload

执行成功后,查看16888端口是否被开启:

firewall-cmd --permanent --query-port=16888/tcp

打印结果如下:

yes

注意:开启防火墙后,网站有可能无法访问,需要添加一个80端口,才能正常,上面同样的命令,端口改为80即可

第四步:重启SSH服务和防火墙

systemctl restart sshd
systemctl restart firewalld.service

第五步:尝试通过16888端口登录SSH,或者进入该服务器直接本地访问SSH如下:

ssh root@localhost -p 16888

如果成功,说明16888已经完全可以使用了,接下来你就可以根据上述步骤把sshd_config的Port22注释掉!

文章来源于网络或者作者投稿,若有侵权请联系删除,作者:老钟,如若转载,请注明出处:https://www.laoz.net/1077.html

(1)
上一篇 2020 年 07 月 03 日
下一篇 2020 年 08 月 29 日

相关推荐