一、防火墙基础知识

iptables/netfilter:网络防火墙,连接追踪(状态检测)

netfilter:工作内核中,让规则能够生效的网络框架(framework)

iptables:防火墙规则编写工具,工作与用户空间,编写规则并且发送到netfilter

所有的规则都在hook_function的函数中

PREROUTING:mangle、nat

INPUT:filter、mangle

OUTPUT:filter、nat、mangle

FORWARD:filter、mangle

POSTROUTING:mangle、nat

过滤:筛选

NAT:Network Address Translation(地址转换)

DNAT(目标地址转换)

SNAT(原地址转换)

mangle

raw

四表:filter、nat、mangle、raw

五链:PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING

表和链的对应关系:

filter:INPUT、FORWARD、OUTPUT

nat:PREROUTING、OUTPUT、POSTROUTING

mangle:PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING

规则:检查条件,处理机制

防火墙的策略:通(默认为堵,只对能识别的进行放行)

堵(默认为通,只对能识别的进行阻截)

检查条件:

IP:SIP,DIP

TCP:SPORT,DPORT,Flags(ACK,SYN,FIN,RST,PSH,URG)

UDP:SPORT,DPORT

ICMP:ICMP-TYPE

扩展机制:

time,string,state(connection-tracking)连接追踪

处理机制

DROP,REJECT,ACCEPT,SNAT,DNAT,RETURN,FORWARD,REDIRECT(端口转发),LOG

二、iptables工具使用说明

iptables [-t table] -N chain

创建一条自定义的规则链

iptables [-t table] -X [chain]

删除一条自定义的空规则链,如果不为空可以先用-F清空再删除

iptables [-t table] -E old-chain-name new-chain-name

修改自定义规则链的名称

iptables [-t table] -P chain target

为链指定默认策略,指定默认规则

iptables [-t table] {-F|-L|-Z} [chain [rulenum]] [options...]

-F:清空链中的规则

规则有编号,在链中自上而下,从1开始;

-L:list,列出表中的所有规则;

  -n:数字格式显示IP和Port

  -v:显示详细信息

  pkts bytes target prot opt in out source destination

    pkts:packets,被本规则所匹配到的报文的个数

    bytes:被本规则所匹配到的所有报文的大小之和,单位字节

    target:目标,即处理机制

    prot:协议,一般为{TCP|UDP|ICMP}

    opt:可选项

    in:数据包的流入接口

    out:数据包的流出接口

    source:源地址

    destination:目标地址

  -vv:显示更详细信息

  -vvv:显示更更详细信息

  -x:exactly:精确值,不执行单位换算

  --line-numbers:显示个规则的行号

-Z:zero,清零

iptables [-t table] {-A|-D} chain rule-specification

-A:append,附加一条规则

  rule-specification

  匹配条件 -j 处理机制

  匹配条件:

   通用匹配:

   -s|--src|--source: 匹配原地址,可以IP,也可以网络地址;可以使用!取反, ! 192.168.1.0/24

    -d|--dst|--destination:匹配目标地址,可以IP,也可以网络地址;可以使用!取反, ! 192.168.1.0/24

    -p:匹配协议,通常只是用{TCP|UDP|ICMP}三者之一

    -i:数据报文流入的接口,通常只用于INPUT,FORWARD和 PREROUTING

     -o:数据报文流出的接口,通常只用于OUTPUT,FORWARD和POSTROUTING

删除规则:

iptables [-t table] -D chain rulenum

插入规则:

iptables [-t table] -I chain [rulenum] rule-specification

替换指定规则:

iptables [-t table] -R chain rulenum rule-specification

只显示指定链上的规则添加命令:

iptables [-t table] -S [chain [rulenum]]

保存规则:

  service iptables save

  规则会被保存至/etc/sysconfig/iptables文件中

  start时也会读取此文件中的内容以设置规则

  保存规则

  # iptables-save > /path/to/some_rulefile

  重新生效规则

  # iptables-restore < /path/to/some_rulefile

Linux防火墙简介及iptables的基本使用的更多相关文章

  1. Linux防火墙简介 – iptables配置策略

    Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...

  2. LINUX防火墙firewall、iptables

    (1) 重启后永久性生效: 开启: systemctl enable iptables.service'.ln -s '/usr/lib/systemd/system/iptables.service ...

  3. Linux防火墙firewall和iptables的使用

    防火墙是整个数据包进入主机前的第一道关卡. Linux中有两种防火墙软件,ConterOS 7.0以上使用的是 firewall,ConterOS 7.0以下使用的是 iptables,本文将分别介绍 ...

  4. Linux 防火墙:Netfilter iptables

    一.Netfilter 简介 (1) Netfilter 是 Linux 内置的一种防火墙机制,我们一般也称之为数据包过滤机制,而 iptables 只是操作 netfilter 的一个命令行工具(2 ...

  5. 7、linux防火墙的使用(iptables)

    7.1.说明: CentOS 7 系统默认的防火墙是 Filewalld.不过,现在应该还有很多用户习惯使用 iptables.本文以 CentOS 7 为例, 说明在 CentOS 7 中如何安装并 ...

  6. Linux 防火墙 开放 端口 iptables

    查看状态:iptables -L -n 方法1.使用iptables开放如下端口/sbin/iptables -I INPUT -p tcp --dport 8000 -j ACCEPT保存/etc/ ...

  7. linux iptables 防火墙简介

    iptables防火墙简介 Netfilter/Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的安全自由的基于包过滤的防火墙工具,它的功能十分强大,使用非 ...

  8. linux 防火墙 iptables 目录

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

  9. linux 防火墙基本使用

    写在最前面 由于工作后,使用的Linux就是centos7 所以,本文记录是是centos7的防火墙使用. 从 centos7 开始,系统使用 firewall 进行防火墙的默认管理工具. 基本使用 ...

随机推荐

  1. 3D图形图像处理软件HOOPS介绍及下载

    HOOPS 3D Application Framework(以下简称HOOPS)是建立在OpenGL.Direct3D等图形编程接口之上的更高级别的应用程序框架.不仅为您提供强大的图形功能,还内嵌了 ...

  2. as3 代码加解密

    private var loader:URLLoader; ... private function init():void { loader = new URLLoader; req=URLRequ ...

  3. 曲线拟合的最小二乘法(基于OpenCV实现)

    1.原理 在现实中经常遇到这样的问题,一个函数并不是以某个数学表达式的形式给出,而是以一些自变量与因变量的对应表给出,老师讲课的时候举的个例子是犯罪人的身高和留下的脚印长,可以测出一些人的数据然后得到 ...

  4. tail 显示文件最后若干行内容

    功能:tail命令可以输出文件的尾部内容,默认情况下它显示文件的最后十行.显示每个指定文件的最后10 行到标准输出.若指定了多于一个文件,程序会在每段输出的开始添加相应文件名作为头.如果不指定文件或文 ...

  5. selenium配置

    1.firebug安装--火狐插件 2.firepath安装--火狐插件 3.

  6. xtrabackup: error: last checkpoint LSN (3409281307) is larger than last copied LSN (3409274368)

    1.错误发生场景:使用2.4.1版本的xtrabackup工具进行全备,备份日志中报出此错误2.知识要点:MySQL中,redo 日志写进程会在三种条件下被触发从log buffer中写日志到redo ...

  7. JDBC代码示例

    package test; import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;imp ...

  8. rem ,em ,px的区别

    参考网址:http://www.cnblogs.com/leejersey/p/3662612.html

  9. Qt 获取本机ip地址  【转自 CSDN jpchen609

    QString str; QHostInfo info=QHostInfo::fromName(QHostInfo::localHostName()); //定义一个HostInfo的对象然后对这个对 ...

  10. __autoload的小tip

    __autoload魔法函数不仅在如 $a=new testClass();时可以触发.在 class a extends b时 如果b类的定义在当前页未找到,也可以触发这个函数