Linux防火墙之iptables基础

2015-05-12  来源:本站原创  分类:RedHat Enterprise Linux 7  人气:689 

通过为防火墙提供有关对来自某个源,到某个目的地或具有特定协议类型的信息包要执行操作的指令及规则控制信息包的过滤。通过使用Netfilter/iptables系统提供的特殊命令iptables建立这些规则,并将其添加到内核空间的特定信息包过滤表内的链中。添加,除去及编辑规则命令的一般语法如下:

$ iptables [-t table] command [match] [target]

大部分规则都是按这种语法写的,如果不想用标准的表,就要在“table”处指定表名。一般情况下,没有必要指定使用的表,因为iptables默认使用Filter表来执行所有的命令。也没有必要必须在这里指定表名。

  • command:告诉程序该做什么,比如插入一个规则,在链的末尾增加一个规则,或者删除一个规则。
  • match:描述包的某个特点,以使这个包区别于其他所有的包,可以指定包的来源IP地址,网络接口,端口,协议类型或者其他。

若数据包符合所有的match,那么内核使用target来处理它,或者说把包发往target。例如,可以让内核把包发送到当前表中的其他链(可能是自己建立的),或者只是丢弃这个包而不做任何处理,或者向发送者返回某个特殊的应答。Netfilter/iptables内核空间默认的表和链如下:

Linux防火墙之iptables基础

下面逐个讨论这些选项:

1. table

[-t table]选项允许使用标准表之外的任何表。表是包含仅处理特定类型信息包的规则和链的信息包过滤表。有3种可用的表选项,即Filter,NAT和Mangle。该选项不是必需的,如果未指定,则Filter用作默认表。这里我们就只讲讲Filter表。Filter表用来过滤数据包,可以在任何时候匹配包并将其过滤,根据包的内容对包做DROP或ACCEPT。当然也可以预先在其他处做一些过滤,但是这个表才是设计用来过滤的。几乎所有的target都可以在此使用。

2. command

命令中必要的组成部分command是iptables命令的最重要部分,它告诉iptables命令要执行的操作。例如,插入规则,将规则添加到链的末尾或删除规则。下表展示了常用命令及其功能:

部分选项及其功能:

Linux防火墙之iptables基础

3. match

iptables命令的可选match部分指定信息包与规则匹配所应具有的特征(如源和目的地址及协议等),可归为5类:一是generic matches(通用的匹配),适用于所有的规则;二是TCP matches,只能用于TCP包;三是UDP ,只能用于UDP包;四是ICMP matches,针对ICMP包;五是针对状态,指所有者和访问的频率限制等。在此只介绍通用匹配:

Linux防火墙之iptables基础

4. target

目标是由规则指定的操作,那些与规则匹配的信息包执行这些操作。除了允许用户定义的目标之外,还有许多可用的目标选项用于建立高级规则的目标,如LOG, REDIRECT, MARK, MIRROR和MASQUERADE等。常用目标及其说明:

Linux防火墙之iptables基础

5. 状态机制

状态机制是iptables中特殊的一部分,连接跟踪可以让Netfilter知道某个特定连接的状态。运行连接跟踪的防火墙称为“带有状态机制的防火墙”,以下简称为“状态防火墙”。状态防火墙比非状态防火墙要安全,因为它允许编写更严密的规则。在iptables中,包和被跟踪连接的4种不同状态有关,即:NEW, ESTABLISHED, RELATED和INVALID。

相关文章
  • Linux防火墙之iptables基础 2015-05-12

    通过为防火墙提供有关对来自某个源,到某个目的地或具有特定协议类型的信息包要执行操作的指令及规则控制信息包的过滤.通过使用Netfilter/iptables系统提供的特殊命令iptables建立这些规则,并将其添加到内核空间的特定信息包过滤表内的链中.添加,除去及编辑规则命令的一般语法如下: $ iptables [-t table] command [match] [target] 大部分规则都是按这种语法写的,如果不想用标准的表,就要在"table"处指定表名.一般情况下,没有必要

  • Linux防火墙之iptables建立规则和链 2015-05-12

    在RHEL 7.0中安装启动iptables: yum install iptables-services #安装iptables systemctl mask firewalld.service #屏蔽firewalld服务 systemctl enable iptables.service #设置开机启动 systemctl enable ip6tables.service #设置开机启动 systemctl stop firewalld.service #停止firewalld服务 sys

  • iptables基础知识详解 2014-09-16

    iptables防火墙可以用于创建过滤(filter)与NAT规则.所有Linux发行版都能使用iptables,因此理解如何配置 iptables将会帮助你更有效地管理Linux防火墙.如果你是第一次接触iptables,你会觉得它很复杂,但是一旦你理解iptables的工 作原理,你会发现其实它很简单. 首先介绍iptables的结构:iptables -> Tables -> Chains -> Rules. 简单地讲,tables由chains组成,而chains又由rules组

  • Linux系统安装后的基础优化-基于CentOS(5.8/6.4) 2015-05-09

    在运维工作中,我们发现Linux系统安装之后并不能立即投入生产环境使用,往往需要先经过我们运维人员的优化才行. 下面我就为大家简单讲解几点关于Linux系统安装后的基础优化操作. 注意:本次优化都是基于CentOS(5.8/6.4).关于5.8和6.4两者优化时的小区别,我会在文中提及的. 优化条目: 修改ip地址.网关.主机名.DNS等 关闭selinux,清空iptables 添加普通用户并进行sudo授权管理 更新yum源及必要软件安装 定时自动更新服务器时间 精简开机自启动服务 定时自动

  • Linux防火墙之FirewallD简介 2015-05-12

    FirewallD提供了支持网络/防火墙区域定义网络链接以及接口安全等级的动态防火墙管理工具.它支持IPv4,IPv6防火墙设置以及以太网桥接,并且拥有运行时配置和永久配置选项.它也支持允许服务或者应用程序直接添加防火墙规则的接口.system-config-firewall/lokkit防火墙模型是静态的,每次修改都要求防火墙完全重启(注:system-config-firewall就是iptables的图形界面管理工具,而Firewalld是由Red Hat的Thomas Woerner为F

  • Linux Firewalls Using iptables 2010-06-08

    Forums Corrections About (C) Peter Harrison <! - Adsense Search -> <! - LinuxHomeNetworking Stop -> Quick HOWTO: Ch14: Linux Firewalls Using iptables <! - LinuxHomeNetworking Start -> <! - FirstHeading -> Linux is growing. It is no

  • Linux防火墙 Firestarter 2008-09-17

    Firestarter 网站 : http://www.fs-security.com/ Firestarter是一个非常好用的防火墙图形化配置工具,作者和开发者是芬兰人. 首先肯定的说Firestarter防火墙是一款非常优秀的基于GUI图形用户界面下的,完全免费的自由软件,它为中小型Linux网络的系统管理员提供了 良好的安全服务.它的使用简单但功能强大:如果你的Linux系统中安装的声卡.并且在Firestarter中进行了配置,那么在遭到系统入侵时它还会 发出报警铃声.Firestart

  • Linux知识总结复习2:Linux防火墙的基本概念和使用方法(未完待续) 2012-12-02

    要理解Linux防火墙,先记住下面两张图(未完待续): 图1 Netfilter packet flow 图2 详细处理

  • Linux防火墙iptables基本使用方法 2012-10-09

    iptables是Linux上常用的防火墙软件,一般VPS系统里面默认都有集成. 1.安装iptables防火墙 如果没有安装iptables需要先安装,CentOS执行: yum install iptables Debian/Ubuntu执行: apt-get install iptables 2.清除已有iptables规则 iptables -F iptables -X iptables -Z 3.开放指定的端口 #允许本地回环接口(即运行本机访问本机) iptables -A INPU

  • 关闭或开启Linux上的iptables防火墙,SSH端口 - 少即是多 - 专注 2012-06-13

    关闭 /etc/rc.d/init.d/iptables stop 开启 /etc/rc.d/init.d/iptables start 查看当前配置:iptables -L redhat : chkconfig --level 2345 iptables off service iptables stop 但是不推荐关闭防火墙 1) 重启后生效 开启: chkconfig iptables on 关闭: chkconfig iptables off 2) 即时生效,重启后失效 开启: serv

  • linux centos fedora iptables防火墙配置 2014-09-11

    平时在搭建环境的时候,经常会有防火墙(iptables)的配置, 现整理成脚本,方便执行 #! /bin/bash #---- settings rules ----------- iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT iptables -A INPUT -

  • 关于linux防火墙 2014-08-09

    事实上,每一个主要的Linux版本中都有不同的防火墙软件套件.Iptabels(netfilter)应用程序被认为是Linux中实现包过虑功能的第四代应用程序.第一代是Linux 内核1.1版本所使用的Alan Cox从BSD Unix中移植过来的ipfw. 在2.0版的内核中,Jos Vos和其它一些程序员对ipfw进行了扩展,并且添加了ipfwadm用户工具.在2.2版内核中, Russell和Michael Neuling做了一些非常重要的改进,也就是在该内核中,Russell添加了帮助用

  • Linux操作系统下IPTables配置方法详解(转载) - 少即是多 - 专注 2012-06-13

    配置一个filter表的防火墙 1.查看本机关于IPTABLES的设置情况 [[email protected] ~]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source dest

  • Linux安全之iptables详解 2014-07-31

    基本上,依据防火墙管理的范围,我们可以将防火墙区分为网域型与单一主机型的控管.在单一主机型的控管方面, 主要的防火墙有封包过滤型的 Netfilter 与依据服务软件程序作为分析的 TCP Wrappers(只于服务名称有关) 两种.若以区域型的防火墙而言, 由于此类防火墙都是当作路由器角色,因此防火墙类型主要则有封包过滤的 Netfilter 与利用代理服务器 (proxy server) 进行存取代理的方式了. 防火墙在 做信息包过滤决定时,有一套遵循和组成的规则,这些规则存储在专用的信 息

  • 防火墙与iptables 2014-11-24

    iptables负责构建和操作Linux内核中的网络分组过滤规则.可以使用iptables来创建防火墙,保护系统免受恶意用户的攻击以及设置NAT(Network Address Translation,网络地址转换,该技术可以让多个系统共享单个因特网连接). netfilter与iptables:常被称为iptables的功能是由两部分组成的,netfilter和iptables.netfilter部分在内核空间运行,它是一组保存着一系列规则的表,内核利用这些规则控制网络分组过滤.iptable

  • Linux防火墙之介绍 2015-05-12

    Linux提供了一个非常优秀的防火墙工具,即Netfilter/iptables(http://www.netfilter.org/).它完全是免费的,并且可以在一台低配置的老机器上很好地运行.Netfilter/iptables功能强大,使用灵活,并且可以对流入和流出的信息进行细化控制. 事实上,每个主要的Linux版本中都有不同的防火墙软件套件,iptables(Netfilter)应用程序被认为是Linux中实现包过滤功能的第4代应用程序. Netfilter/iptables系统如何工作

  • linux 防火墙的相关设置 2014-11-20

    查看状态:/etc/init.d/iptables status 关闭:/etc/init.d/iptables stop 禁止防火墙在系统启动的时候启动:/sbin/chkconfig --level 2345 iptables off 重启防火墙:/etc/init.d/iptables restart 其它高级用法:如单独开放某个端口什么的需求自行google. 参考:http://blog.csdn.net/bslzl/article/details/7937899

  • 永久关闭linux防火墙 2015-02-10

    1.首先查看防火墙状态: service iptables status 2.永久性生效,重启后不会复原 开启:chkconfig iptables on 关闭:chkconfig iptables off 3.即时生效,重启后复原 开启:service iptables start 关闭:service iptables stop 3.设置后重启:reboot

  • Linux防火墙之具有命令行的FirewallD的基本操作 2015-05-12

    启动FirewallD服务: systemctl enable firewalld.service #设置开机启动 systemctl start firewalld.service #开启服务 查看防火墙状态: systemctl status firewalld 1. 区域管理 1.1. 网络区域简介 通过将网络划分成不同的区域,制定出不同区域之间的访问控制策略来控制不同程序区域间传送的数据流.例如,互联网是不可信任的区域,而内部网络是高度信任的区域.网络安全模型可以在安装,初次启动和首次建

  • Linux - AT&T汇编基础 2010-06-03

    在linux内核的源代码中,以汇编语言编写的程序或程序段,有两种不同的形式. 第一种事完全的汇编代码,这样的代码采用.s作为文件的后缀.事实上,尽管是完全的汇编代码,现代的汇编工具也吸收了C语言的长处,也在汇编之前加上了一趟预处理,而预处理之前的文件则以.s为后缀.此类(.s)文件也和C程序一样,可以使用#include.#ifdef等等成分,而数据结构也一样可以在.h的文件中加以定义. 第二种是嵌在C程序中的汇编语言片断.虽然在ANSI的C语言标准中并没有关于汇编片段的规定,事实上各种实际使用