centos8 新增ssh自定义端口与屏蔽默认22端口。

第一步:修改SSH配置文件(注意是sshd_config而不是ssh_config,多了个d)

vim /etc/ssh/sshd_config
找到“#Port 22”,这一行直接键入“yyp”复制该行到下一行,然后把两行的“#”号即注释去掉,修改成:

Port 22
Port 10086
SSH默认监听端口是22,如果你不强制说明别的端口,”Port 22”注不注释都是开放22访问端口。上面我保留了22端口,防止之后因为各种权限和配置问题,导致连22端口都不能访问了,那就尴尬了。等一切都ok了,再关闭22端口。

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

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

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

semanage port -l|grep ssh
我的系统打印如下:

ssh_port_t tcp 22

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

semanage port -a -t ssh_port_t -p tcp 10086
完成后,再次查看

semanage port -l|grep ssh

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

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

firewall-cmd --permanent --query-port=10086/tcp
打印结果如下:

no

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

firewall-cmd --permanent --add-port=10086/tcp
打印结果如下:

success

重新加载防火墙策略:

firewall-cmd --reload
执行成功后,查看10086端口是否被开启:

firewall-cmd --permanent --query-port=10086/tcp
打印结果如下:

yes

第四步:重启SSH服务和防火墙,最好也重启下服务器

systemctl restart sshd
systemctl restart firewalld.service
shutdown -r now
第五步:尝试通过10086端口登录SSH,或者进入该服务器直接本地访问SSH如下:

ssh root@localhost -p 10086

登录成功后

关闭默认 22端口

firewall-cmd --permanent --zone=public --remove-port=8080/tcp

重启防火墙

systemctl reload firewalld

查看防火墙端口

 firewall-cmd --list-ports

 

posted @   zhoulujun  阅读(11853)  评论(0编辑  收藏  举报
编辑推荐:
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 2 本地部署DeepSeek模型构建本地知识库+联网搜索详细步骤
点击右上角即可分享
微信分享提示