iptables学习笔记

这几学习iptables,踩了一些坑,作下总结。

1、三表

(1)filter:默认表,处理本机数据包,包含input、output和forward

(2)nat:处理源或目的IP/端口转换,包含prerouting、postrouting、output

(3)mangle:处理高级路由信息,包含prerouting、output、input、forward

2、五链

(1)inpput,处理要进入本机的数据包的规则

(2)output:处理由本机产生,要外发的数据包的规则

(3)forward:处理非本机的数据包的规则

(4)prerouting:处理进入netfilter后路由判断前执行的数据包的规则

(5)postrouting,处理离开netfilter前执行的数据包的规则

3、语法参数

  iptables [-t table] command [chain] [match] [-j target]

     

  (1)table:表名,filter、nat、mangle,默认为filter

  (2)command:

    -A:链尾添加规则

    -D:链中删除规则,可指定行号

    -R:替换规则

    -L:显示规则

     -I:插入规则,可指定行号

     -X:删除自定义的规则

     -F:清空所有规则或删除指定的规则

     -N:创建新命名的链。

     -P:设置默认策略

     -Z:包字节计数器清零

  (3)match

     通用匹配

          -p:指定协议

          -s:指定源地址

          -d:指定目的地址

          -i:指定数据包进入的网卡

          -o:指定数据包出去的网卡

     隐含匹配:tcp udp icmp

     显示匹配:(还在学习,后续补充)

   (4)target:

     ACCEPT:满足条件的包允许通过

     REJECT:满足条件的包丢弃,且回信息给对方

     DROP:满足条件的包丢弃,不返回信息给对方

     REDIRECT:转发包到另一个端口

     MASQUERADE:获取IP地址作NAT

     SNAT:源地址转换

     DNAT:目的地址转换

(学习中,未完待续,后续补充实战例子上来)

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

(0)
鸿远鸿远
上一篇 2016-06-09
下一篇 2016-06-09

相关推荐

  • 基于ansible自动部署keepalived+nginx来调度amp

    实战作业: (1) 主/备模型的keepalived+nginx (2) httpd+php+php-mysql (3) mysql-server或mariadb-server         拥有testdb库,并允许testuser对其拥有所有权限 实验环境: 主机1:10.…

    Linux干货 2016-11-07
  • N25-第十一周作业

    1、详细描述一次加密通讯的过程,结合图示最佳。   以Bob和Alice安全通讯为例:     Bob<———>Alice    1. Bob要和Alice安全通信首先要取得对方的公钥,即对方的证书,并验证证书的合法性。验证过程和内容: &n…

    Linux干货 2017-03-20
  • N28-第二周博客作业

    常用通配符
    *:表示任意长度的任意字符;

    ?:表示任意的单个字符;

    []:表示在指定范围内的单个字符:[a-z];

    [^]:脱字符,是取反的意思,即在指定范围以外的任意字符,如 [^0-9]表示除数字以外的一切字符。

    [:digit:] 表示所有的数字,相当于0-9

    [:lower:] 表示所有的小写字母

    [:upper:] 表示所有的大写字母

    [:alpha:] 表示所有的字母,

    [:alnum:] 相当于[0-9a-z]

    [:space:] 相当于空白字符

    [:punct:] 表示所有的标点符号

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。

    2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。

    3、请使用命令行展开功能来完成以下练习:

    (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d

    (2)、创建/tmp/mylinux目录下的:
    mylinux/
    ├── bin
    ├── boot
    │?? └── grub
    ├── dev
    ├── etc
    │?? ├── rc.d
    │?? │?? └── init.d
    │?? └── sysconfig
    │?? └── network-scripts
    ├── lib
    │?? └── modules
    ├── lib64
    ├── proc
    ├── sbin
    ├── sys
    ├── tmp
    ├── usr
    │?? └── local
    │?? ├── bin
    │?? └── sbin
    └── var
    ├── lock
    ├── log
    └── run

    4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。

    5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?

    6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。

    7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。

    8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。

    9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。

    10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。

    11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。

    12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

    Linux干货 2017-12-11
  • shell脚本编写-4

    1、while 循环的特殊用法(遍历文件的每一行) while read line; do 循环体 done < /PATH/FROM/SOMEFILE 依次读取/PATH/FROM/SOMEFILE 文件中的每一行,且将行赋值给变量line 练习:扫描/etc/passwd 文件每一行,如发现GECOS 字段为空,则填充用户名和单位电话为629856…

    Linux干货 2016-09-01
  • 软raid实现raid5

    现在Linux系统有磁盘情况如下 现在从sda,sdb,sdc,sdd 分区取出10G 的空间做raid5. 第一步:建立分区 现在执行fdisk  /dev/sd* 命令分区冲这四个磁盘划分10G分区 分别是sda6,sdb1,sdc1,sdd1。 具体操作如下: 分区完之后,执行#partx -a /dev/sd*  让分区生效。具体效果如下: 分区完成…

    2017-12-06
  • vim的基本使用

    前言:     Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性。VIM是自由软件。    Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Emacs的不同变体。1999 年Emacs被选为Linuxworld文本…

    Linux干货 2017-07-30