linux处置服务Iptables
一: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的更多相关文章
- Linux防火墙:iptables禁IP与解封IP常用命令
在Linux服务器被攻击的时候,有的时候会有几个主力IP.如果能拒绝掉这几个IP的攻击的话,会大大减轻服务器的压力,说不定服务器就能恢复正常了. 在Linux下封停IP,有封杀网段和封杀单个IP两种形 ...
- 快速入门linux系统的iptables防火墙 1 本机与外界的基本通信管理
概述 iptables是一种运行在linux下的防火墙组件,下面的介绍可以快速的学习iptables的入门使用. 特点(重要) 它的工作逻辑分为 链.表.规则三层结构. 数据包通过的时候,在对应表中, ...
- linux常用服务软件搭建及使用技巧
一.Webmin安装: Webmin 是一个基于浏览器的管理工具,可以应用于Linux 和其他一些平台,提供了可以完成很多管理和操作任务的图形化界面 •安装完成后,root 用户会被自动创建,密码为系 ...
- Linux Postfix 服务
Linux Postfix 服务 postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)开源软件.能够很好地兼容 Sendmail服务程序,可以方便 Sendm ...
- linux下通过iptables只允许指定ip地址访问指定端口的设置方法
这篇文章主要介绍了linux下通过iptables只允许指定ip地址访问指定端口的设置方法,需要的朋友可以参考下. 首先,清除所有预设置 iptables -F#清除预设表filter中的所有规则链的 ...
- Linux防火墙简介 – iptables配置策略
Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...
- Linux操作系统下IPTables配置方法详解
如果你的IPTABLES基础知识还不了解,建议先去看看. 们来配置一个filter表的防火墙 1.查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables -L -n Cha ...
- Linux软件服务管理
学习该课程之前先学习linux的软件安装管理 1.linux的运行级别有下面几种类型 在后面的服务启动管理之中会被使用到 [root@weiyuan httpd-2.4.20]# runlevel N ...
- Zabbix如何监控Linux防火墙服务
今天在巡检的时候,突然想到Zabbix能否监控Linux的防火墙服务呢? 显然是可以的,但是Zabbix 5下默认的模板"Template OS Linux by Zabbix agent& ...
随机推荐
- js实时监听input中值的变化
$(function(){ $('#inputid').bind('input propertychange', function() { // input 中的值 var params = $(th ...
- java 解析 json 遍历未知key
1.—————————————————————————————————————————————————————————————— import net.sf.json.JSONObject; Stri ...
- Android 权限添加
在AndroidMainFest.xml中加上以下代码就行了 添加WiFi以及访问网络的权限: <uses-permission android:name="android.permi ...
- android 泰国/缅甸语/捷克较低,Contacts联系出现精神错乱之类的问题清单
更改ContactsProvider2.java文件 public static final String SECTION_HEADING = "SUBSTR(%1$s,1,1)" ...
- 一个简单的java僵局演示示例
在实际编程,为了避免死锁情况,但是,让你写一个有用的程序死锁似几乎不要太简单(种面试题),下面是一个简单的死锁样例. 线程的同步化可能会造成死锁,死锁发生在两个线程相互持有对方正在等待的东西(实际是两 ...
- 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 ...
- Hbase结构简单、作法
Hbase架构简单介绍.实践 版权声明:本文博主原创文章,博客,未经同意不得转载.
- java序列化是什么和反序列化和hadoop序列化
1.什么是序列化和系列化DE- 神马是序列化它,序列化是内存中的对象状态信息,兑换字节序列以便于存储(持久化)和网络传输.(网络传输和硬盘持久化,你没有一定的手段来进行辨别这些字节序列是什么东西,有什 ...
- WPF/Silverlight中图形的平移,缩放,旋转,倾斜变换演示
原文:WPF/Silverlight中图形的平移,缩放,旋转,倾斜变换演示 为方便描述, 这里仅以正方形来做演示, 其他图形从略. 运行时效果图:XAML代码:// Transform.XAML< ...
- 【6】和作为连续序列s
称号:输入一个整数s,并打印出所有s整数的连续序列(含有至少2的数量). 如输入9,输出2.3.4和4.5两个序列 方案一:因为序列至少要2个数,则两个数上限值为(1+s)/2,我们能够枚举该序列的起 ...