基本组成

表:
filter:用来对数据包进行过滤,根据具体的规则要求决定如何处理一个数据包。表内包含三个链,即INOUT、FORWARD、OUTPUT
nat表:主要用来修改数据包的IP地址、端口号等信息。内核模块为iptable_nat,表内包含三个链,即PREROUTING、POSTROUTING、OUTPUT
mangle:用来修改数据包的服务类型、生存周期,或为数据包设置Mark标记,以实现流量整形、策略路由等高级应用。内核模块为iptable_mangle,表内包含五个链,即INPUT、OUTPUT、PREROUTING、POSTROUTING、FORWARD
raw:1.2.9以后版本iptables新增的表,用来决定是否对数据包进行状态跟踪。内核模块为iptable_raw,表内包含两个链,即OUTPUT、PREROUTING
链:
INPUT:收到访问防火墙本机地址的数据包(入站)时,应用此链中的规则
OUTPUT:收到防火墙本机向外发送数据包(出站)时,应用此链中的规则
FORWARD:接收到需要通过防火墙中转发送给其他地址的数据包(转发)时,应用此链中的规则
PREROUTING:在对数据包做路由选择之前,应用此链中的规则
POSTROUTING:在对数据包做路由选择之后,应用此链中的规则
匹配流程
表:
raw-mangle-nat-filter
基本语法
1.控制类型
ACCEPT:允许数据包通过
DROP:直接丢弃数据包,不回应
REJECT:拒绝数据包通过,给发送端一个响应信息
LOG:辅助动作,并没有真正处理数据包
基本参数
-A:在指定链的末尾添加一条新的规则
-D:删除指定链中的某一条规则,可指定规则序号或具体内容
-I:在指定链中插入一条新的规则,未指定序号是默认作为第一条规则
-R:修改、替换指定链中的某一条规则,可指定规则序号或具体内容
-L:列出指定链中所有的规则,若未指定链名,则列出表中的所有链
-F:清空指定链中的所有规则,若为指定链名,则清空表中的所有链
-P:设置指定链的默认策略
-n:使用数字形式显示输出结果,如显示IP地址而不是主机名
-v:查看规则列表时显示详细的信息
-h:查看命令帮助信息
--line-numbers:查看规则列表时,同时显示规则在链中的顺序号
匹配条件
1.通用匹配
协议匹配:-p (icmp,tcp,udp,all)
地址匹配:-s 源地址     -d 目标地址
网络接口匹配:-i接口名(入站网卡)   -o接口名(出站网卡)
2.隐含匹配
端口匹配:--sport源端口  --dport目标端口
ICMP类型匹配:--icmp-type   8、0、3       分别对应ICMP协议的请求、回显、目标不可达。
3.显示匹配
多端口匹配:(-m multiport --dports 端口列表) (-m multiport --sports 端口列表)
IP范围匹配:(-m iprange --src-range ip范围)  (-m iprange --dst-range ip范围)
MAC地址匹配:-m mac --mac-source MAC地址
状态匹配:-m state  --state 连接状态  连接状态: NEW (与任何连接无关的) ESTABLISHED(响应请求或者已建立连接的) RELATED(与已有连接有相关性的)
 

Linux --防火墙(一)的更多相关文章

  1. Linux防火墙:iptables禁IP与解封IP常用命令

    在Linux服务器被攻击的时候,有的时候会有几个主力IP.如果能拒绝掉这几个IP的攻击的话,会大大减轻服务器的压力,说不定服务器就能恢复正常了. 在Linux下封停IP,有封杀网段和封杀单个IP两种形 ...

  2. Linux防火墙

    9.1 认识防火墙   只要能够分析与过滤进出我们管理之网域的封包数据, 就可以称为防火墙. 硬件防火墙 由厂商设计好的主机硬件, 这部硬件防火墙内的操作系统主要以提供封包数据的过滤机制为主,并将其他 ...

  3. Linux防火墙(Iptables)的开启与关闭

    Linux防火墙(iptables)的开启与关闭 Linux中的防火墙主要是对iptables的设置和管理. 1. Linux防火墙(Iptables)重启系统生效 开启: chkconfig ipt ...

  4. linux 防火墙iptables简明教程

    前几天微魔部落再次遭受到个别别有用心的攻击者的攻击,顺便给自己充个电,复习了一下linux下常见的防火墙iptables的一些内容,但是无奈网上的很多教程都较为繁琐,本着简明化学习的目的,微魔为大家剔 ...

  5. Linux防火墙iptables简明教程

    前几天微魔部落再次遭受到个别别有用心的攻击者的攻击,顺便给自己充个电,复习了一下linux下常见的防火墙iptables的一些内容,但是无奈网上的很多教程都较为繁琐,本着简明化学习的目的,微魔为大家剔 ...

  6. Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]

     Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...

  7. 要想重启后也生效LINUX防火墙配置

    新配置的一台服务器,安装的是CentOS6.3系统,在安装完LNMP之后,发现nginx进程存在,且php解析正常,但是用分配的独立IP去访问的时候发现无法访问. 查了下网上的资料,发现可能是Linu ...

  8. linux防火墙 基础知识

    转 http://drops.wooyun.org/tips/1424 iptables介绍 linux的包过滤功能,即linux防火墙,它由netfilter 和 iptables 两个组件组成. ...

  9. Linux防火墙配置—SNAT2

    1.实验目标 以实验"Linux防火墙配置-SNAT1"为基础,为网关增加外网IP地址,为eth1创建虚拟接口,使外网测试主机在Wireshark中捕获到的地址为eth1虚拟接口的 ...

  10. linux 防火墙 iptables 目录

    linux iptables 防火墙简介 Linux 防火墙:Netfilter iptables 自动化部署iptables防火墙脚本

随机推荐

  1. java - list 报java.lang.UnsupportedOperationException

    情景 现在有个数组,比如:String[]  array = new String[]{"1","2","3"}; 我们想要往这个数组中添加 ...

  2. 破解myBase试用到期

    请保持你的myBase7是关闭的 1.找到myBase7的安装目录(myBase.exe的目录): 2.右键编辑打开myBase.ini: 3.找到 App.UserLic.FirstUseOn,并在 ...

  3. (转)source、sh、bash、./执行脚本的区别

    source.sh.bash../执行脚本的区别  原文:https://www.cnblogs.com/sparkbj/p/5976100.html 1.source命令用法: source Fil ...

  4. jquery:字符串(string)转json

    第一种方式: 使用js函数eval(); testJson=eval(testJson);是错误的转换方式. 正确的转换方式需要加(): testJson = eval("(" + ...

  5. Docker的基本构架

    不多说,直接上干货! Docker的基本构架 Docker基于Client-Server架构,Docker daemon是服务端,Docker client是客户端. Docker的基本架构,如下图所 ...

  6. 【ExtJS】关于alias和xtype

    alias 在api里的解释为:别名 类名称简短的别名列表.多数用于定义xtypes Ext.define('MyApp.Panel', { extend: 'Ext.panel.Panel', al ...

  7. 使用 Git 管理源代码(转)

    什么是 Git? 非常简单地说,Git 是 Linus Torvalds 最近实现的源代码管理软件.正如所提供的文档中说的一样,“Git 是一个快速.可扩展的分布式版本控制系统,它具有极为丰富的命令集 ...

  8. React.js 小书 Lesson15 - 实战分析:评论功能(二)

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson15 转载请注明出处,保留原文链接和作者信息. 上一节我们构建了基本的代码框架,现在开始完善其 ...

  9. tornado handler 方法复用的 3 个方法

    tornado handler 调用 特性 在一次 tornado 请求中调用其他 tornado handler 中的方法, 比如 run 方法 引言 在后台开发中, 有时需要做一些功能的整合, 比 ...

  10. oracle dblink简介

    database link概述 database link是定义一个数据库到另一个数据库的路径的对象,database link允许你查询远程表及执行远程程序.在任何分布式环境里,database都是 ...