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& ...
随机推荐
- /etc/sysconfig/network-scripts/ifcfg-eth0
以下各值常见于所有的基本配置文件中:* DEVICE=name,这里name是物理设备的名字(动态分配的PPP设备应当除外,它的名字是“逻辑名”.* IPADDR=addr, 这里addr是IP地址. ...
- 【架构之路之WCF全析(一)】--服务协定及消息模式
上周微软开公布会说.NET支持全然跨平台和并开放Core源代码的新闻,让我们顿时感到.NET要迎来它的春天.尽管早在几年前.NET就能开发Android和IOS,可是这次的跨平台把Linux都放到了微 ...
- Android点滴---ViewHolder通用,优雅写法
近期在做项目时,又要写 ViewHolder. 突然想到网上看看有没什么好的写法! 不知道你是不是也烦透了写那些没有技术含量的ViewHolder 看看这些.也许会有收获! 然后就找到了以下两篇文章( ...
- struts2集成fckeditor(来自大型门户网站是这样练成的一书)
- 基于Android 下载文件时,更新UI简单帮助类
因为在项目开发时.有这种简单需求,问谷歌,网络上也有好多Utils工具类,可是比較冗余.自己就简单的写了一个简单帮助类. /** * 下载文件,更新UI简单帮助类 * * @author jarlen ...
- Vb.net/VB 声明API功能父窗口功能
回想第一次敲房费,他说自己是api函数实现父窗口及其子窗口最小化的功能.现在再次遇到,自己就在思考,能不能继续使用API函数呢?答案当然是Of Course! 事实上细致看两者并没有多大的差别,先看看 ...
- uIP中国的协议文件:Ch01
uIP0.9 参考 by Doxygen 1.3.3 Tue Oct 7 15:51:00 2003 译: fishOnFly(鱼在飞) uIP-refman中文pdf下载 第1章 uIP TCP/ ...
- gdb经常使用命令总结
1: 对于在应用程序中增加參数进行调试的方法: 直接用 gdb app -p1 -p2 这样进行调试是不行的. 须要像下面这样使用: #gdb app (gdb) r -p ...
- VS2008下直接安装Boost库1.46.1版本号
Boost图书馆是一个移植.提供源代码C++库.作为一个备份标准库,这是C++发动机之间的一种标准化的过程. Boost图书馆由C++图书馆标准委员会工作组成员发起,一些内容有望成为下一代C++标准库 ...
- Java泛型中extends和super的理解(转)
E – Element (在集合中使用,因为集合中存放的是元素) T – Type(Java 类) K – Key(键) V – Value(值) N – Number(数值类型) ? – 表示不确定 ...