基于Linux系统的包过滤防火墙(4)
来源:asp之家 发布时间:2009-09-19 20:21:00
关于ICMP类型的更详细的表述参见RFC792。
2.2 iptables语法
2.2.1 Iptables的优点
→iptables允许建立状态(stateful)防火墙,就是在内存中保存穿过防火墙的每条连接。这种模式对于有效地配置FTP和DNS以及其它网络服务是必要的。
→iptables能够过滤TCP标志任意组合报文,还能够过滤MAC地址。
→系统日志比ipchains更容易配置,扩展性也更好。
→对于网络地址转换(NetworkAddressTranslation)和透明代理的支持,Netfilter更为强大和易于使用。
→iptables能够阻止某些DoS攻击,例如SYS洪泛攻击。
2.2.2 Iptables的规则要素
一条iptables规则基本上应该包含5个要素:
→指定表(table)
→指定操作命令(command)
→指定链(chains)
→指定规则匹配器(matcher)
→指定目标动作(target)
(1)表。Iptables从其使用的3个表而得名,分别是filter、nat、mangle。对于包过滤防火墙只使用filter表。表filter是默认的表,无需显示说明。
(2)操作命令。包括添加、删除、更新等。
(3)链。对于包过滤防火墙可操作filter表中的INPUT链、OUTPUT链和FORWARD链。也可以操作由用户自己定义的自定义链。
(4)规则匹配器。可以指定各种规则匹配,如IP地址、端口、包类型等。
目标动作。当规则匹配一个包时,真正要执行的任务用目标标识。最常用的内置目标分别是:
→ACCEPT表示允许包通过
→DROP表示被丢弃
此外,包过滤防火墙还可以使用扩展的目标:
→REJECT表示拒绝包,丢弃包的同时给发送者发送没有接受的通知。
→LOG表示包的有关信息被记录日志。
→TOS表示改写包的ToS的值。
要使用上述的扩展目标,必须在内核中激活相应选项或者装载了相应的内核模块。
2.2.3 Iptables工具的调用语法
Iptables的语法非常复杂,要查看该工具的完整语法,应该查看其手册页。
Iptables的语法通常可以简化为下面的形式:
Iptables[-t table]CMD[chain][rule-matcher][-j target]
其中:tables为表名,CMD为操作命令,chain为链名,rule-matcher为规则匹配器,target为目标动作。
2.2.4 制定永久性规则
iptables软件包提供了两个命令分别用于保存和恢复规则集。可以使用下在的命令转储在内存中的内核规则集。其中/etc/sysconfig/iptables是iptables守护进程调用的默认规则集文件:
#/sbin/iptables-save >; /etc/sysconfig/iptables
要恢复原来的规则库,需使用命令:
#/sbin/iptables-restore < /etc/sysconfig/iptables
为了使得用iptables命令配置的规则在下次启动机器时还能被使用,有两种主法。
(1)使用iptables的启动脚本实现。Iptables的启动脚本/etc/rc.d/init.d/iptables每次启动时都使用/etc/sysconfig/iptables所提供的规则进行规则恢复,并可以使用如下的命令保存规则:
#service iptables save
(2)在自定义脚本中用iptables命令直接创建规则集。可以直接用iptables命令编写一个规则脚本,并在启动时执行这个脚本。
例如:若规则脚本的文件名为/etc/fw/rules,则可以在启动脚本/etc/rd.d/init.d/rc.local中加入下面的代码:
if[-x /etc/fw/rules];then /etc/fw/rules;fi;
这样,机器每次启动时即可执行该规则脚本。
如果使用此种方式,建议使用ntsysv命令关闭系统的iptables守护进程。
2.3 iptables命令使用举例
2.3.1 链的基本操作
(1)清除所有的规则。通常在开始配置包过滤防火墙之初清除所有的规则,重新开始配置,以免原有的规则影响新的设定。使用如下命令进行:
1) 清除预设表filter中所有规则链中的规则。
#iptables -F
2)清除预设表filter中使用者自定义链中的规则。
#iptables -X
3)将指定链所有规则的包字节记数器清零。
#iptables -Z
(2)设置链的默认策略。一般地,配置链的默认策略有两种方法。
1)首先允许所有的包,然后再禁止有危险的包通过防火墙。即“没有被拒绝的都允许”。这种方法对于用户而言比较灵活方便,但对系统而言,容易引起严重的安全问题。
为此,应该使用如下的初始化命令:
#iptables -P INPUT ACCEPT
#iptables -P OUTPUT ACCEPT
#iptables -P FORWARD ACCEPT
2)首先禁止所有的包,然后再根据需要的服务允许特定的包通过防火墙。即“没有明确允许的都被拒绝”。这种方法最安全,但不太方便。为了使得系统有足够的安全性,一般采用此种策略进行iptables防火墙的配置。
为此,应该使用如下的初始化命令:
#iptables -P INPUT DROP
#iptables -P OUTPUT DROP
#iptables -P FORWAED DROP
3)列出表/链中的所有规则。包过滤防火墙只使用filter表,此表为默认的表,因此可以使用下面的命令列出filter表中所有规则:
#iptables -L
使用上面的命令时,iptables将逆向解析IP地址,这将发费很多时间,从而造成信息出来的非常慢。为了解决这个问题,可以使用下面的带有-n参数的命令(-n参数用于显示数字化的地址和端口):
#iptables -L -n
4)向链中添加规则。下面的语句用于开放网络接口:
#iptables -A INPUT -i lo -j ACCEPT
#iptables -A OUTPUT -o lo -j ACCEPT
#iptables -A INPUT -i eth0 -j ACCEPT
#iptables -A OUTPUT -o eth0 -j ACCEPT
#iptables -A FORWARD -i eth0 -j ACCEPT
#iptables -A FPRWAED -o eth0 -j ACCEPT
5)使用用户自定义链。下面是一个用户自定义链的创建、修改和调用的简单命令序列:


猜你喜欢
- 11月13日,支付宝“免费试用”频道赫然出现一台斯柯达昊锐汽车,网站表示,凡拥有驾照的上海或者浙江的支付宝用户,都可以申请用一周的时间来免费
- 10月14日下午消息,继数月前推出芒果手机游戏乐园之后,湖南卫视金鹰网又推出“芒果游戏乐园”的网络游
- UCenter Home是Comsenz公司发布的一款SNS建站系统,目前最新版本是1.5。最近看到很多站长安装好UCenter Home,
- 在Apache的Access Log中会看到很多如下的访问日志: 127.0.0.1 - - [05/May/20
- 1. mpstat命令1.1 命令格式mpstat [ -A ] [ -u ] [ -V ] [ -I { SUM | CPU | SCPU
- 前言在Linux内核中,为了兼容原有的代码,或者符合某种规范,并且还要满足当前精度日益提高的要求,实现了多种与时间相关但用于不同目的的数据结
- 400 无法解析此请求。 401.1 未经授权:访问由于凭据无效被拒绝。 401.2 未经授权: 访问由于服务器配置倾向使用替代身份验证方法
- 注意:入侵时目标如果是linux服务器,看切忌清理痕迹的时候别忘记history命令的记录哦!1、修改/etc/profile将HISTSI
- 目前中国分类信息网的竞争可以说已经到了白炽化成程.口啤网目前来说还是处于导先地位,当然我今天不来批论这些网站的盈利情况.今天我们来看一下同城
- 1、下载镜像docker pull selenium/hubdocker pull selenium/node-firefoxdocker
- 在入门篇,我们学会了SQL注入的判断方法,但真正要拿到网站的保密内容,是远远不够的。接下来,我们就继续学习如何从数据库中获取想要获得的内容,
- 网络“黑客”张子伟入侵计算机服务器,以删除数据为要挟,索要钱财5000元人民币。12月11日,上海市静安区法院对这起“‘黑客’敲诈案”作出一
- 最近看电脑太多了,少有活动,到处酸痛,看来要多做运动。正好看到这个电脑操,一起运动一下。1、伸伸懒腰,松松骨,每小时都要做 2、推
- 概述Microsoft 的运营技术组(OTG)最近部署了 Microsoft Exchange Server 2003 - 该公司行业领先的
- 09年快乐女生杭州赛区10强解惠清。 09年的快乐女生从300强进60开始前,就有很多网友博友曾疾呼今年的快女将告别前几年的中性时
- 不知道为啥,我的IIS访问asp就这样了。------------------------------------Server Applic
- 最近在Linux下使用第三方库Protobuf时,遇到一个问题:可执行程序在运行时报错:“error while loading share
- 《站长》杂志本期挑选了国内站长界中数十个有一定知名度的站长论坛,经过对数百名站长进行的邮件和电话调查,再加上《站长》编辑部的综合评分,选出国
- 日前,国内著名的ASP开源博客程序PJBLOG程序推出了其诞生四年来的第三个版本PJBLOG3,随着这个V3里程碑式版本的推出,PJBLOG
- 地方门户网站,除了广告还能靠什么盈利?作为一个商业 * 来说,虽说下沙网已拥有了坚实的群众基础,点击率颇高,但即使是这样的人气,也要时刻做好