网络防火墙

  • iptables/netfilter网络防火墙:
  • (1) 充当网关
  • (2) 使用filter表的FORWARD链
  • 注意的问题:
  • (1) 请求-响应报文均会经由FORWARD链,要注意规则的方向性
  • (2) 如果要启用conntrack机制,建议将双方向的状态为ESTABLISHED的报文直接放行

NAT

  • NAT: network address translation
  • PREROUTING,INPUT,OUTPUT,POSTROUTING
  • 请求报文:修改源/目标IP,由定义如何修改
  • 响应报文:修改源/目标IP,根据跟踪机制自动实现
  • SNAT:source NAT POSTROUTING, INPUT
  • 让本地网络中的主机通过某一特定地址访问外部网络,实现地址伪装
  • 请求报文:修改源IP
  • DNAT:destination NAT PREROUTING , OUTPUT
  • 把本地网络中的主机上的某服务开放给外部网络访问(发布服务和端口映射),但隐藏真实IP
  • 请求报文:修改目标IP
  • PNAT: port nat,端口和IP都进行修改

SNAT

  • nat表的target:
  • SNAT:固定IP
  • --to-source [ipaddr[-ipaddr]][:port[-port]]
  • --random
  • iptables -t nat -A POSTROUTING -s LocalNET ! -d LocalNet -j SNAT --to-source ExtIP
[root@centos7a ~]#iptables -t nat -A POSTROUTING -s 10.0.1.0/ ! -d 10.0.1.0/ -j SNAT --to-source 172.16.32.6-172.16.32.10
[root@centos7a ~]#iptables -nvL -t nat
Chain PREROUTING (policy ACCEPT packets, bytes)
pkts bytes target prot opt in out source destination Chain INPUT (policy ACCEPT packets, bytes)
pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT packets, bytes)
pkts bytes target prot opt in out source destination Chain POSTROUTING (policy ACCEPT packets, bytes)
pkts bytes target prot opt in out source destination
SNAT all -- * * 10.0.1.0/ !10.0.1.0/ to:172.20.71.105-172.20.71.110

SNAT

  • MASQUERADE:动态IP,如拨号网络
  • --to-ports port[-port]
  • --random
  • iptables -t nat -A POSTROUTING -s LocalNET ! -d LocalNet -j MASQUERADE
[root@centos7a ~]#iptables -t nat -I POSTROUTING -s 10.0.1.0/ ! -d  10.0.1.0/ -j MASQUERADE
[root@centos7a ~]#iptables -nvL -t nat
Chain PREROUTING (policy ACCEPT packets, bytes)
pkts bytes target prot opt in out source destination Chain INPUT (policy ACCEPT packets, bytes)
pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT packets, bytes)
pkts bytes target prot opt in out source destination Chain POSTROUTING (policy ACCEPT packets, bytes)
pkts bytes target prot opt in out source destination
MASQUERADE all -- * * 10.0.1.0/ !10.0.1.0/

DNAT

  • --to-destination [ipaddr[-ipaddr]][:port[-port]]
  • iptables -t nat -A PREROUTING -d ExtIP -p tcp|udp --dport PORT -j DNAT --to-destination InterSeverIP[:PORT]
[root@centos7a ~]#iptables -t nat -A PREROUTING -s / -d 172.16.32.6 -p tcp --dport  -j DNAT --to-destination 10.0.1.22
[root@centos7a ~]#iptables -nvL -t nat
Chain PREROUTING (policy ACCEPT packets, bytes)
pkts bytes target prot opt in out source destination
DNAT tcp -- * * 0.0.0.0/ 172.32.20.6 tcp dpt: to:10.0.1.22
[root@centos7a ~]#iptables -t nat -A PREROUTING -s / -d 172.16.32.6 -p tcp --dport  -j DNAT --to-destination 10.0.1.22:
[root@centos7a ~]#iptables -nvL -t nat
Chain PREROUTING (policy ACCEPT packets, bytes)
pkts bytes target prot opt in out source destination
DNAT tcp -- * * 0.0.0.0/ 172.18.100.6 tcp dpt: to:10.0.1.22:

PNAT:利用虚拟端口进行数据转发

转发

  • REDIRECT:
  • NAT表
  • 可用于:PREROUTING OUTPUT 自定义链
  • 通过改变目标IP和端口,将接受的包转发至不同端口
  • --to-ports port[-port]
[root@centos7a ~]#iptables -t nat -A PREROUTING -d 172.16.32.6 -p tcp --dport  -j REDIRECT --to-ports
[root@centos7a ~]#iptables -nvL -t nat
Chain PREROUTING (policy ACCEPT packets, bytes)
pkts bytes target prot opt in out source destination
REDIRECT tcp -- * * 0.0.0.0/ 172.16.100.10 tcp dpt: redir ports

Linux之iptables(四、网络防火墙及NAT)的更多相关文章

  1. 网络防火墙和NAT地址转换

    网络防火墙 iptables/netfilter网络防火墙: (1) 充当网关 (2) 使用filter表的FORWARD链 注意的问题: (1) 请求-响应报文均会经由FORWARD链,要注意规则的 ...

  2. iptables详解(11):iptables之网络防火墙

    我们一起来回顾一下之前的知识,在第一篇介绍iptables的文章中,我们就描述过防火墙的概念,我们说过,防火墙从逻辑上讲,可以分为主机防火墙与网络防火墙. 主机防火墙:针对于单个主机进行防护. 网络防 ...

  3. iptables实现网络防火墙及地址转换

    iptables主机防火墙功能及常用命令 FSM:Finite State Machine 有限状态机 客户端:closed -->syn_sent -->established --&g ...

  4. centos6中iptables单机网络防火墙的使用

    概述: iptables:基于软件的形式实现的一种防火墙的软件程序 Firewall:工作在主机或网络边缘,对进出的报文按事先定义的规则进行检查,并且由匹配到的规则进行处理的一组硬件或软件,甚至可能是 ...

  5. Linux之iptables(一、防火墙的概念)

    防火墙的概念 一.安全技术 入侵检测与管理系统(Intrusion Detection Systems):特点是不阻断任何网络访问,量化.定位来自内外网络的威胁情况,主要以提供报告和事后监督为主,提供 ...

  6. kali linux学习笔记(四) : 网络端口大全介绍

    端口大全介绍 2端口:管理实用程序 3端口:压缩进程 5端口:远程作业登录 7端口:回显 9端口:丢弃 11端口:在线用户 13端口:时间 17端口:每日引用 18端口:消息发送协议 19端口:字符发 ...

  7. Linux系统iptables与firewalld防火墙

    iptables iptables服务用于处理或过滤流量的策略条目(规则),多条规则可以组成一个规则链,而规则链则依据数据包处理位置的不同进行分类. 在进行路由选择前处理数据包(PREROUTING) ...

  8. iptables (一) 主机防火墙和网络防火墙

    Firewall : 防火墙,隔离工具:工作于主机或网络的边缘,对于进出本主机或网络的报文根据事先定义好的检测规则作匹配,对于能够被规则所匹配到的报文做出相应处理的组件:有主机防火墙和网络防火墙 Ip ...

  9. 【操作系统之十五】iptables黑白名单、自定义链、网络防火墙、常用动作

    1.黑白名单当链的默认策略为ACCEPT时,链中的规则对应的动作应该为DROP或者REJECT,表示只有匹配到规则的报文才会被拒绝,没有被规则匹配到的报文都会被默认接受,这就是"黑名单&qu ...

随机推荐

  1. EF中System.Data.Entity.Internal.AppConfig的类型初始值设定项引发异常

    使用Entity的时候遇到的一个错 问题出在项目的App.config中 解决: 1.configSections要写在最顶端 2. 当中的incariantName会变成incariantNodeN ...

  2. iOS开发-植入广告(iAd, Admob实例)

    应用中植入广告是一种非常好的盈利手段. 以下介绍主流的两种方法.iAd, Admob 先mark一个非常具体的pdf.   http://pan.baidu.com/share/link?sharei ...

  3. YTU 2734: 国家排序

    2734: 国家排序 时间限制: 1 Sec  内存限制: 128 MB 提交: 133  解决: 84 题目描述 世界格局动荡不安,10国紧急召开会议磋商对策.有些国家斤斤计较,参会代表的座位如何排 ...

  4. SQL 2005批量插入数据的二种方法

    SQL 2005批量插入数据的二种方法 Posted on 2010-07-22 18:13 moss_tan_jun 阅读(2635) 评论(2) 编辑 收藏 在SQL Server 中插入一条数据 ...

  5. sql server数据库添加记录

    转自:http://jingyan.baidu.com/article/f25ef254449a9a482c1b8293.html

  6. codeforces round #415 div2

    由于下午硬钢树套树和大力颓废就没补完 C:我傻逼比赛时没做出来...就是排个序然后算贡献 #include<bits/stdc++.h> using namespace std; type ...

  7. 8.4 IP地址的划分及子网划分

    都是比较灵活的一些计算题.只要掌握了其中的规则,还是比较容易解题的.在了解子网的划分如何进行之前呢,一定要弄清楚一个概念:子网掩码.这是弄清楚如何进行子网划分的一个关键. IP地址是四段二进制码拼合而 ...

  8. Django day26 HyperlinkedIdentityField,序列化组件的数据校验以及功能的(全局,局部)钩子函数,序列化组件的反序列化和保存

    一:HyperlinkedIdentityField(用的很少):传三个参数:第一个路由名字,用来反向解析,第二个参数是要反向解析的参数值,第三个参数:有名分组的名字 -1 publish = ser ...

  9. 【USACO2009 Open】滑雪课程ski

    [USACO2009 Open]滑雪课程 Ski Lessons Time Limit: 1000 ms Memory Limit: 131072 KBytes Description 约翰请贝西去科 ...

  10. ACM_巧克力

    Chocolate,Chocolate Time Limit: 2000/1000ms (Java/Others) Problem Description: 都说发神喜欢吃巧克力,有一次发神徒弟买了一 ...