四表五链

四表(table):raw、mangle、nat、filter

五链(chain):PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING

每个表存在几个或全部链,详情如下:

raw PREROUTING、OUTPUT
mangle PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING
nat PREROUTING、INPUT、OUTPUT、POSTROUTING
filter INPUT、FORWARD、OUTPUT

请求是先按照链的顺序再以表的顺序进行判定的,如下:

aaarticlea/png;base64,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" alt="" />

注:此为整体的顺序,通常请求只经历其中某几个阶段;

理想的初始状态下表和链全是空的,但有默认规则,比如INPUT默认是ACCEPT,当然可以修改,如果改成DROP那全部请求包括远程ssh就都连不上了;

我们要做的就是添加规则来满足自己的需求,每条规则一定属于某个表的某个链;

防火墙

# 下文代名词:table(表),chain(链),rulenum(规则序号)
# 加中括号[]表示可带可不带,不加则必须带
iptables -L   # 以链分类来列出规则, 显示内容中的policy表示默认规则;加-n参数可以把解读为域名和程序名的IP和端口号显示出来;加-v显示更新详细的内容;
iptables -L [chain [rulenum]] [-t table] [--line-numbers]  # 可以指定chain/rulenum(不指定为all),可以指定table(不指定为filter),--line-numbers是把rulenum显示出来(就是链内从1开始的序号,可以自己数)
iptables -S [chain [rulenum]] [-t table] [--line-numbers]  # 直接列出规则,显示内容中的-p表示默认规则
iptables -F [chain] [-t table]  # 清空指定表和链的规则,不指定chain则为all,不指定table则为filter([-t table]这个选项基本上所有命令都可用,且都是这个意思,下文不再重复)
iptables -D chain rulenum  # 删除指定的一条规则
iptables -A chain  # 在chain的末尾加一条规则
iptables -I chain [rulenum]  # 在rulenum前(不指定则为首位)插入一条规则
iptables -A INPUT -s 172.18.27.8 -j DROP  # 拒绝来自172.18.27.8的请求, -s表示source,-j表示jump
iptables -A INPUT -s 172.18.0.0/16 -p tcp --dport 22 -j DROP  # 拒绝来自IP段172.18.0.0/16的ssh连接
# 注:除了-I可以指定rulenum外,-I和-A基本上可以互相替换;由于在一个表的某个链范围内,规则按顺序依次判定,一旦匹配那么后续的规则将跳过,所以要活用这俩参数将新规则放到合适的位置;
# 规则相关的参数解析:
-s IP/IP段    源地址
-d IP/IP段    目标地址
-p tcp/udp/...  协议
--sport 端口   源端口,要先指定协议
--dport 端口   目标端口,要先指定协议
-i 网卡      进入的网卡
-o 网卡      发出的网卡
-j 动作      可选ACCEPT(允许)、DROP(丢弃)、REJECT(拒绝)、RETURN(返回)
# accept与reject的区别:以来电为例,前者相当于静音后不予理会,发起者不清楚状况只能等待超时;后者相当于直接挂断,发起者立刻就收到了反馈;
# return就是结束该链的判定,跳过后续规则;若在自定义链中就返回到引用它的链,若在主链中则使用默认规则;
# 要注意的是,INPUT时本机为目标地址和目标端口,OUTPUT时本机为源地址和源端口

地址转换

REDIRECT
本机重定向
NAT
网络地址转换
DNAT
目标网络地址转换
SNAT
源网络地址转换
MASQUERADE
网络地址伪装
# 地址转换的规则当然是要放到nat表

# 将数据转发到本机的另一个端口
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080 # 下面是将80端口的数据转发到172.18.27.8的8080端口,需要两条规则
# 先在路由前(PREROUTING)修改目标网络地址(目标地址若不加端口则表示端口不修改)
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 172.18.27.8:8080
# 然后在发出时(POSTROUTING)将源地址改为本机,这个可以通过SNAT或MASQUERADE两种方式实现:
iptables -t nat -A POSTROUTING -p tcp --dport 8080 -j SNAT --to-source [本机IP]
# 或
iptables -t nat -A POSTROUTING -p tcp --dport 8080 -j MASQUERADE
# 效果就是访问[本机IP:80]则相当于访问[172.18.27.8:8080]
# MASQUERADE相比于SNAT是动态获取本机地址后自动伪装,在本机IP会动态变化时尤其有用 # 端口可以范围映射
iptables -t nat -A PREROUTING -p tcp --dport 8080:8081 -j DNAT --to-destination 172.18.27.38:8080-8081
iptables -t nat -A POSTROUTING -p tcp --dport 8080:8081 -j MASQUERADE

自定义链

# 自定义链在规则较多时使用,方便管理,必须在主链中引用才能生效,引用后就相当于在引用处插入了链内所有规则
# 自定义链的信息同样通过-L查看
iptables -N MY_CHAIN [-t table]  # 新建一个名为MY_CHAIN的链,不指定table则默认为filter
iptables -E MY_CHAIN YOUR_CHAIN  # 重命名
iptables -A MY_CHAIN -s 172.18.27.8 -j DROP  # 向链中添加规则
iptables -A INPUT -j MY_CHAIN  #在INPUT链中引用
# 删除自定义链需要它没有引用,也没有规则
iptables -D INPUT -j MY_CHAIN  # 删除引用
iptables -F MY_CHAIN  # 清空
iptables -X MY_CHAIN  # 删除

场景问题

# 禁ping
iptables -A INPUT -p icmp -j DROP

over

iptables的使用的更多相关文章

  1. iptables

    一.在服务器上打开 22.80.9011端口: iptables -A INPUT -p tcp --dport 9011 -j ACCEPT iptables -A OUTPUT -p tcp -- ...

  2. 浅谈iptables 入站 出站以及NAT实例

    --------------本文是自己工作上的笔记总结,适合的可以直接拿去用,不适合的,适当修改即可!--------------- iptbales默认ACCEPT策略,也称通策略,这种情况下可以做 ...

  3. Failed to stop iptables.service: Unit iptables.service not loaded.

    redhat 7 [root@lk0 ~]# service iptables stop Redirecting to /bin/systemctl stop iptables.service Fai ...

  4. CentOS7安装iptables防火墙

    CentOS7默认的防火墙不是iptables,而是firewalle. 安装iptable iptable-service #先检查是否安装了iptables service iptables st ...

  5. linux iptables常用命令之配置生产环境iptables及优化

    在了解iptables的详细原理之前,我们先来看下如何使用iptables,以终为始,有可能会让你对iptables了解更深 所以接下来我们以配置一个生产环境下的iptables为例来讲讲它的常用命令 ...

  6. CentOS系统配置 iptables防火墙

    阿里云CentOS系统配置iptables防火墙   虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT.OUTPUT和FO ...

  7. /etc/sysconfig/下找不到iptables文件解决方法

    时间:2014-12-19 01:17来源:csdn 作者:大智 举报 点击:5639次 本想做些防火墙策略.防火墙策略都是写在/etc/sysconfig/iptables文件里面的.可我发现我也没 ...

  8. docker通过iptables修改或新增镜像映射端口

    443 8088 22 端口是初始映射端口 [root@SERVER ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAM ...

  9. lnmp 预设iptables设置

    「LNMP」iptables初始配置   首先使用命令iptables -P INPUT ACCEPT允许所有连接,否则容易把自己关在外边.然后使用iptables -F;iptables -X;ip ...

  10. 关闭SELinux和iptables防火墙

    1.关闭SELinux: 编辑SELinux配置文件: [root@Redis selinux]# vim /etc/selinux/config 修改SELINUX配置项为disable SELIN ...

随机推荐

  1. matlab柱状图画法

    %%各时段电量需求 clc close all clear all x = [11000 33000 25000 36000 25000 30000 18000]; tick = {'0-6' '6- ...

  2. 029 SSM综合练习05--数据后台管理系统--订单分页查询

    1.PageHelper介绍 PageHelper是国内非常优秀的一款开源的mybatis分页插件,它支持基本主流与常用的数据库,例如mysql.oracle.mariaDB.DB2.SQLite.H ...

  3. 使用SSM搭建一个简单的crud项目

    使用SSM完成增删查改 前端使用到的技术:ajax,json,bootstrap等 完整项目地址:点这里GitHub 项目地址,可以在线访问 这一章节主要搭建SSM的环境. SpringMVC Spr ...

  4. 2019-7-18 collections,time,random,os,sys,序列化模块(json和pickle)应用

    一.collections模块 1.具名元组:namedtuple(生成可以使用名字来访问元素的tuple) 表示坐标点x为1  y为2的坐标 注意:第二个参数可以传可迭代对象,也可以传字符串,但是字 ...

  5. Python之路【第三十一篇】:django ajax

    Ajax 文件夹为Ajaxdemo 向服务器发送请求的途径: 1.浏览器地址栏,默认get请求: 2.form表单: get请求 post请求 3.a标签,超链接(get请求) 4.Ajax请求 特点 ...

  6. Python之路【第二十六篇】:HTTP协议

    HTTP协议 一.HTTP概述 HTTP(hypertext transport protocol),即超文本传输协议.这个协议详细规定了浏览器和万维网服务器之间互相通信的规则. HTTP就是通信规则 ...

  7. pytest_skip跳过用例

    前言 pytest.mark.skip可以标记无法在某些平台上运行的测试功能,或者您希望失败的测试功能 skip意味着只有在满足某些条件时才希望测试通过,否则pytest应该跳过运行测试. 常见示例是 ...

  8. matplotlib 中文乱码问题

    matplotlib是Python著名的绘图库,默认并不支持中文显示,因此在不经过修改的情况下,无法正确显示中文. 本文将介绍解决这一问题的方法. 不修改文件,加两行代码即可: matplotlib. ...

  9. 关于java中是引用传递还是值传递的问题

    关于JAVA中参数传递问题有两种,一种是按值传递(如果是基本类型),另一种是按引用传递(如果是對象).首先以两个例子开始:1)public class Test2 { public static vo ...

  10. C语言 - 可变参数再stm32中的应用

    参考 C 可变参数 | 菜鸟教程 void func(const char* str,...) { ... } func的最后一个参数写成 ... ,表示可变参数, C语言的printf就是类似这种声 ...