iptables规则配置

iptables常用的表有filter,nat,mangle表

对于filter来讲一般只能做在3个链上:INPUT ,FORWARD ,OUTPUT

对于nat来讲一般也只能做在3个链上:PREROUTING ,OUTPUT ,POSTROUTING

mangle则是5个链都可以做:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING

配置iptables表的默认规则

iptables -P INPUT DROP

iptables -P OUTPUT DROP

iptables -P FORWARD DROP

查看iptables 规则

iptables [-t 表名] -L -n

以序号显示的方式查看iptables规则

iptables -L -n --line-number

删除规则

iptables -D number

例子:

对22号端口进行放行

iptables -I INPUT -p tcp --dport 22 -j ACCEPT

这条语句会在iptables规则的最上面添加一条新的规则

-A 在iptables规则最后面添加

-I 在iptables规则的最前面添加

禁止源地址是192.168.1.2的任何访问

iptables -I INPUT -s 192.168.1.2 -j DROP

开放多个端口

iptables -A Filter -p tcp -m multiport --destination-port 22,53,80,110 -s 192.168.20.3 -j REJECT

开放多个连续的端口

iptables -A Filter -p tcp -m multiport --source-port 22,53,80,110 -s 192.168.20.3 -j REJECT

iptables -A Filter -p tcp --source-port 2:80 -s 192.168.20.3 -j REJECT

SNAT基于原地址的转换

基于原地址的转换一般用在我们的许多内网用户通过一个外网的口上网的时候,这时我们将我们内网的地址转换为一个外网的IP,我们就可以实现连接其他外网IP的功能。

所以我们在iptables中就要定义到底如何转换:

定义的样式:

比如我们现在要将所有192.168.10.0网段的IP在经过的时候全都转换成172.16.100.1这个假设出来的外网地址:

iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j SNAT --to 172.16.100.1

这样,只要是来自本地网络的试图通过网卡访问网络的,都会被统统转换成172.16.100.1这个IP.

那么,如果172.16.100.1不是固定的怎么办?

我们都知道当我们使用联通或者电信上网的时候,一般它都会在每次你开机的时候随机生成一个外网的IP,意思就是外网地址是动态变换的。这时我们就要将外网地址换成 MASQUERADE(动态伪装):它可以实现自动寻找到外网地址,而自动将其改为正确的外网地址。所以,我们就需要这样设置:

iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j MASQUERADE

这里要注意:地址伪装并不适用于所有的地方。

DNAT目标地址转换

对于目标地址转换,数据流向是从外向内的,外面的是客户端,里面的是服务器端通过目标地址转换,我们可以让外面的ip通过我们对外的外网ip来访问我们服务器不同的服务器,而我们的服务却放在内网服务器的不同的服务器上。

如何做目标地址转换呢?:

iptables -t nat -A PREROUTING -d 192.168.10.18 -p tcp --dport 80 -j DNAT --to 172.16.100.2

目标地址转换要做在到达网卡之前进行转换,所以要做在PREROUTING这个位置上

更详细的iptables配置可以参考http://blog.csdn.net/cssmhyl/article/details/7966789

时间: 2024-11-07 07:25:31

iptables规则配置的相关文章

CentOS配置iptables规则并使其永久生效

? 版权声明:本文为博主原创文章,转载请注明出处  1. 目的 最近为了使用redis,配置远程连接的使用需要使用iptable是设置允许外部访问6379端口,但是设置完成后重启总是失效.因此百度了一下如何设置永久生效,并记录.  2. 设置 2.1 添加iptables规则 iptables -I INPUT 1 -p tcp -m state --state NEW -m tcp --dport 6379 -j ACCEPT 2.2 保存 service iptables save 执行这个

使用本脚本可以自动批量完成中间节点环境的部署工作,包括:Nginx编译安装、添加程序管理脚本、设置开机启动、反向代理配置、证书分发、添加iptables规则等

使用本脚本可以自动批量完成中间节点环境的部署工作,包括:Nginx编译安装.添加程序管理脚本.设置开机启动.反向代理配置.证书分发.添加iptables规则等.脚本支持自定义nginx安装版本.设置编译模块.配置监听端口等. 1. Nginx Role规则说明 本脚本用于中间节点(Nginx反向代理)环境的自动化配置,主要内容包括: 安装基础依赖环境: 创建nginx启动用户(支持自定义用户): 下载nginx安装文件(可自定义nginx版本): 解压安装文件: 执行编译安装(可自定义编译参数和

iptables防火墙配置

iptables/netfilter:    Packets Filter Firewall:          包过滤型防火墙:  Firewall:隔离工具,工作于主机或网络的边缘处,对经由的报文根据预先定义的规则(识别标准)进行检测,对于能够被规则匹配到的报文实行某种预定义的处理机制的一套组件    硬件防火墙:在硬件级别实现部分功能的:    软件防火墙:应用软件逻辑在通用硬件基础上实现:    主机防火墙:    网络防火墙: iptables/netfilter:    iptabl

iptables规则表

1.iptables规则表 Filter(针对过滤系统):INPUT.FORWARD.OUTPUT NAT(针对地址转换系统):PREROUTING.POSTROUTING.INPUT.OUTPUT Mangle(针对策略路由和特殊应用):OUTPUT.POSTROUTING 2.安装包 iptables-1.2.7a-2 3.配置防火墙 1) 命令语法 Usge: iptables [-t table] -[ADC] chain rule-specification [options] ipt

iptables防火墙配置详解

iptables简介 iptables是基于内核的防火墙,功能非常强大,iptables内置了filter,nat和mangle三张表. filter负责过滤数据包,包括的规则链有,input,output和forward: nat则涉及到网络地址转换,包括的规则链有,prerouting,postrouting和output: mangle表则主要应用在修改数据包内容上,用来做流量整形的,默认的规则链有:INPUT,OUTPUT,NAT,POSTROUTING,PREROUTING: inpu

Iptables 规则 一些简单实例和详细介绍

设定规则 iptables -p INPUT DROP iptables -p OUTPUT ACCEPT iptables -p FORWARD DROP 1.防止外网用内网IP欺骗 iptables -t nat -A PREROUTING -i eth0 -s 10.0.0.0/8 -j DROP iptables -t nat -A PREROUTING -i eth0 -s 172.16.0.0/12 -j DROP iptables -t nat -A PREROUTING -i e

转 - Debian系统配置PPTP方法 添加用户和iptables规则

本文转载来自:http://blog.csdn.net/laojiang025/article/details/54934038 由于项目的需要,需要在Debian服务器中配置PPTP,以前有在CENTOS环境中配置的,而且网上之前存在不少的一键包很多都失效,所以尝试查阅资料尝试手工配置.这里就把配置过程记录下来. 第一.安装pptpd服务 apt-get install pptpd 第二.编辑/etc/pptpd.conf  配置文件 localip 10.0.0.1 remoteip 10.

Linux的iptables常用配置范例(1)

以下是来自 http://wiki.ubuntu.org.cn/IptablesHowTo 上的配置说明 可以通过/sbin/iptables -F清除所有规则来暂时停止防火墙: (警告:这只适合在没有配置防火墙的环境中,如果已经配置过默认规则为deny的环境,此步骤将使系统的所有网络访问中断) 如果想清空的话,先执行 /sbin/iptables -P INPUT ACCEPT 然后执行 /sbin/iptables -F 通过iptables -L 看到如下信息 Chain INPUT (p

10.19-10.22 iptables规则备份和恢10.20 firewalld的9个zone

10.19 iptables规则备份和恢复 10.20 firewalld的9个zone 10.21 firewalld关于zone的操作 10.22 firewalld关于service的操作 # 10.19 iptables 规则备份和恢复 - 保存和备份iptables 的规则 - service iptables save 会把规则保存到 /etc/sysconfig/iptables - 把iptables规则备份到my.ipt 文件中 - iptables-save > my.ipt