使用 dmz 和 iptables 允许外部网络访问

使用 dmz 和 iptables 允许外部网络访问

我的家庭网络出了问题。所以我的设置如下:

在此处输入图片描述

在我的路由器(使用 Ubuntu 桌面 v11.04)中,我安装了 squid 代理作为我的透明代理。

因此,我想将 dyndns 连接到我的家庭网络,以便可以从互联网访问我的服务器,而且我还安装了 CCTV 摄像机,并且我想能够从互联网上观看它。

问题是我无法从网络外部访问它。
我已经将调制解调器中的 DMZ 设置为路由器 IP。

我的第一个猜测是因为我使用 iptables 重定向所有内部网络以使用 squid。
并且不允许外部流量进入我的内部网络。
这是我的 iptables 脚本:

#!/bin/sh

# squid server IP
SQUID_SERVER="192.168.5.1"

# Interface connected to Internet
INTERNET="eth0"

# Interface connected to LAN
LAN_IN="eth1"

# Squid port
SQUID_PORT="3128"

# Clean old firewall
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
# Load IPTABLES modules for NAT and IP conntrack support
modprobe ip_conntrack
modprobe ip_conntrack_ftp
# For win xp ftp client
#modprobe ip_nat_ftp
echo 1 > /proc/sys/net/ipv4/ip_forward
# Setting default filter policy
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
# Unlimited access to loop back
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# Allow UDP, DNS and Passive FTP
iptables -A INPUT -i $INTERNET -m state --state ESTABLISHED,RELATED -j ACCEPT
# set this system as a router for Rest of LAN
iptables --table nat --append POSTROUTING --out-interface $INTERNET -j MASQUERADE
iptables --append FORWARD --in-interface $LAN_IN -j ACCEPT
# unlimited access to LAN
iptables -A INPUT -i $LAN_IN -j ACCEPT
iptables -A OUTPUT -o $LAN_IN -j ACCEPT
# DNAT port 80 request comming from LAN systems to squid 3128 ($SQUID_PORT) aka     transparent proxy
iptables -t nat -A PREROUTING -i $LAN_IN -p tcp --dport 80 -j DNAT --to     $SQUID_SERVER:$SQUID_PORT
# if it is same system
iptables -t nat -A PREROUTING -i $INTERNET -p tcp --dport 80 -j REDIRECT --to-port     $SQUID_PORT
# DROP everything and Log it
iptables -A INPUT -j LOG
iptables -A INPUT -j DROP

如果您知道我遗漏了什么地方,请告诉我。
感谢您的帮助,我非常感激。

答案1

这只是一种意见,但在我看来,您只将端口 80 连接转发到 SQUID:
iptables -t nat -A PREROUTING -i $LAN_IN -p tcp --dport 80 -j DNAT --to $SQUID_SERVER:$SQUID_PORT

难道所有数据包都不应该转发到 SQUID(尤其是 DNS 和摄像机使用的端口)吗?

相关内容