HCRM博客

如何在 CentOS 系统中更改端口设置?

在CentOS操作系统中,修改SSH端口是一项常见的任务,旨在提高系统的安全性,默认情况下,SSH使用22端口进行通信,但这一端口常成为黑客攻击的目标,将SSH端口更改为非标准端口可以有效降低被攻击的风险,下面详细介绍如何在CentOS系统中更改SSH端口:

一、登录CentOS服务器

你需要通过SSH远程登录到你的CentOS服务器,如果你已经在服务器的物理控制台上,可以直接进行后续操作。

如何在 CentOS 系统中更改端口设置?-图1
(图片来源网络,侵权删除)

二、修改SSH配置文件

1、打开SSH配置文件:使用文本编辑器(如vi或nano)打开SSH配置文件/etc/ssh/sshd_config

   sudo vi /etc/ssh/sshd_config

2、添加新端口:找到并编辑Port配置项,默认情况下,这一行可能是注释掉的(以#开头),去掉注释符号#,并在下面添加一行新的端口号,建议选择1024到65535之间的端口号,

   #Port 22
   Port 2222

这里保留了22端口作为备用,以防新端口无法连接时仍能通过22端口访问。

3、保存并退出:编辑完成后,按Esc键,输入:wq保存文件并退出编辑器。

三、重启SSH服务

为了使更改生效,需要重启SSH服务:

sudo systemctl restart sshd

或者在某些版本中可能需要使用:

如何在 CentOS 系统中更改端口设置?-图2
(图片来源网络,侵权删除)
sudo systemctl restart sshd.service

四、防火墙配置

如果服务器启用了防火墙(如firewalld),需要放行新的SSH端口:

1、查看防火墙状态

   sudo firewallcmd state

2、如果防火墙已关闭,则启动并设置开机自启

   sudo systemctl start firewalld
   sudo systemctl enable firewalld.service

3、放行新端口:假设新端口是2222,执行以下命令:

   sudo firewallcmd zone=public addport=2222/tcp permanent

4、重新加载防火墙配置

   sudo firewallcmd reload

五、验证端口是否处于监听状态

可以使用netstat命令检查新的SSH端口是否正在监听:

如何在 CentOS 系统中更改端口设置?-图3
(图片来源网络,侵权删除)
netstat ntulp | grep sshd

你应该能看到类似以下的输出,显示新的端口号(如2222)正在监听。

六、测试新端口

使用SSH客户端尝试通过新的端口号连接到服务器,确保一切正常。

ssh username@your_server_ip p 2222

username替换为你的用户名,your_server_ip替换为你的服务器IP地址。

七、关闭Selinux(可选)

在一些情况下,Selinux可能会阻止SSH服务使用新的端口,如果你遇到这种情况,可以考虑暂时关闭Selinux:

1、永久关闭Selinux

   sudo vi /etc/selinux/config

SELINUX=enforcing改为SELINUX=disabled

2、立即关闭Selinux

   sudo setenforce 0

备份配置文件:在进行任何重大更改之前,建议备份相关的配置文件。

测试环境:在实际生产环境中应用更改之前,最好在一个测试环境中进行验证。

安全性:除了更改SSH端口外,还应考虑其他安全措施,如禁用root远程登录、使用密钥认证等。

文档记录:记录你所做的更改,以便将来参考或恢复。

九、相关问答FAQs

Q1: 如果修改SSH端口后无法连接怎么办?

A1: 如果修改SSH端口后无法连接,首先检查以下几点:

确保新的端口号没有与其他服务冲突。

确保防火墙已经放行新的端口。

检查SSH服务的状态,确保它正在运行。

如果仍然无法连接,可以尝试暂时恢复原来的22端口,然后逐步排查问题。

Q2: 如何更改回默认的SSH端口?

A2: 要更改回默认的SSH端口(22),只需按照上述步骤中的相反顺序操作即可,就是删除或注释掉你在/etc/ssh/sshd_config文件中添加的新端口行,然后重启SSH服务和防火墙(如果适用),确保防火墙放行了22端口。

分享:
扫描分享到社交APP
上一篇
下一篇