7月9号 第7天 ----iptables学习

    

由于最近频繁使用Linux,所以仔细的学习了一下Linux防火墙的相关知识,首先我们了解一些基本的知识。

  当我们的计算机接入网络之后,就有许许多多的数据包进入,离开,或者经过我们的网络,而防火墙就是用来控制这些数据包的经过的。这些数据包会经过一些相应的规则链,比如要进入你的计算机的数据包会首先进入 INPUT 链,从我们的计算机发出的数据包会经过 OUTPUT 链,如果一台计算机做一个网络的网关(处于内网和外网两个网络连接的两台计算机,这两台计算机之间相互通讯的数据包会经过这台计算机,这台计算机即相当于一个路由器),可能会有很多数据经过这台计算机,那么这些数据包必经 FORWARD链, FORWARD 链即数据转发链。

下面我们来分析一些Linux防火墙iptables是如何工作的,假如我们要访问一个网站,我们会对该域名进行一个请求,这些数据包就会经过OUTPUT链,在请求发出之前,Linuxd的内核会在OUTPUT链中检查有没有相应的规则适合这个数据包,如果没有特定的规则,OUTPUT链还有默认的规则,有 ACCEPT(接受),REJECT(拒绝),DROP(丢弃,直到超时)。如果得到允许,请求就发出了。

    # iptables –L  [-t filter]

这个命令是用来显示当前防火墙的配置命令。通过显示的结果我们可以知道,iptables有三条链分别是 INPUT,OUTPUT,FORWARD。

其中INPUT 是外部数据要经过我们主机的第一个关卡。

OUTPUT是你的主机数据向外传输的关卡

FORWARD 是转发,在NAT时才会用到

Linux的默认防火墙策略是 默认全部允许,拒绝特别的

我们可以使用

# iptables –P[INPUT/OUTPUT/FORWARD] [ACCEPT/DROP]更改防火墙的配置

#iptables –[X/Z/F/L]

 

其中: X:清除链

       F:清除规则

       Z 将链的计数浏览清零

基本配置语法

iptables [-t filter] [-AI INPUT,OUTPUT,FORWARD] [-io interface]

[-p tcp,udp.icmp,all] [-s ip/nerwork] [--sport ports]

[-d ip/netword] [--dport ports] [-j ACCEPT DROP]

 

  其中A是添加,I是插入 ,io指的是数据要进入或者出去说要经过的端口,p是你说要指定的协议,-s指源地址,--sport来源端口,-d和-s相识,只不过他指的是目标地址,也可以是IP域名和网络, --dport指的是目标端口。 -j执行参数

例子:

1 如我要来自己 l0 接口的数据全部接受,我们可以写成这样:

iptables -A INPUT -i lo -j ACCEPT

2 如果我们想接受 192.168.2.6 这个 IP 地址传来的数据我们可以这样写

iptablse -A INPUT -i eth1 -p tcp -s 192.168.2.6 -j ACCEPT

3 如果我们要拒绝来自己 192.168.2.0/24 这个网的 telnet 连接

iptablse -A INPUT -i eth1 -p udp -s 192.168.2.0/24 --sport 23 –j DROP

转载于:https://www.cnblogs.com/Qbright/archive/2012/07/10/2584112.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值