一、简介
1、iptables的定义:
防火墙分为硬件防火墙和软件防火墙。
iptables是软件防火墙,工作在OSI的第三、四层,是从操作系统层面对网络流量进行监控和防护。
延伸:
(1)Linux系统内核集成了网络访问控制的功能,通过netfilter模块来实现,是内核的一部分(内核空间)。
(2)用户层(用户空间)可以通过iptables程序对netfilter进行控制管理,进而实现网络的访问控制。
(3)TCP_Wrapppers也是网络控制的一个工具,作用在应用层(7层防火墙)
小结:
netfilter模块:内核空间,是内核的一部分。
iptables组件: 用户空间,提供管理防火墙的手段,主要作用在传输层(4层防火墙)。

其他参考:http://www.zsythink.net/archives/1199/

2、iptables的结构:
众多的路由规则(Rule)和预设的规则(policy)组成了一个功能链(chain),多个链组成一个表,多个表就组成了防火墙iptables。
最常用的就是filter表,nat表。

iptables是(4张)表的集合:filter、nat、mangle、raw
表是(5条)链的集合:PREROUTING、INPUT、OUTPUT、FORWARD、POSTROUTING

链是规则的集合。
5条链和路由表组成2条通路:
(1)不通过服务器内部的通路
PREROUTING、路由表、FORWARD、POSTROUTING
(2)通过服务内部的通路
PREROUTING、路由表、INPUT、本地服务、OUTPUT、POSTROUTING

3、常用表功能:filter、nat
(1)filter表:用于数据包的过滤和网络控制。
含3条链:INPUT、OUTPUT、FORWARD
(2)nat表:用于地址转换(地址映射)和端口转换。如修改源地址和目标地址、修改端口号
含3条链:PREROUTING、OUTPUT、POSTROUTING

(3)mangle表,对数据包进行修改,例如给数据包打标记MARK

(4)raw表,主要做连接追踪。

iptables为我们定义了4张"表",当他们处于同一条"链"时,执行的优先级如下。

优先级次序(由高而低):

raw --> mangle --> nat --> filter

二、安装和简单使用
1、安装iptables
yum install iptables -y

2、开启和关闭iptables
service iptables start
service iptables stop

3、查看iptables
iptables -L
iptables -t filter -L # INPUT、OUTPUT、FORWARD
iptables -t nat -L # PREROUTING、OUTPUT、POSTROUTING
iptables -t mangle -L # PREROUTING、INPUT、OUTPUT、FORWARD、POSTROUTING
iptables -t raw -L # PREROUTING、OUTPUT

iptables -t filter -L --line-numbers # 查看规则编号

三、规则配置
1、规则永久设置
vim /etc/sysconfig/iptables

2、清空防火墙
iptables -F

3、举例
iptables -t filter -I INPUT -j ACCEPT

iptables-1基本知识和工作原理的更多相关文章

  1. strut2的核心知识和工作原理

    http://blog.csdn.net/laner0515/article/details/27692673/     写的很详细

  2. 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之RAC 工作原理和相关组件(三)

    RAC 工作原理和相关组件(三) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总.然后形成体 ...

  3. ping命令知识 Ping命令工作原理详解

    在网络应用中,ping网速与IP地址等都是非常常用的命令,但大家知道ping命令的工作原理吗?要知道这其中的奥秘,我们有必要来看看Ping命令的工作过程到底是怎么样的.下面介绍下ping命令的详细知识 ...

  4. iptables防火墙工作原理

    iptables防火墙工作原理 简介:iptables防火墙工作在网络层,针对TCP/IP数据包实施过滤和限制,iptables防火墙基于内核编码实现,具有非常稳定的性能和高效率: iptables属 ...

  5. 【转】【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之RAC 工作原理和相关组件(三)

    原文地址:http://www.cnblogs.com/baiboy/p/orc3.html 阅读目录 目录 RAC 工作原理和相关组件 ClusterWare 架构 RAC 软件结构 集群注册(OC ...

  6. 场效应管种类-场效应管N、P沟道与增强、耗尽型工作原理等知识详解 如何选用晶体三极管与场效应管的技巧

    http://www.kiaic.com/article/detail/1308.html 场效应管种类场效应管 场效应晶体管(Field Effect Transistor缩写(FET))简称场效应 ...

  7. JAVA知识积累 JSP第一篇【JSP介绍、工作原理、生命周期、语法、指令、行为】

    什么是JSP JSP全名为Java Server Pages,java服务器页面.JSP是一种基于文本的程序,其特点就是HTML和Java代码共同存在! 为什么需要JSP JSP是为了简化Servle ...

  8. 转载:【Oracle 集群】RAC知识图文详细教程(三)--RAC工作原理和相关组件

    文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...

  9. 11.深入k8s:kubelet工作原理及源码分析

    转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com 源码版本是1.19 kubelet信息量是很大的,通过我这一篇文章肯定是讲不全的,大家可 ...

随机推荐

  1. java查看线程的堆栈信息

    通过使用jps 命令获取需要监控的进程的pid,然后使用jstack pid 命令查看线程的堆栈信息. 通过jstack 命令可以获取当前进程的所有线程信息. 每个线程堆中信息中,都可以查看到线程ID ...

  2. Qt源码学习之路(2) QCoreApplication(1)

    QCoreApplication最重要的函数便是exec(),我们便从这个函数开始分析QCoreApplication都干了什么. 先列出exec()函数的源码 static int exec();/ ...

  3. DOM 是什么,Document Object Model,文档对像模型

    #为什么会想起来写这个 在写dynaTrace Ajax的时候,写到这个是个前端性能测试工具,这个工具能记录请求时间,前端页面渲染时间,DOM方法执行时间,以及JavaScript代码解析和执行时间. ...

  4. 杀死Linux中的defunct进程(僵尸进程)的方法指南

    杀死Linux中的defunct进程(僵尸进程)的方法指南_LINUX_操作系统_脚本之家https://www.jb51.net/LINUXjishu/457748.html 这样能看到僵尸进程.

  5. leetcode 266.Palindrome Permutation 、267.Palindrome Permutation II

    266.Palindrome Permutation https://www.cnblogs.com/grandyang/p/5223238.html 判断一个字符串的全排列能否形成一个回文串. 能组 ...

  6. openresty开发系列40--nginx+lua实现获取客户端ip所在的国家信息

    openresty开发系列40--nginx+lua实现获取客户端ip所在的国家信息 为了实现业务系统针对不同地区IP访问,展示包含不同地区信息的业务交互界面.很多情况下系统需要根据用户访问的IP信息 ...

  7. redis连接池——JedisPool和JedisCluster的介绍与使用

    目录 Jedis使用方式的介绍 Redis连接池介绍 创建连接池配置文件 单机版的Redis连接池 集群版的Redis连接池 总结 Jedis使用方式的介绍 Jedis就是Java实现的操作Redis ...

  8. 使用C++调用并部署pytorch模型

    1.背景(Background) 上图显示了目前深度学习模型在生产环境中的方法,本文仅探讨如何部署pytorch模型! 至于为什么要用C++调用pytorch模型,其目的在于:使用C++及多线程可以加 ...

  9. copyProperties 忽略null值字段

    在做项目时遇到需要copy两个对象之间的属性值,但是有源对象有null值,在使用BeanUtils来copy时null值会覆盖目标对象的同名字段属性值,然后采用以下方法找到null值字段,然后忽略: ...

  10. 取消Windows server 2008关机提示备注的方法

    打开“开始”-“运行”,在“打开”一栏中输入“gpedit.msc”命令打开组策略编辑器,依次展开“计算机配置”→“管理模板”→“系统”,双击右侧窗口出现的“显示‘关闭事件跟踪程序’”,将“未配置”改 ...