百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>服务器> linux下的软件防火墙iptables——法则的定义与删除-linux运维
分享文章到:

linux下的软件防火墙iptables——法则的定义与删除-linux运维

发布时间:11/01 来源:未知 浏览: 关键词:
对于ipitables防火墙的介绍,以及怎样查看法则及清算法则等,在以前的一篇文章中已经讲述了,今天这里是演示怎样拟定防火墙的法则。 对于ipitables防火墙的介绍,以及怎样查看法则及清算法则等,在以前的一篇文章中已经讲述了,今天这里是演示怎样拟定防火墙的法则。由于工作中,主要会对filter链拟定法则,所以这里我们主要也以fitler链做演示。

预备工作

拟定法则前,我们第一关闭firewalld办事、开启iptables办事,然后革除已有的法则。

# systemctl stop firewalld
# systemctl start iptables
# iptables -F
# iptables -X
# iptables -Z

新增法则链

对于iptables的增加法则链,选项非常繁多,下面我们看根本用途:

iptables [-t tables] -A|I 链名 [-i|o 网络接口] [-m state] [--state 数据包状态] \
> [-p 网络协定]  [-s 源地址 --sport 端口范畴] [-d 指标地址 --dport 端口范畴] \
> -j [ACCEPT|DROP|REJECT]

选项与参数:

  • -A|I 链名 A表示在已有法则后增加法则,而I则是在最前面插入法则

  • -i|o 网络接口 i表示数据包进入的阿谁网络接口,需要和INPUT或PREROUTING链配合运用;o表示数据包出去的阿谁接口,需和OUTPUT链配合运用

  • -p 网络协定 常见的有tcp、upd、icmp以及all

  • -m state 数据包的状态

  • --state 数据包状态 常见的状态有INVALID(无效的数据包)、ESTABLISHED(已经成功连贯的状态)、NEW(创建立的数据包)、RELATED(新连贯与现有连贯相干联)

  • -s 源地址 地址可以是ip地址,如192.168.1.110 或网络地址192.168.1.0/24

  • -d 目的地址

  • -j 背面接操纵,常见的有ACCEPT(承受)、DROP(丢弃)、REJECT(拒绝)

针对ip、网络、网卡接口的法则拟定

下面,给出几个法则链案例。我们允许从192.168.1.110发来的数据、拒绝192.168.1.111发来的数据。

# iptables -A INPUT -s 192.168.1.110 -j ACCEPT
# iptables -I INPUT -s 192.168.1.111 -j DROP

# iptables -vnL
Chain INPUT (policy ACCEPT 33 packets, 3048 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DROP       all  --  *      *       192.168.1.111        0.0.0.0/0           
    0     0 ACCEPT     all  --  *      *       192.168.1.110        0.0.0.0/0           
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 18 packets, 1844 bytes)
 pkts bytes target     prot opt in     out     source               destination

允许192.168.1.0/24网络地址拜访

# iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT
# iptables -vnL
Chain INPUT (policy ACCEPT 29 packets, 2328 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DROP       all  --  *      *       192.168.1.111        0.0.0.0/0           
    0     0 ACCEPT     all  --  *      *       192.168.1.110        0.0.0.0/0           
    0     0 ACCEPT     all  --  *      *       192.168.1.0/24       0.0.0.0/0           
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 15 packets, 1460 bytes)
 pkts bytes target     prot opt in     out     source               destination

思索一个题目,192.168.1.111的数据包是会被承受还是会拒绝。从INPUT首先条法则看是会被拒绝,但从最后一条看,会承受。答案是会被拒绝,当知足其中一条法则时,就不会再走下面的法则了,所以说法则链的次序也是非常重要的。

继续看案例:只有是当地回环地址lo都允许

# iptables -A INPUT -i lo -j ACCEPT

针对端口的法则拟定

将进入当地的21端口数据包都阻挠掉

# iptables -A INPUT -i eth0 -p tcp --dport 21 -j DROP

将1024至65534之间的端口都开放,可以用 端标语:端标语 来表示一段陆续的端标语

# iptables -A INPUT -i eth0 -p tcp --dport 1024:65534 -j ACCEPT

下面来看两个个综合性的法则

本机的3306端口,不合错误192.168.1.0/24这个网络开放。

本机的ssh办事,不承受192.168.1.0/24这个网络的1024:65535端口的数据包

# iptables -A INPUT -i eth0 -s 192.168.1.0/24 -p tcp --dport 3306 -j DROP
# iptables -A INPUT -i etc0 -p tcp -s 192.168.1.0/24 \
> --sport 1024:65535 --dport 22 -j DROP

针对数据包的连贯状态的法则拟定

数据包常见的状态有INVALID(无效的数据包)、ESTABLISHED(已经成功连贯的状态)、NEW(创建立的数据包)、RELATED(新连贯与现有连贯相干联)。

针对ESTABLISHED以及RELATED状态的数据包全都承受,针对INVALID状态的数据包全部丢弃

# iptables -t filter -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
# iptables -A INPUT -m state --state INVALID -j DROP

删除法则链

删除法则链根本和增加法则链一致,只不外-A换成-D即可,下面我们一起来删除几条法则。

# iptables-save
# Generated by iptables-save v1.4.21 on Sun Nov 15 22:36:41 2020
*filter
:INPUT ACCEPT [4:1920]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [16:1380]
-A INPUT -s 192.168.1.111/32 -j DROP
-A INPUT -s 192.168.1.110/32 -j ACCEPT
-A INPUT -s 192.168.1.0/24 -j ACCEPT
……

# iptables -t filter -D INPUT -s 192.168.1.111/32 -j DROP
# iptables -D INPUT -s 192.168.1.110/32 -j ACCEPT

注:以上对于iptables的设定只会保留到内存中去,重新启动办事后系统后,这些设定将消散。所以,只有不把本人阻挠在外状况下,请只管训练吧

若想保留法则的话,请输入/usr/libexec/iptables/iptables.init save来保留。

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有150人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板