一:Iptables防火墙服务

iptables分为两个部分:一个部分在内核中实现,一个为用户接口命令iptables,用户通过该命令来改动防火墙的功能。所以,iptables要使用对应的功能。必需要在内核中加入对应的模块。

modprobe加入模块

1:防火墙匹配规则   raw表----> mangle表------->nat表------>filter表。

raw:主要是进行包跟踪 ,包括的rule chians(规则链): PEREROUTING  OUTPUT

mangle: 设置数据包的标记                             (规则链)   : PERE  OUTPUT INPUT POST FORWARD

nat:改动数据包中的源。目地址和mac            (规则链)   : POST PERE  OUTPUT

filter:对包进行过滤。                                      (规则链)   : INPUT OUTPUT FORWARD

一个规则链中能够有非常多规则,一个表中能够包括多个链,规则依次匹配。匹配则停止。

2:对于入站和出站数据,经过的链为 PEREROUTING --->INPUT --->OUTPUT ---> POSTROUTING

3:对转发的数据:经过的链为  PEREROUTING --->FORWARD ---->POSTROUTING

防火墙先依照表的顺序,再依照数据的流向来进行对应链中的规则的匹配。

4:链中规则的jump(动作)分为:ACCEPT(接受),DROP(丢弃)。REJECT(拒绝)。LOG(日志)。SNAT

DNAT REDRECT等等

动作的意思就是当匹配到该规则时,防火墙进行如何的操作。丢弃还是通过。或者记录到日志中。当动作为LOG时,会继续向下匹配,所以为LOG时应该写在最前面。

二:iptables的具体命令配置

1: iptables -nvL   -n(numeric)-L(List) -v(verbose) 具体显示filter表中的规则,默认filter表

2: iptables -t filter -P INPUT ACCEPT   配置INPUT链默认的policy为ACCEPT  -t (table)

3: iptables -A INPUT      向INPUT链中加入规则。后面接对应的选项  -A (append)

4: iptables  -D INPUT  rules numbers   删除INPUT链中的规则 rules numbers为规则的序号。-D(delete)

5: iptables  -I  INPUT  4  rules              在INPUT的第四条规则中插入规则 -I (insert)

6: iptables  -A INPUT -m [ limit/multiport/state] 加入对应的模块实现对应的功能,-m(model),

7: iptables -A INPUT -m state --state NEW -j ACCEPT  使用state模块,通过数据包状态匹配来控制。

8: service iptables save  将规则保存到/etc/iptables文件。下次重新启动自己主动生效。

9: iptables-save  > iptables.conf  将配置写入iptables.conf文件。iptables-restore<iptables.conf写回。

三:匹配的类型

1:通用类型的匹配.

如协议类型,网络接口。网络地址  如: -p  tcp/udp/icmp -i eth0 -s 172.16.0.1 --sport 60等

2:隐含条件匹配

通常以特定的协议匹配为前提

3:显示条件匹配

须要加入对应的扩展模块来实现。

如  -m  limit  --limit  5/sec -j ACCEPT 实现数据包通过速率

-m multiport  --dport 80,53,21 实现多个端口同一时候控制   -mstate --state NEW or ESTABLISHED

四:SNAT和DNAT动作的原理

1:在利用iptables进行PAT的nat地址转换的时候。必须在POSTROUING链中写入规则,这样FORWARD链中对内部地址的控制规则才会有效,假设再PREROUTING就转换,就立马变为公有地址了,FORWARD链中的规则匹配不到,则失效,

2:在公布内部server的时候,必需要在PREROUING链中写入nat转换规则,假设不这样,当外网訪问的时候。为防火墙上的一个公有地址接口,不会经过转发直接被防火墙接收。

3:因为防火墙server上有缓存。在回来的数据会直接转换。

4:配置SNAT,和DNAT命令。

1:配置SNAT   iptables -t nat -A POSTROUTING -o eth1 -s 172.16.0.0/16 -j SNAT --to-source  27.45.33.231  这里一定要接出接口的名字!

2:  配置DNAT,  iptables -t nat -A PREROUTING -i eth2 -d 23.55.13.45 -j DNAT --to-destination 172.16.0.3       这里一定要指定入接口的名字!

版权声明:本文博客原创文章,博客,未经同意,不得转载。

linux处置服务Iptables的更多相关文章

  1. Linux防火墙:iptables禁IP与解封IP常用命令

    在Linux服务器被攻击的时候,有的时候会有几个主力IP.如果能拒绝掉这几个IP的攻击的话,会大大减轻服务器的压力,说不定服务器就能恢复正常了. 在Linux下封停IP,有封杀网段和封杀单个IP两种形 ...

  2. 快速入门linux系统的iptables防火墙 1 本机与外界的基本通信管理

    概述 iptables是一种运行在linux下的防火墙组件,下面的介绍可以快速的学习iptables的入门使用. 特点(重要) 它的工作逻辑分为 链.表.规则三层结构. 数据包通过的时候,在对应表中, ...

  3. linux常用服务软件搭建及使用技巧

    一.Webmin安装: Webmin 是一个基于浏览器的管理工具,可以应用于Linux 和其他一些平台,提供了可以完成很多管理和操作任务的图形化界面 •安装完成后,root 用户会被自动创建,密码为系 ...

  4. Linux Postfix 服务

    Linux Postfix 服务 postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)开源软件.能够很好地兼容 Sendmail服务程序,可以方便 Sendm ...

  5. linux下通过iptables只允许指定ip地址访问指定端口的设置方法

    这篇文章主要介绍了linux下通过iptables只允许指定ip地址访问指定端口的设置方法,需要的朋友可以参考下. 首先,清除所有预设置 iptables -F#清除预设表filter中的所有规则链的 ...

  6. Linux防火墙简介 – iptables配置策略

    Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...

  7. Linux操作系统下IPTables配置方法详解

    如果你的IPTABLES基础知识还不了解,建议先去看看. 们来配置一个filter表的防火墙 1.查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables -L -n Cha ...

  8. Linux软件服务管理

    学习该课程之前先学习linux的软件安装管理 1.linux的运行级别有下面几种类型 在后面的服务启动管理之中会被使用到 [root@weiyuan httpd-2.4.20]# runlevel N ...

  9. Zabbix如何监控Linux防火墙服务

    今天在巡检的时候,突然想到Zabbix能否监控Linux的防火墙服务呢? 显然是可以的,但是Zabbix 5下默认的模板"Template OS Linux by Zabbix agent& ...

随机推荐

  1. js实时监听input中值的变化

    $(function(){ $('#inputid').bind('input propertychange', function() { // input 中的值 var params = $(th ...

  2. java 解析 json 遍历未知key

    1.—————————————————————————————————————————————————————————————— import net.sf.json.JSONObject; Stri ...

  3. Android 权限添加

    在AndroidMainFest.xml中加上以下代码就行了 添加WiFi以及访问网络的权限: <uses-permission android:name="android.permi ...

  4. android 泰国/缅甸语/捷克较低,Contacts联系出现精神错乱之类的问题清单

    更改ContactsProvider2.java文件 public static final String SECTION_HEADING = "SUBSTR(%1$s,1,1)" ...

  5. 一个简单的java僵局演示示例

    在实际编程,为了避免死锁情况,但是,让你写一个有用的程序死锁似几乎不要太简单(种面试题),下面是一个简单的死锁样例. 线程的同步化可能会造成死锁,死锁发生在两个线程相互持有对方正在等待的东西(实际是两 ...

  6. Codeforces Round #191 (Div. 2) D. Block Tower

    D. Block Tower time limit per test 2 seconds memory limit per test 256 megabytes input standard inpu ...

  7. Hbase结构简单、作法

    Hbase架构简单介绍.实践 版权声明:本文博主原创文章,博客,未经同意不得转载.

  8. java序列化是什么和反序列化和hadoop序列化

    1.什么是序列化和系列化DE- 神马是序列化它,序列化是内存中的对象状态信息,兑换字节序列以便于存储(持久化)和网络传输.(网络传输和硬盘持久化,你没有一定的手段来进行辨别这些字节序列是什么东西,有什 ...

  9. WPF/Silverlight中图形的平移,缩放,旋转,倾斜变换演示

    原文:WPF/Silverlight中图形的平移,缩放,旋转,倾斜变换演示 为方便描述, 这里仅以正方形来做演示, 其他图形从略. 运行时效果图:XAML代码:// Transform.XAML< ...

  10. 【6】和作为连续序列s

    称号:输入一个整数s,并打印出所有s整数的连续序列(含有至少2的数量). 如输入9,输出2.3.4和4.5两个序列 方案一:因为序列至少要2个数,则两个数上限值为(1+s)/2,我们能够枚举该序列的起 ...