基于linux下的iptables网络过滤器

iptables是什么?

1,IPTABLES 是与最新的3.5版本Linux内核集成的IP信息包过滤系统。如果Linux系统连接到因特网或LAN服务器或
连接LAN和因特网的代理服务器,则该系统有利于在Linux系统上更好地控制IP信息包过滤和防火墙配置。
2,防火墙在做信息包过滤决定时,有一套遵循和组成的规则,这些规则存储在专用的信息包过滤表中,而这些表集成
在 Linux 内核中。在信息包过滤表中,规则被分组放在我们所谓的链(chain)中。而netfilter/iptables IP信息包过滤系统
是一款功能强大的工具,可用于添加、编辑和移除规则。
3,虽然 netfilter/iptables IP 信息包过滤系统被称为单个实体,但它实际上由两个组件netfilter和iptables组成。
netfilter 组件也称为内核空间(kernelspace),是内核的一部分,由一些信息包过滤表组成,这些表包含内核用来控制信息包
过滤处理的规则集。iptables 组件是一种工具,也称为用户空间(userspace),它使插入、修改和除去信息包过滤表中的规则
变得容易。
4,iptables防火墙策略的规则的匹配顺序是从上往下的,因此要把较为严格,优先级高的策略规则放到前面,以免发生错误。

iptables默认的防火墙,链结构:

这里写图片描述
iptables的表名,链结构:

 表名包括:
    raw:高级功能,如:网址过滤。
    mangle:数据包修改(QOS),用于实现服务质量。
    nat:地址转换,用于网关路由器。
    filter:包过滤,用于防火墙规则。

规则链名包括:
    INPUT链:处理输入数据包。
    OUTPUT链:处理输出数据包。
    FORWARD链:处理转发数据包。
    PREROUTING链:用于目标地址转换(DNAT)。
    POSTOUTING链:用于源地址转换(SNAT)。

动作包括:
    accept:接收数据包。
    DROP:丢弃数据包。
    REDIRECT:重定向、映射、透明代理。
    SNAT:源地址转换。
    DNAT:目标地址转换。
    MASQUERADE:IP伪装(NAT),用于ADSL。
    LOG:日志记录。

启动iptables服务:

[root@desktop Desktop]# systemctl stop firewalld  关闭防火墙
[root@desktop Desktop]# systemctl disable firewalld  开机自动关闭防火墙
rm '/etc/systemd/system/basic.target.wants/firewalld.service'
rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
[root@desktop Desktop]# systemctl start iptables.service  开启iptables服务
[root@desktop Desktop]# systemctl enable iptables.service  开机自动启动iptables服务
ln -s '/usr/lib/systemd/system/iptables.service' '/etc/systemd/system/basic.target.wants/iptables.service'

这里写图片描述

iptables的参数配置:

参数 作用 常用命令
-p 协议 iptables -A INPUT -p tcp
-F 清空规则 iptables -F
-L 查看规则 iptables -nL
-A 追加规则 iptables -A INPUT
-I 插入规则 iptables -I INPUT 1 --dport 80 -j ACCEPT 插入一条规则,原本位置上的规则将会往后移动一个顺位
-D 删除规则 iptables -D INPUT 1(编号)
-s 匹配来源地址 IP/MASK,加叹号!表示除这个IP以外 iptables -A INPUT -s 192.168.1.1
-d 匹配目标地址 iptables -A INPUT -d 192.168.12.1
-i 网卡名称 匹配从这块网卡流入的数据 iptables -A INPUT -i eth0
-o 网卡名称 匹配从这块网卡流出的数据 iptables -A FORWARD -o eth0
-p 匹配协议,如TCP,UDP,ICMP iptables -A INPUT -p tcp
–dport 匹配目标端口号 iptables -A INPUT -p tcp --dport 22
–sport 匹配来源端口号 iptables -A INPUT -p tcp --sport 22
-j 指定的动作 常用的ACTION:DROP:丢弃REJECT:明示拒绝 ACCEPT:接受

操作示例

[root@desktop Desktop]# iptables -nL  查看iptables策略信息
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
[root@desktop Desktop]# iptables -F   刷新iptables
[root@desktop Desktop]# iptables -nL  查看iptables策略信息
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
[root@desktop Desktop]# service iptables save  保存
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]
[root@desktop Desktop]# vim /etc/sysconfig/iptables  查看保存的策略文件
[root@desktop Desktop]# cd
[root@desktop Desktop]# systemctl start httpd  首先打开阿帕其服务才可以进行网页测试

真机和虚拟机测试均可以访问,因为未设置防火墙策略

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值