`
jameswxx
  • 浏览: 777852 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

iptable使用

阅读更多

linux下IPTABLES设置详解

我们来设置一个filter表的防火墙

1. 查看本机关于IPTABLES的设置情况

[root@tp ~]# iptables -L -n
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
Chain RH-Firewall-1-INPUT (0 references)
target    prot opt source              destination
ACCEPT all  --  0.0.0.0/0 0.0.0.0/0
ACCEPT icmp --  0.0.0.0/0 0.0.0.0/0 icmp type 255 
ACCEPT esp  --  0.0.0.0/0 0.0.0.0/0
ACCEPT ah  --  0.0.0.0/0 0.0.0.0/0
ACCEPT udp  --  0.0.0.0/0 224.0.0.251 udp dpt:5353 
ACCEPT udp  --  0.0.0.0/0 0.0.0.0/0 udp dpt:631 
ACCEPT all  --  0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT    tcp  --  0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 
ACCEPT    tcp  --  0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:80 
ACCEPT    tcp  --  0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:25 
REJECT all  --  0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited 

能看出我在安装linux选择了有防火墙并且开放了22,80,25端口

如果你在安装linux时没有选择启动防火墙是这样的

[root@tp ~]# iptables -L -n
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  
什么规则都没有.

2. 清除原有规则

不管你在安装linux时是否启动了防火墙如果你想设置属于自己的防火墙那就清除目前filter的所有规则.
[root@tp ~]# iptables -F      清除预设表filter中的所有规则链的规则
[root@tp ~]# iptables -X      清除预设表filter中使用者自定链中的规则
我们在来看一下
[root@tp ~]# iptables -L -n
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

什么都没有了吧和我们在安装linux时没有启动防火墙是相同的.(提前说一句这些设置就像用命令设置IP相同重起就会失去作用)怎么保存.

[root@tp ~]# /etc/rc.d/init.d/iptables save

这样就能写到/etc/sysconfig/iptables文件里了.写入后记得把防火墙重起一下才能起作用.

[root@tp ~]# service iptables restart
目前IPTABLES设置表里什么设置都没有了那我们开始我们的设置吧

3. 设定预设规则

[root@tp ~]# iptables -p INPUT DROP
[root@tp ~]# iptables -p OUTPUT ACCEPT
[root@tp ~]# iptables -p FORWARD DROP

上面的意思是当超出了IPTABLESfilter表里的两个链规则(INPUT,FORWARD)不在这两个规则里的数据包怎么处理呢那就是DROP(放弃).应该说这样设置是非常安全的.我们要控制流入数据包

而对于OUTPUT也就是流出的包我们不用做太多限制而是采取ACCEPT也就是说不在着个规则里的包怎么办呢那就是通过.

能看出INPUT,FORWARD两个链采用的是允许什么包通过OUTPUT链采用的是不允许什么包通过.

这样设置还是挺合理的当然你也能三个链都DROP但这样做我认为是没有必要的而且要写的规则就会增加.但如果你只想要有限的几个规则是如只做WEB服务器.还是推荐三个链都是DROP.

:如果你是远程SSH登陆的话当你输入第一个命令回车的时候就应该掉了.因为你没有设置所有规则.
怎么办去本机操作呗!

4. 添加规则

首先添加INPUT,INPUT链的默认规则是DROP所以我们就写需要ACCETP(通过)的链

为了能采用远程SSH登陆我们要开启22端口.

[root@tp ~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
[root@tp ~]# iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT

 (:这个规则如果你把OUTPUT 设置成DROP的就要写上这一部好多人都是望了写这一部规则导致始终无法SSH.在远程一下是不是好了.

其他的端口也相同如果开启了web服务器,OUTPUT设置成DROP的话同样也要添加一条链:

[root@tp ~]# iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT 其他同理.)

如果做了WEB服务器开启80端口.
[root@tp ~]# iptables -A INPUT -p tcp --dport 80 -j ACCEPT

如果做了邮件服务器开启25,110端口.
[root@tp ~]# iptables -A INPUT -p tcp --dport 110 -j ACCEPT

[root@tp ~]# iptables -A INPUT -p tcp --dport 25 -j ACCEPT

如果做了FTP服务器开启21端口

[root@tp ~]# iptables -A INPUT -p tcp --dport 21 -j ACCEPT
[root@tp ~]# iptables -A INPUT -p tcp --dport 20 -j ACCEPT

如果做了DNS服务器开启53端口

[root@tp ~]# iptables -A INPUT -p tcp --dport 53 -j ACCEPT

如果你还做了其他的服务器需要开启哪个端口照写就行了

上面主要写的都是INPUT凡是不在上面的规则里的DROP

允许icmp包通过也就是允许ping
[root@tp ~]# iptables -A OUTPUT -p icmp -j ACCEPT (OUTPUT设置成DROP)
[root@tp ~]# iptables -A INPUT -p icmp -j ACCEPT  (INPUT设置成DROP)

允许loopback!(不然会导致DNS无法正常关闭等问题)
IPTABLES -A INPUT -i lo -p all -j ACCEPT (如果是INPUT DROP)

直接执行命令:/etc/init.d/iptables stop   关闭防火墙

<!--EndFragment-->
分享到:
评论

相关推荐

    iptable使用iptable使用

    iptableiptableiptableiptableiptableiptableiptable

    LINUX iptable应用手册.doc

    LINUX iptable应用手册

    iptable_使用实例

    多个实用的linux iptable实例应用。让你快速掌握好linux iptable的部署使用。

    Iptable 教程全新手册

    IPTable/Netfilter是Linux系统的包过滤体系架构。据此,可以构造防火墙,NAT等系统。本资源是一个客户端(Iptable)的使用手册。

    linux iptable

    linux iptable 防火墙(Firewall)、网址转换(NAT)、数据包(package)记录、流量统计,这些功能全是Linux核心里的Netfilter子系统所提供的,而iptables是控管Netfilter的唯一工具程序

    模拟超时、低带宽测试神器之Iptable

    本文将详细介绍 Iptable 的使用方法和原理,并探讨其在模拟超时、低带宽测试中的应用。 背景 ---- 在多模块、多节点构成的在线系统中,业务运行时,模块或子系统之间难免会出现响应超时的问题。例如,在银行钱包...

    iptable+完整版.pdf

    iptable+完整版,江iptable相关的东西

    用iptable做端口映射

    用iptable做端口映射 用iptable做端口映射

    防火牆工具 — iptable

    防火牆工具 — iptable ,ppt版本,希望对大家有用!

    iptable 中文指南

    iptable 中文指南 iptable 中文指南

    redhat_iptable详解

    redhat iptable AS 详解 配置 安装,超级详细,可以解决所有LINUX配置问题

    iptable防火墙课程设计

    iptable防火墙课程设计 本课程设计主要讨论了iptables防火墙的原理、配置、语法和测试方案。iptables是 LINUX操作系统中的一款防火墙软件,通过安装特定的防火墙内核,LINUX操作系统会对接收到的数据包按一定的策略...

    LINUX iptable应用手册

    iptable能够为Unix、Linux和BSD个人工作站创建一个防火墙,也可以为一个子网创建防火墙以保护其它的系统平台。iptable只读取数据包头,不会给信息流增加负担,也无需进行验证。要想获得更加好的的安全性,可以将其和...

    linux防火墙iptable命令.pdf

    linux防火墙iptable命令.pdf

    iptable防火墙

    IP tables防火墙的详细见解,描述了IPtables防火墙的使用和作用

    iptable网络转发

    2小时玩转iptable

    iptable-turorial

    非常好的iptable学习资料,iptable就应该从这里学起,跟随大师的脚步了解防火墙的配置

    linux 2.6 iptable分析

    在内核空间,iptables 使用一系列数据结构来存储和管理规则。关键的数据结构包括 `net` 结构体、`xt_table` 和 `ipt_entry`。 **net结构体与xt_table** 1. **net结构体**:在内核中,`net` 结构体代表了一个网络...

    Iptable 的配置

    iptable的配置,有详细的示例,希望对大家有所帮助

    iptable安装文件

    iptable 的安装程序,,请大家研究一下

Global site tag (gtag.js) - Google Analytics