如何设置CentOS系统以禁用不安全的网络协议和服务

来源:站长工具作者:北京SEO公司头衔:草根站长
导读:本期聚焦于小伙伴创作的《如何设置CentOS系统以禁用不安全的网络协议和服务》,敬请观看详情,探索知识的价值。以下视频、文章将为您系统阐述其核心内容与价值。如果您觉得《如何设置CentOS系统以禁用不安全的网络协议和服务》有用,将其分享出去将是对创作者最好的鼓励。

CentOS作为企业级服务器常用的Linux发行版,默认安装后会启用部分存在安全漏洞风险的网络协议和服务,比如Telnet、FTP、RSH等明文传输协议,以及不必要的RPC、CUPS等服务,这些组件很容易成为攻击者入侵系统的入口。对生产环境的CentOS系统进行安全加固时,禁用这些不安全的网络协议和服务是必不可少的操作步骤。

如何设置CentOS系统以禁用不安全的网络协议和服务

一、识别系统中不安全的网络协议和服务

在禁用操作前,首先需要明确当前系统运行了哪些存在风险的组件,可以通过以下两种方式排查。

1. 查看运行中的服务

使用systemctl工具列出所有正在运行的服务,筛选不必要的高风险服务:

# 列出所有运行中的服务
systemctl list-units --type=service --state=running
# 查看指定服务的状态,比如telnet服务
systemctl status telnet.socket

2. 查看开放的端口

通过ss命令查看系统当前开放的端口,对应端口的监听程序就是运行中的网络服务:

# 查看所有监听的TCP和UDP端口
ss -tulnp

常见的高风险端口包括23(Telnet)、21(FTP)、512-514(RSH相关)、631(CUPS打印服务)等,对应这些端口的服务都需要优先处理。

二、禁用不安全的网络服务

1. 停止并禁用高风险服务

对于确认不需要的不安全服务,先停止当前运行实例,再设置开机不自动启动:

# 停止telnet服务
systemctl stop telnet.socket
# 设置telnet服务开机不启动
systemctl disable telnet.socket

# 停止vsftpd服务(FTP服务)
systemctl stop vsftpd
systemctl disable vsftpd

# 停止cups打印服务
systemctl stop cups
systemctl disable cups

# 停止rsh相关服务
systemctl stop rsh.socket
systemctl stop rlogin.socket
systemctl stop rexec.socket
systemctl disable rsh.socket rlogin.socket rexec.socket

2. 卸载不必要的服务软件包

如果确认后续不会使用这些服务,可以直接卸载对应的软件包,避免误启动:

# 卸载telnet相关包
yum remove telnet telnet-server -y

# 卸载vsftpd
yum remove vsftpd -y

# 卸载rsh相关包
yum remove rsh rsh-server -y

# 卸载cups
yum remove cups -y

三、禁用不安全的网络协议

1. 禁用不安全的传输层协议

部分老旧协议如TLS 1.0、TLS 1.1存在已知安全漏洞,需要在系统层面禁用,以SSH服务为例,修改配置文件限制协议版本:

# 编辑SSH配置文件
vi /etc/ssh/sshd_config
# 找到Protocol行,修改为仅支持SSH 2协议,去除SSH 1相关配置
Protocol 2
# 重启SSH服务生效
systemctl restart sshd

2. 禁用IP转发和源路由等风险网络特性

修改内核参数关闭不必要的网络特性,编辑sysctl配置文件:

# 编辑sysctl配置
vi /etc/sysctl.conf
# 添加以下内容,禁用IP转发、源路由、ICMP重定向等
net.ipv4.ip_forward = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
# 加载配置生效
sysctl -p

四、通过防火墙限制风险端口

即使已经停止了风险服务,也可以通过防火墙进一步限制端口访问,作为额外的安全层:

# 关闭防火墙中风险端口,以firewalld为例
# 移除23端口(Telnet)的开放规则
firewall-cmd --permanent --remove-port=23/tcp
# 移除21端口(FTP)的开放规则
firewall-cmd --permanent --remove-port=21/tcp
# 移除631端口(CUPS)的开放规则
firewall-cmd --permanent --remove-port=631/tcp
# 重新加载防火墙规则
firewall-cmd --reload

五、验证禁用效果

完成所有操作后,需要再次验证风险组件是否已经成功禁用:

# 再次查看运行中的服务,确认风险服务不在列表中
systemctl list-units --type=service --state=running | grep -E "telnet|vsftpd|cups|rsh"
# 再次查看开放端口,确认风险端口没有监听
ss -tulnp | grep -E "23|21|631|512|513|514"

如果以上命令没有返回任何结果,说明不安全的网络协议和服务已经成功禁用,系统安全等级得到提升。

CentOS防火墙配置服务管理网络协议系统安全修改时间:2026-06-22 01:30:18

免责声明:​ 已尽一切努力确保本网站所含信息的准确性。网站内容多为原创整理与精心编撰,观点力求客观中立。本站旨在免费分享,内容仅供个人学习、研究或参考使用。若引用了第三方作品,版权归原作者所有。如内容涉及您的权益,请联系我们处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。AI、前端、编程、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握开发与运维所需的核心技术。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端编程,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。