CentOS服务器如何设置才能禁止某个IP段访问?

在服务器运维中,限制特定IP段访问是保障系统安全的基础操作之一,通过精细化控制访问来源,可以有效降低来自恶意网络的攻击风险,保护关键服务和数据,在CentOS系统中,这一功能主要通过其内置的防火墙工具实现,本文将详细介绍如何使用CentOS默认的firewalld防火墙来限制IP段访问。

CentOS服务器如何设置才能禁止某个IP段访问?

理解firewalld与区域概念

firewalld(Dynamic Firewall Manager)是CentOS 7及以上版本默认的防火墙管理工具,它支持动态更新而无需重启服务,其核心概念是“区域”,不同的区域预设了不同的安全级别和规则集。public区域适用于公共网络,默认只允许SSH和DHCPv6客户端流量;而trusted区域则信任所有网络连接,我们的操作通常是在指定区域(如public)内添加规则。

使用富规则限制IP段

firewalld提供了“富规则”功能,允许我们定义非常复杂和精细的防火墙规则,这是限制IP段访问的最佳方式。

操作步骤:

  1. 检查防火墙状态
    确保firewalld服务正在运行。

    systemctl status firewalld
    firewall-cmd --state
  2. 确定活动区域
    查看当前网络接口所在的区域,通常为public

    CentOS服务器如何设置才能禁止某个IP段访问?

    firewall-cmd --get-active-zones
  3. 添加允许特定IP段的规则
    假设我们只允许168.1.0/24这个网段访问服务器的HTTP(80)端口,并拒绝其他所有IP访问,我们需要先添加允许规则。

    firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="80" accept'
    • --permanent: 表示规则永久生效。
    • --zone=public: 指定在public区域操作。
    • --add-rich-rule: 添加一条富规则。
    • family="ipv4": 指定IPv4协议。
    • source address="192.168.1.0/24": 指定源IP地址段。
    • port protocol="tcp" port="80": 指定目标端口和协议。
    • accept: 表示接受(允许)该流量。
  4. 移除服务默认的公开访问
    如果之前已经开放了80端口给所有IP,需要移除它。

    firewall-cmd --permanent --zone=public --remove-service=http
  5. 重新加载防火墙
    使所有永久规则立即生效。

    firewall-cmd --reload

通过以上步骤,就实现了仅允许168.1.0/24网段访问80端口的目的,如果需要拒绝某个IP段,只需将accept改为dropreject即可。

常用命令速查表

为了方便日常操作,下表小编总结了firewalld限制IP段的核心命令:

CentOS服务器如何设置才能禁止某个IP段访问?

功能描述 命令示例
允许IP段访问特定端口 firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="IP/子网掩码" port protocol="tcp" port="端口号" accept'
拒绝IP段所有访问 firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="IP/子网掩码" drop'
移除富规则 firewall-cmd --permanent --zone=public --remove-rich-rule='...'
查看所有富规则 firewall-cmd --list-rich-rules
重新加载防火墙 firewall-cmd --reload

相关问答FAQs

问题1:如何查看当前防火墙所有已配置的规则?
解答: 您可以使用以下命令来全面了解防火墙的当前状态。firewall-cmd --list-all会显示指定区域(默认为当前活动区域)的所有规则,包括允许的服务、端口、富规则等,如果想只查看富规则,可以使用firewall-cmd --list-rich-rules,这两个命令对于排查问题和验证配置是否生效非常有帮助。

问题2:--permanent参数和不加这个参数有什么区别?
解答: 不加--permanent参数的命令(运行时模式)会立即生效,但一旦防火墙服务重启或服务器重启,这些规则就会丢失,而加上--permanent参数(永久模式)的命令会将规则写入配置文件,但不会立即生效,需要执行firewall-cmd --reload来重新加载配置,使其永久生效,最佳实践是,在测试时先不加--permanent,确认无误后,再带上--permanent执行并reload

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
花生壳域名无法访问,具体原因和解决方法?
上一篇 2025-10-04 11:04
CentOS系统怎么修改内网IP地址并永久生效?
下一篇 2025-10-04 11:11

相关推荐

  • CentOS下如何配置LVS的NAT模式实现负载均衡?

    在构建高可用、高性能的网络服务架构时,负载均衡是不可或缺的关键技术,Linux虚拟服务器(LVS)作为一个在Linux内核层面实现的负载均衡解决方案,以其高效、稳定和开源的特性被广泛应用,NAT(Network Address Translation)模式是LVS三种工作模式之一,因其配置简单、对真实服务器要求……

    2025-10-04
    0014
  • 服务器空间租赁_空间

    服务器空间租赁,提供稳定、高速的网络环境。多种配置选择,满足不同需求,24小时技术支持,确保您的业务顺畅运行。立即租用,让您的网站或应用更加安全可靠!

    2024-07-08
    0022
  • 如何配置服务器与交换机之间的连接?

    服务器和交换机之间的配置通常包括物理连接、IP地址分配、VLAN设置和路由配置等步骤。配置交换机时,需登录管理界面或通过命令行接口进行端口设置、安全策略应用及网络协议调整。确保网络设备兼容并按照厂商指南操作是关键。

    2024-08-08
    0012
  • 复杂目标检测深度学习代码_深度学习模型预测

    由于问题没有提供足够的信息,无法生成具体的代码。我可以提供一个通用的深度学习模型预测的步骤:,,1. 导入所需的库和数据集,2. 预处理数据,3. 定义模型结构,4. 编译模型,5. 训练模型,6. 使用模型进行预测,,以下是一个简单的例子,使用Keras库和MNIST数据集进行手写数字识别:,,“python,from keras.datasets import mnist,from keras.models import Sequential,from keras.layers import Dense, Dropout,from keras.utils import np_utils,,# 加载数据,(X_train, y_train), (X_test, y_test) = mnist.load_data(),,# 数据预处理,X_train = X_train.reshape(X_train.shape[0], 1) / 255.0,X_test = X_test.reshape(X_test.shape[0], 1) / 255.0,y_train = np_utils.to_categorical(y_train),y_test = np_utils.to_categorical(y_test),,# 定义模型,model = Sequential(),model.add(Dense(64, activation=’relu’, input_shape=(784,))),model.add(Dense(10, activation=’softmax’)),,# 编译模型,model.compile(loss=’categorical_crossentropy’, optimizer=’adam’, metrics=[‘accuracy’]),,# 训练模型,model.fit(X_train, y_train, validation_data=(X_test, y_test), epochs=10, batch_size=200),,# 使用模型进行预测,predictions = model.predict(X_test),“,,注意:这只是一个基本的例子,实际的深度学习模型可能会更复杂,包括更多的层,不同的激活函数,正则化等。

    2024-06-29
    0080

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信