一: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. 《JavaScript设计模式与开发实践》读书笔记之享元模式

    1. 享元模式 享元模式是一种用于性能优化的模式,享元模式的核心是运用共享技术来有效支持大量细粒度的对象 1.1 传统的文件上传方法 以文件上传为例,文件上传功能可以选择依照队列,一个一个的排队上传, ...

  2. 八月份 CUGBACM_Summer_Tranning 题解

    CUGBACM_Summer_Tranning4 比赛链接:http://vjudge.net/contest/view.action?cid=52230#overview 题解链接: F . HDU ...

  3. 在TextView中加入图片

    TextView是一个非常强大的控件,有时须要在一个控件中同一时候显示图片和文字,使用TextView非常easy实现. 方法一: 聊天软件比方QQ一般都会有发送表情的功能,使用SpannableSt ...

  4. Android开发之Buidler模式初探结合AlertDialog.Builder解说

          什么是Buidler模式呢?就是将一个复杂对象的构建与它的表示分离,使得相同的构建过程能够创建不同的表示.Builder模式是一步一步创建一个复杂的对象,它同意用户能够仅仅通过指定复杂对象 ...

  5. WPF Delegate委托整理

    那啥,是从这里整理出来的,感谢Rising_Sun,整理的过于简单,看不明白的戳这里 using System; using System.Collections.Generic; using Sys ...

  6. friend keyword 对于模板 并不只不过友元!!!

    friend是C++中封装的漏网之鱼. C++中的friend同意其它的类或者是函数訪问本类的不论什么成员.甚至是private成员,仅仅要该类声明其为友元. 但是,在有些情况下,并非同意外界訪问类的 ...

  7. spring 重定向以及转发 乱码问题解决

    1.spring 转发 request.setAttribute("id", id); request.setAttribute("name",name); r ...

  8. C语言程序代写(qq:928900200)

    1cs3157 – Advanced ProgrammingSummer 2014, Project 1, 150 pointsJune 17, 2014Follow these step-by-st ...

  9. #Windows Phone:在HTML5专案中,如何从Javascript传送字串到C#的APP端

    原文:#Windows Phone:在HTML5专案中,如何从Javascript传送字串到C#的APP端 #Windows Phone:在HTML5专案中,如何从Javascript传送字串到C#的 ...

  10. 【Android进阶】让程序运行效率更高的编程技巧总结

    1.在程序中若出现字符串连接的情况,请使用StringBuffer代替String,这样可以减少多次创建String以及垃圾回收所带来的内存消耗 2.尽量使用局部变量.调用方法时传递的参数以及调用中创 ...