QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1397|回复: 4

救命啊,映射的端口外网无法访问

[复制链接]
发表于 2004-7-1 11:46:04 | 显示全部楼层 |阅读模式
我想让外网能访问内网某台主机的139端口,但是在网上找了很久,弄出来的却只能让内网
IP可以访问,外网不行.谁能帮我看一下?谢谢!
外网: eth0 a.b.c.d
内网: eth1 192.169.0.1
目的主机: 192.168.0.2

#!/bin/sh                                                                           
PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -F INPUT
iptables -F FORWARD
iptables -F POSTROUTING -t nat
iptables -P FORWARD DROP

#这两句是新加的,想映设139端口,结果只能给内网访问.其实内网的话,好像只要
#第二句就行了.
iptables -t nat -A PREROUTING -i eth0 -d a.b.c.d  -p tcp --dport 139 -j DNAT --to-destination 192.168.0.2:139           
iptables -t nat -A POSTROUTING -d 192.168.0.2 -p tcp -m tcp --dport 139 -j SNAT --to-source a.b.c.d

#下面四句是以前的,提供内网主机访问internet
iptables -A INPUT -p gre -j ACCEPT
iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j SNAT --to a.b.c.d
发表于 2004-7-1 16:05:08 | 显示全部楼层
这里有一段 在用的
#清除
iptables -F
iptables -t nat -F

#加模块
modprobe ip_tables
modprobe iptable_nat
modprobe iptables_filter
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ipt_state

#上网
iptables -A INPUT -j ACCPET
iptables -A output -j ACCPET
iptables -A FORWORD -s 192.168.0.0/24 -j ACCEPT

#伪装
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQURADE

#nat 映射
iptables -t nat -A PREROUTING -p tcp -d a.b.c.d --dport 139 -j DNAT --to 192.168.0.2
iptables -t nat -A POSTROUTING -p tcp -d 192.168.0.2 --dport 139 -j SNAT --to 192.168.0.1
回复

使用道具 举报

发表于 2004-7-2 21:09:33 | 显示全部楼层
你想想,这两句把外网对内网的主动连接全部干掉,如何能让外网访问内网呢?
iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

加一句吧:
iptables -A FORWARD -i eth0 -d 192.168.0.2 -p tcp --dport 139 -j ACCEPT

还有一点,需要在这里指出,希望那些不懂装懂的朋友们不要误人子弟。
技术不容儿戏!
回复

使用道具 举报

 楼主| 发表于 2004-7-7 14:09:14 | 显示全部楼层
[quote:be84429101="deepr"]你想想,这两句把外网对内网的主动连接全部干掉,如何能让外网访问内网呢?
iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

加一句吧:
iptables -A FORWARD -i eth0 -d 192.168.0.2 -p tcp --dport 139 -j ACCEPT

还有一点,需要在这里指出,希望那些不懂装懂的朋友们不要误人子弟。
技术不容儿戏![/quote]

原来是这么回事,多谢!已经可以了,不知道为什么上面两句会删掉外网连接?
回复

使用道具 举报

发表于 2004-7-7 16:51:09 | 显示全部楼层
不是删掉了,而是没允许,这2条都不匹配,于是就用缺省策略DROP丢弃掉了.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-8 04:37 , Processed in 0.088800 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表