iptables归纳总结

先简单介绍下iptables

IPTABLES的几点概念

 1、容器:包含或者说属于的关系

 2、Netfilter/iptables是表的容器,iptables包含的各个表

filter,NAT,MANGLE,RAW)

 3、iptables的表tables又是链的容器

chains:INPUT,OUTPUT,FORWARD,PREROUTING,POSTROUTING

 4、链chains是规则容器:

 5、规则Policy:一条条过滤的语句。


示例:

(1)禁止掉当前SSH端口,这里是52113。

[root@ipt ~]# iptables -t filter -A INPUT -p tcp –dport 52113 -j DROP

语法:

Usage:

iptables -t [table] -[AD] chain rule-specification [options]

具体命令:

iptables           -A INPUT -p tcp –dport 52113 -j DROP

iptables -t filter -A INPUT -p tcp –dport 52113 -j DROP

注:

1.iptables默认用的就是filter表,因此,以上两条命令等价。

2. 其中的INPUT DROP要大写。

3. –jump        -j target

   target for rule (may load target extension)

基本的处理行为:ACCEPT(接受)、DROP(丢弃)、REJECT(拒绝)

比较:DROP好于REJECT

(2)禁ping

iptables -t filter  -I INPUT -p icmp –icmp-type 8 -i eth0 -s 10.0.0.0/24 -j DROP 

iptables -t filter  -I INPUT -p icmp –icmp-type 8  -j DROP   

    本机地址:172.16.14.1,允许172.16.0.0/16网络ping本机,但限制每分钟请求不能超过20,每次并发不能超过6个

iptables -A INPUT -s 172.16.0.0/16 -d 172.16.14.1 -p icmp –icmp-type 8 -m limit –limit 20/min –limit-burst 6 -j ACCEPT

iptables -A OUTPUT -s 172.16.14.1 -d 172.16.0.0/16 -p icmp –icmp-type 0 -j ACCEPT

(3)!使用简介

封掉3306端口

iptables -A INPUT -p tcp  –dport 3306 -j DROP

匹配指定协议外的所有协议

iptables -A INPUT -p ! tcp

匹配主机源IP

iptables -A INPUT -s 10.0.0.14

iptables -A INPUT -s ! 10.0.0.14

 匹配网段

iptables -A INPUT -s 10.0.0.0/24

iptables -A INPUT -s ! 10.0.0.0/24

匹配单一端口

iptables -A INPUT -p tcp –sport 53

iptables -A INPUT -p udp –dport 53

 匹配指定端口之外的端口

iptables -A INPUT -p tcp –dport ! 22

iptables -I INPUT -p tcp ! –dport 22  -s 10.0.0.123 -j DROP

匹配单一端口

iptables -A INPUT -p tcp –sport 53

iptables -A INPUT -p udp –dport 53

 匹配指定端口之外的端口

iptables -A INPUT -p tcp –dport ! 22

iptables -I INPUT -p tcp ! –dport 22  -s 10.0.0.123 -j DROP

iptables -I INPUT -p tcp –dport 52000:53000 -j DROP

匹配端口范围:

iptables -A INPUT -p tcp –sport 22:80

iptables -I INPUT -p tcp –dport 21,22,23,24 -j ACCEPT===》错误语法

iptables -I INPUT -p tcp -m multiport –dport 21,22,23,24 -j ACCEPT

iptables -I INPUT -p tcp –dport 3306:8809 -j ACCEPT

iptables -I INPUT -p tcp –dport 18:80 -j DROP

匹配ICMP类型

iptables -A INPUT -p icmp –icmp-type 8

例:iptables -A INPUT -p icmp –icmp-type 8 -j DROP

iptables -A INPUT -p icmp -m icmp –icmp-type any -j ACCEPT

匹配指定的网络接口

iptables -A INPUT -i eth0

iptables -A FORWARD -o eth0

匹配网络状态

-m state –state

    NEW:已经或将启动新的连接

    ESTABLISHED:已建立的连接

    RELATED:正在启动新连接

INVALID:非法或无法识别的

FTP服务是特殊的,需要配状态连接。

企业iptables面试题:自定义链处理syn攻击

iptables -N syn-flood

iptables -A INPUT -i eth0 -syn -j syn-flood

iptables -A syn-flood -m limit -limit 5000/s -limit-burst 200 -j RETURN

iptables -A syn-flood -j DROP

 

 将设置保存为文件(永久生效)

iptables-save >/etc/sysconfig/iptables

局域网共享的两条命令方法:

方法1:适合于有固定外网地址的:

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j SNAT –to-source 10.0.0.7

(1)-s 192.168.1.0/24 办公室或IDC内网网段。

(2)-o eth0 为网关的外网卡接口。

(3)-j SNAT –to-source 10.0.0.19 是网关外网卡IP地址。

方法2:适合变化外网地址(ADSL):

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE ç伪装。

原创文章,作者:cnc,如若转载,请注明出处:http://www.178linux.com/74595

(0)
cnccnc
上一篇 2017-05-02
下一篇 2017-05-02

相关推荐

  • 网络管理之配置文件及一些命令的应用

    IP配置、信息、相关命令    IP地址     它们可唯一标识 IP 网络中的每台设备     每台主机(计算机、网络设备、外围设备)必须具有唯一的地址     IP 地址由两部分组成:   &nb…

    Linux干货 2016-09-22
  • 18-系统启动故障修复-实践

    说明:重启时可以选择性在vmlinuz所在行末尾添加 selinux=0;或者直接编辑/etc/selinus/config文件,更改 SELINUX=disabled 关闭SELINUX。可以避免打标签,节省启动时间 以下操作都需要进入bootloader引导加载项修改内核启动参数,在vmlinuz所在行末尾添加一个启动选项 如何进入bootloader引…

    2017-04-02
  • LVM2

    1、逻辑卷     逻辑卷为何物:逻辑,是从人的角度出发的,合乎人类的思维的,所以逻辑卷相对于其它磁盘分区高级一些。主要作用就是可以进行动态扩展缩减,不像其它分区大小固定了要想变动就必须重新格式化。 在实际工作环境中,LVM更适用于现实复杂多变的环境。 现在使用的是LVM2,Logical Volume Manager,Version 2…

    Linux干货 2016-08-30
  • 文本处理工具初探

    作为一个系统管理员,文本处理功能是经常使用的,熟练地使用各种文本工具有助于提高工作效率,从繁忙的工作中早点解脱。下面就来介绍处理文本的常用命令。 处理文本的命令大致分为:        查看文件内容:cat、less、more       …

    Linux干货 2016-08-07
  • HTTP协议

    HTTP协议   HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。HTTP协议工作于客户端-服务端架构之上。浏览器作为HT…

    Linux干货 2017-02-15
  • CentOS系统启动流程

       开机不是只要单击电源钮,而关机只要关掉电源钮就可以了吗?话是这样没错啦,但是由于 Linux 是一套多人多任务的操作系统,你难保你在关机时没有人在在线,如果你关机的时候碰巧一大群人在在线工作, 那会让当时在在线工作的人马上断线的!那不是害死人了!一些数据可是无价之宝。    另外 Linux 在执行的时候,虽然你…

    Linux干货 2016-09-19