linux之iptable案例

转自:http://blog.csdn.net/bill_lee_sh_cn/article/details/4401896

1.一对一流量完全DNAT

首先说一下网络环境,普通主机一台做防火墙用,网卡两块

eth0 192.168.0.1  内网

eth1 202.202.202.1 外网

内网中一台主机 192.168.0.101

现在要把外网访问202.202.202.1的所有流量映射到192.168.0.101上

命令如下:

 

[xhtml] view plaincopy

 

  1. #将防火墙改为转发模式  
  2. echo 1 > /proc/sys/net/ipv4/ip_forward  
  3. iptables -F  
  4. iptables -t nat -F  
  5. iptables -t mangle -F  
  6. iptables -X  
  7. iptables -t nat -X  
  8. iptables -t mangle -X  
  9.   
  10. iptables -A INPUT -i lo -j ACCEPT  
  11. iptables -A OUTPUT -o lo -j ACCEPT  
  12.   
  13. iptables -P INPUT ACCEPT  
  14. iptables -P OUTPUT ACCEPT  
  15. iptables -P FORWARD ACCEPT  
  16.   
  17. iptables -t nat -A PREROUTING -d 202.202.202.1 -j DNAT --to-destination 192.168.0.101  
  18. iptables -t nat -A POSTROUTING -d 192.168.0.101 -j SNAT --to 192.168.0.1  

 

2.多对多流量完全DNAT

说是多对多,实际上这里的配置是指定了多个一对一

环境:

eth0 192.168.0.1  内网

eth1 202.202.202.1 、202.202.202.2 外网

内网中2台主机 192.168.0.101、192.168.0.102

现在要把外网访问202.202.202.1的所有流量映射到192.168.0.101上,同时把把外网访问202.202.202.2的所有流量映射到192.168.0.102上

这里顺便提一下如何为网卡配置多个IP

 

[c-sharp] view plaincopy

 

  1. ifconfig eth1:1 202.202.202.2 netmask 255.255.255.0 up  

 

命令如下:

  1. #将防火墙改为转发模式  
  2. echo 1 > /proc/sys/net/ipv4/ip_forward  
  3. iptables -F  
  4. iptables -t nat -F  
  5. iptables -t mangle -F  
  6. iptables -X  
  7. iptables -t nat -X  
  8. iptables -t mangle -X  
  9.   
  10. iptables -A INPUT -i lo -j ACCEPT  
  11. iptables -A OUTPUT -o lo -j ACCEPT  
  12.   
  13. iptables -P INPUT ACCEPT  
  14. iptables -P OUTPUT ACCEPT  
  15. iptables -P FORWARD ACCEPT  
  16.   
  17. iptables -t nat -A PREROUTING -d 202.202.202.1 -j DNAT --to-destination 192.168.0.101  
  18. iptables -t nat -A POSTROUTING -d 192.168.0.101 -j SNAT --to 192.168.0.1  
  19.   
  20. iptables -t nat -A PREROUTING -d 202.202.202.2 -j DNAT --to-destination 192.168.0.102  
  21. iptables -t nat -A POSTROUTING -d 192.168.0.102 -j SNAT --to 192.168.0.1  

 

3.一对多根据协议DNAT

 这个最常用,一般是内网或DMZ区内有多个应用服务器,可以将不同的应用流量映射到不同的服务器上

环境:

eth0 192.168.0.1  内网

eth1 202.202.202.1  外网

内网中2台主机 192.168.0.101(Web服务器)、192.168.0.102(邮件服务器)

现在要把外网访问202.202.202.1的Web流量映射到192.168.0.101上,同时把把外网访问202.202.202.1的邮件访问流量映射到192.168.0.102上

命令如下:

  1. #将防火墙改为转发模式  
  2. echo 1 > /proc/sys/net/ipv4/ip_forward  
  3. iptables -F  
  4. iptables -t nat -F  
  5. iptables -t mangle -F  
  6. iptables -X  
  7. iptables -t nat -X  
  8. iptables -t mangle -X  
  9.   
  10. iptables -A INPUT -i lo -j ACCEPT  
  11. iptables -A OUTPUT -o lo -j ACCEPT  
  12.   
  13. iptables -P INPUT ACCEPT  
  14. iptables -P OUTPUT ACCEPT  
  15. iptables -P FORWARD ACCEPT  
  16.   
  17. iptables -t nat -A PREROUTING -d 202.202.202.1 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.101:80  
  18. iptables -t nat -A POSTROUTING -d 192.168.0.101 -p tcp --dport 80 -j SNAT --to 192.168.0.1  
  19.   
  20. iptables -t nat -A PREROUTING -d 202.202.202.1 -p tcp --dport 25 -j DNAT --to-destination 192.168.0.102:25  
  21. iptables -t nat -A POSTROUTING -d 192.168.0.102 -p tcp --dport 25 -j SNAT --to 192.168.0.1  
  22.   
  23. iptables -t nat -A PREROUTING -d 202.202.202.1 -p tcp --dport 110 -j DNAT --to-destination 192.168.0.102:110  
  24. iptables -t nat -A POSTROUTING -d 192.168.0.102 -p tcp --dport 110 -j SNAT --to 192.168.0.1 

 

时间: 2024-09-19 20:42:59

linux之iptable案例的相关文章

linux之iptable

转自:http://seanlook.com/2014/02/23/iptables-understand/ 一. netfilter与iptables Netfilter是由Rusty Russell提出的Linux 2.4内核防火墙框架,该框架既简洁又灵活,可实现安全策略应用中的许多功能,如数据包过滤.数据包处理.地址伪装.透明代理.动态网络地址转换(Network Address Translation,NAT),以及基于用户及媒体访问控制(Media Access Control,MAC

分享Linux数据恢复实战案例

程序员的误操作造成数据丢失,忙着一个星期的项目,就这样付之东流了.老板的痛斥.经理的训斥接踵而来.接下来就是没休息.加班,甚至忙到凌晨都不能离开那该死的电脑,都有种想屎的感觉呢? 为那些不喜欢备份数据的朋友带来了福音,我们来谈谈数据恢复,这里我们来手把手地教会你如何利用简单的工具来恢复被你删除的数据. 工具: hexedit.fdisk 下文内容操作均在root环境下完成. hexedit: 在linux上,经常会使用hexedit来修改程序的16进制代码.而fdisk这里就不介绍了. 现在我们

Shell脚本应用图形界面的案例

在Shell脚本的编写应用中,有时候会需要用到图形界面的案例,比如默认cp拷贝文件为静默模式,无法看到拷贝的进度与百分比.而dialog正是为Shell提供图形界面的工具,该工具可以为Shell脚本提供各式各样的图形界面,今天为大家介绍的是dialog提供的进度条图形功能. dialog指令可以单独执行,各式为dialog --title "Copy" --gauge "files" 6 70 10 备注:title表示图形进度条的标题,gauge为正文内容,进度条

Cheat—— 给Linux初学者和管理员一个终极命令行"备忘单"

Cheat-- 给Linux初学者和管理员一个终极命令行"备忘单" 当你不确定你所运行的命令,尤其是那些使用了许多选项的复杂命令时,你会怎么做?在这种情况下,我们使用man pages来获取帮助.还有一些其它的选择可能包括像'help','whereis'和'whatis'这样的命令.但是所有的这些既有优点,也有缺点. 当我们浏览man pages来查看选项和帮助的时候,里面的描述实在太冗长了,我们无法在短的时间里理解它的意思. Linux Man Pages Linux Man Pa

Linux防火墙Iptables如何设置只允许特定ip访问某端口

Linux防火墙Iptable如何设置只允许某个ip访问80端口,只允许特定ip访问某端口?参考下面命令,只允许46.166.150.22访问本机的80端口.如果要设置其他ip或端口,改改即可. iptables -I INPUT -p TCP --dport 80 -j DROP iptables -I INPUT -s 46.166.150.22 -p TCP --dport 80 -j ACCEPT 在root用户下执行上面2行命令后,重启iptables, service iptable

《Linux设备驱动开发详解 A》一一2.1 处理器

2.1 处理器 2.1.1 通用处理器 目前主流的通用处理器(GPP)多采用SoC(片上系统)的芯片设计方法,集成了各种功能模块,每一种功能都是由硬件描述语言设计程序,然后在SoC内由电路实现的.在SoC中,每一个模块不是一个已经设计成熟的ASIC器件,而是利用芯片的一部分资源去实现某种传统的功能,将各种组件采用类似搭积木的方法组合在一起.ARM内核的设计技术被授权给数百家半导体厂商,做成不同的SoC芯片.ARM的功耗很低,在当今最活跃的无线局域网.3G.手机终端.手持设备.有线网络通信设备等中

Novell张先民:加大云投入 Linux产业步入成熟期

日前,Novell大中华地区及韩国总经理张先民博士接受了CSDN记者的专访.张先民总结了Novell在2011年取得的成绩和未来的规划,并就研发布局.云计算策略.Linux产业状况等热点话题分享了看法.他表示,即使去年由于收购整合的影响,但Novell(大中华地区)全年增长率仍然达到了30%左右.自1995年正式进入中国市场以来,其中国业绩一直保持了两位数的快速增长. Novell大中华地区及韩国总经理张先民博士 在谈到高速成长背后的原因时,张先民着重谈到了几个点: 金融证券行业的全面突破.包括

微软宣布在Azure云服务中提供Linux操作系统

在把Linux当成威胁进行了多年的斗争之后,微软现在在其Windows Azure云服务中提供基于Linux的操作系统. Linux服务将在美国东部时间星期四早上4点(北京时间周四17点)开始在Azure平台上提供.在这个时候,Azure门户将提供许多Linux发布版软件,包括Suse Linux Enterprise Server 11 SP2.OpenSuse 12.01.CentOS 6.2和Canonical Ubuntu 12.04.Azure用户将能够选择和部署微软Windows A

企业信息安全管理利器:OSSIM

本期特邀<Linux企业应用案例精解>一书作者李晨光老师,针对开源信息安全系统OSSIM在企业中的应用的问题给予解答,欢迎网友积极提问,与专家一起讨论! 问题:李老师,您好,对 OSSIM不是很了解,能够麻烦您用简洁的语言描述一下什么是 OSSIM,有什么功能,什么特点,正对其他相关同性质的软件有何优势?如何学习 OSSIM? 解答:在以前的讨论中我讲过ossim是开源安全信息系统,它基于debian linux系统之上集成了众多开源安全管理监控工具(Snort,Nmap,Nessus,Nto