centos7 使用iptables
关闭selinux,不关闭时,iptables不读取配置文件
重启生效
centos7 中默认的防火墙是firewalld,使用iptables需要先关闭firewalld防火墙,安装iptables服务:yum -y install iptables-services
iptables 是centos6中的默认防火墙,建议使用service iptables start 方式启动
常用命令:
iptables -L #查看filter表的iptables规则,包括所有的链。filter表包含INPUT、OUTPUT、FORWARD三个规则链。说明:-L是--list的简写,作用是列出规则。
iptables -n #说明:以数字形式显示规则。如果没有-n,规则中可能会出现anywhere,有了-n,它会变成0.0.0.0/0
iptables -nvL #说明:这个列表看起来更详细,对技术人员更友好。
iptables -nvL --line-number #–line-number找出该条规则的行号。一般是为了通过行号删除规则。
iptables -F #清除所有规则
语法格式:
INPUT:过滤进入主机的数据包
OUTPUT:处理从本机出去的数据包
FORWARD:负责转发流经本机但不进入本机的数据包,起到转发作用
-A:追加到规则的最后一条
-D:删除记录
-I:添加到规则的第一条
-p:规定通信协议,常用协议:tcp、udp、icmp、all
-j:指定跳转的目标,常见的目标:ACCEPT(接收数据包)、DROP(丢弃数据包)、REJECT(重定向,一般不使用会带来安全隐患)
查看iptables 当前规则
添加192.168.7.102可访问80端口:iptables -I INPUT -p tcp --dport 80 -j ACCEPT -s 192.168.7.102
删除192.168.7.87 访问:iptables -D INPUT 1 或者 iptables -I INPUT -p tcp --dport 80 -s 192.168.7.84 -j DROP
保存规则(修改规则后必须写入配置文件,否则重启失效):service iptables save 会将当前的规则写入配置文件 /etc/sysconfig/iptables 中
注意:允许的要在禁止的前面。如果前面禁止192.168.7.102访问,后面允许192.168.7.102访问,以前面为准。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了