安装: yum -y install iptables-services

启动:systemctl start iptables.service

四表五链

过滤:filter

  - input  forward  output

地址转换:nat

  - prerouting(路由前)  postrouting(路由后)  output

包标记:mangle

  -prerouting  -postrouting  input  output  forward

状态跟踪:raw

  - prerouting  output

规则链匹配顺序

  顺序对比,匹配即停止(log除外)              # log表示只记录

  未匹配则按链的默认策略处理

查看配置文件: rpm -qc iptables

保存设置: iptables-save > /etc/sysconfig/iptables-config

基本用法

  指令组成     iptables [-t 表名] options [链名] [conditions] [-j 目标操作]

选项(options)

  -A                     # 在链的末尾追加一条规则

  -I         # 在链的开头(或指定序号)插入一条规则

  -L        # 列出所有的规则条目

  -n        #  以数字形式显示地址、端口等信息 

  --line-numbers        # 查看规则是,显示规则的序号

  -D         # 删除链内指定序号(或内容)的一条规则

  -F        # 清空所有规则

  -P        # 为指定的链设置默认规则

条件(conditions)

通用匹配    协议匹配      -p  协议名

        地址匹配           -s  源地址           -d 目标地址

        接口匹配      -i  收数据的网卡    -o 发数据的网卡

隐含匹配    端口匹配      -sport 源端口        --dport 目标端口

        ICMP类型匹配  --icmp-type  ICMP类型

需要取反使用!

基本目标操作

ACCEPT:允许通过/放行    

DROP:直接丢弃,不给出任何回应
REJECT:拒绝通过,必钥时给出提示
LOG:记录日志,然后传给下一条规则

主机型防火墙(自己保护自己)---filter表(INPUT OUTPUT FORWARD ) 

# eg:
[root@ ~]# iptables -t filter -A INPUT -p tcp -s 192.168.4.0/24 --dport -j ACCEPT
[root@ ~]# iptables -t filter -P INPUT DROP # 默认进入的数据包都丢弃
[root@ ~]# iptables -t filter -nL INPUT
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 192.168.4.0/24 0.0.0.0/ tcp dpt:

配置SNAT实现共享上网

开启路由转发    echo 1 > /proc/sys/net/ipv4_forward 或者   echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf

设置防火墙规则

   

iptables -t nat -A POSTROUTING -s xxx.xxx.xxx.xxx/ -p tcp --dport  -j SNAT --to-source xxx.xxx.xxx.xxx

地址伪装

iptables -t nat -A POSTROUTING -s xxx.xxx.xxx.xxx/ -p tcp --dport  -j MASQUEREAD

包过滤防火墙iptables(网络层)的更多相关文章

  1. 1、架构--架构图、Iptables(简介、四表五链、流程图、使用、扩展模块)、包过滤防火墙

    笔记 1.画架构图 2.Iptables 1.1 什么是防火墙 防止别人恶意访问. 1.2 防火墙种类 硬件防火墙 F5 软件防火墙 iptables firewalld 安全组 3.Iptables ...

  2. [转] Linux下防火墙iptables用法规则详及其防火墙配置

    from: http://www.cnblogs.com/yi-meng/p/3213925.html 备注: 排版还不错,建议看以上的链接. iptables规则 规则--顾名思义就是规矩和原则,和 ...

  3. Linux中的防火墙----iptables

    防火墙,它是一种位于内部网络与外部网络之间的网络安全系统.一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过. 防火墙根据主要的功能可分为网络层防火墙.应用层防火墙.数据库防火墙. 网 ...

  4. 【iptables】linux网络防火墙-iptables基础详解(重要)

    一:前言   防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种.无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘.而我们的任务就是需要去定义到底防 ...

  5. Linux下防火墙iptables用法规则详及其防火墙配置

    转:http://www.linuxidc.com/Linux/2012-08/67952.htm iptables规则 规则--顾名思义就是规矩和原则,和现实生活中的事情是一样的,国有国法,家有家规 ...

  6. Linux防火墙iptables介绍

    介绍网络防火墙是通过一个或多个允许或拒绝的规则来过滤网络流量的网络设备或软件.网络防火墙还可以执行更复杂的任务,例如网络地址转换,带宽调整,提供加密隧道以及更多与网络流量相关的任务.而我们的任务就是需 ...

  7. CentOS防火墙iptables的配置方法详解

    CentOS系统也是基于linux中的它的防火墙其实就是iptables了,下面我来介绍在CentOS防火墙iptables的配置教程,希望此教程对各位朋友会有所帮助. iptables是与Linux ...

  8. linux平台下防火墙iptables原理(转)

    原文地址:http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646466.html iptables简介 netfilter/iptables( ...

  9. 写了个Linux包过滤防火墙

    花几天写了个so easy的Linux包过滤防火墙,估计实际意义不是很大.防火墙包括用户态执行程序和内核模块,内核模块完全可以用iptable代替.由于在编写的过程一开始写的是内核模块所以就直接用上来 ...

随机推荐

  1. [转] Slf4j MDC机制

    MDC ( Mapped Diagnostic Contexts ),线程安全的诊断日志存放容器. 可用于存放线程的全局日志信息, 通过xml配置后可以打印在日志中,用于日志记录.定位.分析 相关:h ...

  2. fiddler模拟发送请求和响应

    iddler模拟发送请求和响应 一.fiddler模拟发送请求 1.fiddler模拟发送get请求 1)例如:访问博客园https://www.cnblogs.com/,并且登录输入密码账号登录,再 ...

  3. 使用pycharm开发web——django2.1.5(四)视图和模板相关

    刘老师说这块很重要..... 应该是很重要,大概看了一下,这里面关于views中函数作用,大概看来可能就是相应请求,传入数据和跳转,基本功能上貌似这些框架都差不多吧(其实我并没用过3个框架以上.... ...

  4. LeetCode. 计数质数

    题目要求: 统计所有小于非负整数 n 的质数的数量. 示例i: 输入: 10 输出: 4 解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 . 代码: class Soluti ...

  5. PHP的四种运行方式

    一丶cgi协议模式 cgi模式通用网关接口(Common Gateway Interface),它允许web服务器通过特定的协议与应用程序通信,调用原理大概为:用户请求->Web服务器接收请求- ...

  6. xss level11

    Level11 (1) (2)毫无头绪,查看PHP源代码发现,是从头文件的referer获取的输入. (3)用Burp抓包,修改头文件如下: (4)再点击Proxy界面的forward,回到浏览器页面 ...

  7. 认识函数(python)

    一般的函数都是有参数的,函数的参数都是放在函数定义的括号里的,函数参数的命名规则和我们说的变量的命名规则基本一样,一定要清晰明了.(能概括出它的意义,让人阅读你的代码,就知道这个参数是干嘛的就行).当 ...

  8. 对Python中print函数参数的认识

    输出函数是最常用的,对print()参数的准确认识尤为重要. sep='':sep参数表示函数中不同value的分隔符,默认为一个空格. end='':end参数表示函数结尾的处理,默认换行. 例如: ...

  9. Jobs(一)前端页面

    Java Web工程中的Intellij中Java Web工程的基本目录: 启动web工程后,显示的默认页面是index.html.需要注意的是,本来IDE自建的是index.jsp,我暂时改成了in ...

  10. 怎样设置Cookie

    因为 Cookie 是服务器保存在浏览器中的一小段信息, 因此这个设置应当是服务器发起的, 设置方法是在Response Header中添加: Set-Cookie字段, 值是多个键值对. 如下: / ...