一个NAT+SQUID+DNAT+FORWARD+反弹式FIREWALL的例子

王朝other·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

作者:白金 网名:platinum(chinaunix) 超超白金(白金论坛)

欢迎转载,转载请保留上述信息

===========================================================================

以下是我自己的一个防火墙例子,对大家最近提出的DNAT(端口映射)的问题很有帮助

环境:

ADSL(eth0)网卡启动时不激活

内网(eth1)192.168.0.1/24

代码:

#! /bin/bash

/sbin/modprobe ip_conntrack_ftp

/sbin/modprobe ip_nat_ftp

/sbin/iptables -F -t filter

/sbin/iptables -F -t nat

/sbin/iptables -P INPUT DROP

/sbin/iptables -P OUTPUT ACCEPT

/sbin/iptables -P FORWARD DROP

/sbin/iptables -t nat -P PREROUTING ACCEPT

/sbin/iptables -t nat -P POSTROUTING ACCEPT

/sbin/iptables -t nat -P OUTPUT ACCEPT

# ALLOW ALL in PRIVATE NET

/sbin/iptables -A INPUT -i lo -j ACCEPT

/sbin/iptables -A INPUT -i eth1 -j ACCEPT

# NAT

/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE

# DNAT RADMIN to PRIVATE in platinum.3322.org

/sbin/iptables -A PREROUTING -t nat -p tcp -s ! 192.168.0.0/24 --dport 4899 -j DNAT --to 192.168.0.2:4899

/sbin/iptables -A PREROUTING -t nat -p tcp -s ! 192.168.0.0/24 --dport 5000 -j DNAT --to 192.168.0.3:4899

# SQUID

/sbin/iptables -A PREROUTING -t nat -p tcp -s 192.168.0.0/24 --dport 80 -j DNAT --to 192.168.0.1:3128

# FORWARD edit by Platinum

/sbin/iptables -A FORWARD -p tcp --dport 21 -j ACCEPT

# FTP

/sbin/iptables -A FORWARD -p tcp --dport 22 -j ACCEPT

# SSH

/sbin/iptables -A FORWARD -p udp --dport 53 -j ACCEPT

# DNS

/sbin/iptables -A FORWARD -p tcp --dport 80 -j ACCEPT

# HTTP

/sbin/iptables -A FORWARD -p tcp --dport 443 -j ACCEPT

# HTTPS

/sbin/iptables -A FORWARD -p udp --dport 8000 -j ACCEPT

# QQ

/sbin/iptables -A FORWARD -p tcp --dport 25 -j ACCEPT

# SMTP

/sbin/iptables -A FORWARD -p tcp --dport 110 -j ACCEPT

# POP3

/sbin/iptables -A FORWARD -p tcp --dport 4899 -j ACCEPT

# RADMIN

/sbin/iptables -A FORWARD -p tcp --dport 1863 -j ACCEPT

# MSN (you must allow port 443)

/sbin/iptables -A FORWARD -p icmp -j ACCEPT

# allow the third handshake

/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

/sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# exchange the other packets' "SOURCE" and "TARGET", and SEND it !!!

/sbin/iptables -A INPUT -j MIRROR

此防火墙适用于静态IP及动态IP地址

原文请参考 http://bbs.chinaunix.net/forum/4/20040622/353019.html

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航