可以修改/etc/rc.d/boot.local让规则重启后也能生效,如:

/sbin/iptables -F

/sbin/iptables -A INPUT -i eth0 -p tcp --sport 80 -j ACCEPT

/sbin/iptables -A INPUT -i eth0 -p tcp -j DROP

/sbin/iptables -A INPUT -i eth0 -p udp -j DROP

iptables是一个链的方式从前往后判断,如果前面的规则成立就不会往后继续,所以要注意顺序,一般每行对应一条规则。

-A是Append意思,也就是追加

-I是Insert意思,也就是插入

-F表示清除(即删除)掉已有规则,也就是清空。

查看已有的规则,执行命令:iptables -L -n

如(参数-L为list意思,-n表示以数字方式显示IP和端口,不指定-n则显示为名称,如:http即80端口):

# iptables -L -n

Chain INPUT (policy ACCEPT)

target     prot opt source               destination         

ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:443

ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:80

DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           

DROP       udp  --  0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy ACCEPT)

target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)

target     prot opt source               destination 

从可以看到:iptables有三种规则链(Chain),即INPUT、OUTPUT和FORWARD。

INPUT 用于指定输入规则,比如外部是可以访问本机的80端口

OUTPUT 用于指定输出规则,比如本机是否可以访问外部的80端口

FORWARD 用于指定端口转发规则,比如将8080端口的数据转到到80端口

-I和-A需要指定链(Chain)名,其中-I的链名后还需要指定第几条(行)规则。

可通过-D参数删除规则,有两种删除方式,一是匹配模式,二是指定第几条(行)。

也可以通过-R参数修改已有规则,另外-L参数后也可以跟链(Chain)名,表示只列出指定链的所有规则。

-j参数后跟的是动作,即满足规则时执行的操作,可以为ACCEPT、DROP、REJECT和REDIRECT等。

在iptables的INPUT链的第一行插入一条规则(可访问其它机器的80端口):

iptables -I INPUT 1 -p tcp --sport 80 -j ACCEPT

在iptables的INPUT链尾追加一条规则(可访问其它机器的80端口):

iptables -A INPUT -p tcp --sport 80 -j ACCEPT

如果要让其它机器可以访问本机的80端口,则为:

iptables -A INPUT -p tcp --dport 80 -j ACCEPT

插入前:

# iptables -L -n

Chain INPUT (policy ACCEPT)

target     prot opt source               destination         

DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           

DROP       udp  --  0.0.0.0/0            0.0.0.0/0  

插入:

# iptables -I INPUT 1 -p tcp --sport 80 -j ACCEPT

插入后:

# iptables -L -n

Chain INPUT (policy ACCEPT)

target     prot opt source               destination         

ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:80

DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           

DROP       udp  --  0.0.0.0/0            0.0.0.0/0  

追加前:

# iptables -L -n

Chain INPUT (policy ACCEPT)

target     prot opt source               destination         

DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           

DROP       udp  --  0.0.0.0/0            0.0.0.0/0 

追加:

# iptables -I INPUT 1 -p tcp --sport 80 -j ACCEPT

追加后(ACCEPT将不能生效):

# iptables -L -n

Chain INPUT (policy ACCEPT)

target     prot opt source               destination         

DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           

DROP       udp  --  0.0.0.0/0            0.0.0.0/0 

ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:80

iptables简单应用的更多相关文章

  1. iptables简单配置

    iptables简单配置 分类: Linux 安全2010-10-20 16:56 4241人阅读 评论(0) 收藏 举报 input防火墙tcpfilterubuntuservice # iptab ...

  2. iptables简单使用

    1.安装iptables yum install iptables-services 2.iptables简单使用 iptables防火墙文件路径/etc/sysconfig/iptables sys ...

  3. [ 总结 ] web server iptables 简单配置

    [root@server ~]# iptables -F [root@server ~]# iptables -X [root@server ~]# iptables -A INPUT -m stat ...

  4. iptables 简单介绍及应用 Linux防火墙

    iptables 即 Linux防火墙 的简单介绍及使用 iptables生效位置如下图: 其中, 网络防火墙也可以使用一台启用了iptables的Linux主机代替; 路由器或集线器等设施在拓扑中省 ...

  5. iptables 简单配置

    通过命令 netstat -tnl 可以查看当前服务器打开了哪些端口  Ssh代码   netstat -tnl     查看防火墙设置  Ssh代码   iptables -L -n      开放 ...

  6. Linux iptables简单配置

    #!/bin/sh#modprobe ipt_MASQUERADEmodprobe ip_conntrack_ftpmodprobe ip_nat_ftpiptables -Fiptables -t ...

  7. iptables简单用法

    iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s 源IP/源子网> --sport 源端口 &l ...

  8. iptables简单规则记录

    先来一句:好记性不如烂笔头! 1.iptables简介 iptables是基于包过滤的防火墙,它主要工作在osi模型的2,,4层,也可以工作在7层(iptables + squid) 2.原理 防火墙 ...

  9. iptables简单了解

    简介 Iptables是unix/linux自带的一款优秀且开源的基于包过滤的防火墙工具. 怎么用 可以用来做主机防火墙. 可以做局域网共享上网. 可以做ip及端口映射. Iptables工作流程 i ...

随机推荐

  1. 队列 和 线程 之GCD dispatch

    1.dispatch_queue_create  创建队列开启异步线程(1,4,2,3) // 创建一个队列 dispatch_queue_t queue = dispatch_queue_creat ...

  2. 【APT】SqlServer游标使用

    use [ElephantCredit] go begin transaction tran_bank; print '**脚本开始执行!'; declare @tran_error int , @n ...

  3. ajax 之POST请求,参数序列化

    比如,,我们在没有使用jquery的时候,没有$.post来让我们使用,那我们像下面这样直接发送: var params1 = { username: username, passwrod: pass ...

  4. Ajax cookie session form组件

    . Cookie是什么 保存在浏览器端的键值对 为什么要有Cookie? 因为HTTP请求是无状态的 Cookie的原理? 服务端可以在返回响应的时候 做手脚 在浏览器上写入键值对(Cookie) 浏 ...

  5. DevExpress中RibbonControl的简单应用

    现在介绍一下DevExpress中的RibbonControl的简单应用,搭建一个拥有Office2010风格的窗体程序. 第一步:打开VS2015,新建一个windows窗体应用程序: 第二步:把需 ...

  6. (转)HTTP 错误 404.2 - Not Found 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面

    详细错误:HTTP 错误 404.2 - Not Found. 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面. 出现环境:win7 + IIS7.0 解决办法 ...

  7. Luogu 1169 [ZJOI2007]棋盘制作 - 动态规划+单调栈

    Description 给一个01矩阵, 求出最大的01交错的正方形和最大的01交错的矩阵 Solution 用动态规划求出最大的正方形, 用单调栈求出最大的矩阵. 在这里仅介绍求出最大正方形(求最大 ...

  8. [转]slf4j 与log4j 日志管理

    log4j简易入门 package test.log4j; import org.apache.log4j.Logger; public class HelloLog4j { private stat ...

  9. Spring MVC 数据绑定和表单标签库

    数据绑定是将用户输入绑定到领域模型的一种特性.作用是将 POJO 对象的属性值与表单组件的内容绑定. 数据绑定的好处: 1. 类型总是为 String 的 HTTP 请求参数,可用于填充不同类型的对象 ...

  10. JSP 9个内置对象

    JSP内置对象(隐式对象)是JSP容器为每个页面自动实例化的一组对象,开发者可直接使用,也被称为预定义变量. JSP容器提供了9个内置对象 request // javax.servlet.http. ...