关于IPTABLE的配置,初学者请指教~~在线等!!!!!!!!!!!!

sandy91 2007-07-18 08:55:13
一个双网卡的机器负责内外网的转发,
这机器装的REDHAT AS4
转发包括FTP,SOCKET包
内网IP为INSIDE_IP
外网IP为OUTSIDE_IP
跳转IP为FW_IP(局域网内的服务器)


#!/bin/bash
#list_show
iptables -L -n
iptables -t nat -L -n
#public
echo 1 >/proc/sys/net/ipv4/ip_forward
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp
modprobe ip_tables
modprobe iptable_nat
modprobe ip_nat_irc
modprobe ip_conntrack
modprobe ip_conntrack_irc

#del_rule
iptables -X
iptables -F
iptables -F -t nat
iptables -t nat -X

#open_net_port
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -i eth1 -j ACCEPT
iptables -A OUTPUT -o eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -j ACCEPT
iptables -A FORWARD -o eth1 -j ACCEPT

#define ip
outside_ip=""
inside_ip=""
fw_ip=""
ftp_ip=""

#define port
outside_port="8009"
inside_port="8002"
fw_port="8002"
ftp_port="2323"

#socked_forward
iptables -t nat -A PREROUTING -d $outside_ip -p tcp --dport $outside_port -j DNAT --to-destination $fw_ip:$fw_port
iptables -t nat -A PREROUTING -p tcp -i $outside_ip --dport $outside_port -j DNAT --to-destination $inside_ip:$inside_port

#iptables -t nat -A POSTROUTING -d $fw_ip -p tcp --dport $inside_port -j SNAT --to $inside_ip

#open_forward
iptables -A FORWARD -o eth0 -d $fw_ip -p tcp --dport $fw_port -j ACCEPT
iptables -A FORWARD -i eth0 -s $fw_ip -p tcp --sport $fw_port -m state --state ESTABLISHED -j ACCEPT

#ftp_forward
iptables -t nat -A PREROUTING -d $outside_ip -p tcp --dport 20 -m state --state NEW,ESTABLISHED,RELATED -j DNAT -to $ftp_ip:$ftp_port
...全文
267 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lordx 2007-07-19
  • 打赏
  • 举报
回复
你要先看下静态路由表配对没
sandy91 2007-07-18
  • 打赏
  • 举报
回复
如何跟踪,如何看到效果
而且,访问http://outside_ip:8009的时候,也根本没跳转到HTTP://inside_ip:8002
roadingyh 2007-07-18
  • 打赏
  • 举报
回复
你的问题在那里啊??
lsyer 2007-07-18
  • 打赏
  • 举报
回复
可以参考http://lishao378.blog.sohu.com/8665520.html
roadingyh 2007-07-18
  • 打赏
  • 举报
回复
你终于说出你的问题了:

首先想跟踪调试的话,你得在机子上装抓包软件,最经典的sniffer建议你装一个吧,做网络的人肯定少不了的: 然后你就可以在这里看到那些包的进出了.

下一个问题:http://ip:port 并不是这样你就有包发向这个端口,除非你事先把HTTP服务的端口改成这样子.如果你想看看PORTA,是否转发到PORTB了,向A上发包,可以直接telnet他,如:telnet IP PORTA,再在B上抓包看是否收到包了....
lurenfu 2007-07-18
  • 打赏
  • 举报
回复
#!/bin/bash
#list_show
iptables -L -n
iptables -t nat -L -n
#public
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp
modprobe ip_tables
modprobe iptable_nat
modprobe ip_nat_irc
modprobe ip_conntrack
modprobe ip_conntrack_irc

#del_rule
#最好先设置ip_forward为0,在设置完NAT规则后再开启ip_forward
echo 0 >/proc/sys/net/ipv4/ip_forward
iptables -X
iptables -F
iptables -F -t nat
iptables -t nat -X

#open_net_port
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -i eth1 -j ACCEPT
iptables -A OUTPUT -o eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -j ACCEPT
iptables -A FORWARD -o eth1 -j ACCEPT

#不知道你的哪个eth是外网的,如果eth0是内网,eth1是外网的话,
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
#如果eth0是外网的话,则用iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
#最好在设置完MASQUERADE以后开启ip_forward
echo 1 >/proc/sys/net/ipv4/ip_forward


#define ip
outside_ip=""
inside_ip=""
fw_ip=""
ftp_ip=""

#define port
outside_port="8009"
inside_port="8002"
fw_port="8002"
ftp_port="2323"

#socked_forward
iptables -t nat -A PREROUTING -d $outside_ip -p tcp --dport $outside_port -j DNAT --to-destination $fw_ip:$fw_port
iptables -t nat -A PREROUTING -p tcp -i $outside_ip --dport $outside_port -j DNAT --to-destination $inside_ip:$inside_port

#iptables -t nat -A POSTROUTING -d $fw_ip -p tcp --dport $inside_port -j SNAT --to $inside_ip

#open_forward
iptables -A FORWARD -o eth0 -d $fw_ip -p tcp --dport $fw_port -j ACCEPT
iptables -A FORWARD -i eth0 -s $fw_ip -p tcp --sport $fw_port -m state --state ESTABLISHED -j ACCEPT

#ftp_forward
iptables -t nat -A PREROUTING -d $outside_ip -p tcp --dport 20 -m state --state NEW,ESTABLISHED,RELATED -j DNAT -to $ftp_ip:$ftp_port
lurenfu 2007-07-18
  • 打赏
  • 举报
回复
哈哈,100分啊
楼主,我帮你解决吧,你说说你的主要问题


你这里配的有些地方不对的,比如要在nat配好后再开始forward

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧