免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2824 | 回复: 5
打印 上一主题 下一主题

[网络管理] iptables 允许指定MAC主机访问外网问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-06-18 21:09 |只看该作者 |倒序浏览
rc.local文件内容如下

modprobe ip_conntrack
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp
modprobe iptable_filter
modprobe iptable_nat
modprobe ip_nat_ftp
iptables -F
iptables -X
iptables -Z
iptables -F -t nat
iptables -X -t nat
iptables -Z -t nat
iptables -P INPUT   ACCEPT
iptables -P OUTPUT  ACCEPT
iptables -P FORWARD DROP
iptables -t nat -P PREROUTING  ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT      ACCEPT
WAN_IP="10.0.0.4"
LAN_NET="192.168.168.0/24"
echo 1 > /proc/sys/net/ipv4/ip_forward
#LAN->WAN(NAT)
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to $WAN_IP
iptables -t filter -A FORWARD -o eth0 -p all -m mac --mac-source 00:0C:29:3F:C3:6B -j ACCEPT


按照以上方法运行,NAT主机可以访问外网,客户端还是无法访问外网,老兄们帮我看一下.谢谢!

论坛徽章:
0
2 [报告]
发表于 2006-06-18 21:21 |只看该作者
好象要用 RELATED 和 ESTABLISHED 做基于状态的允许

就象写ftp的被动连接模式与主动连接模式一样

呵呵.找找iptables 指南看看就行了

论坛徽章:
0
3 [报告]
发表于 2006-06-18 21:25 |只看该作者
多上:

  1. iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
复制代码


==

论坛徽章:
0
4 [报告]
发表于 2006-06-18 21:28 |只看该作者
感谢二位的指点,谢谢,已经成功

论坛徽章:
0
5 [报告]
发表于 2006-06-19 09:15 |只看该作者

添加路由后无法访问子公司网段

rc.local文件内容如下

modprobe ip_conntrack
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp
modprobe iptable_filter
modprobe iptable_nat
modprobe ip_nat_ftp
iptables -F
iptables -X
iptables -Z
iptables -F -t nat
iptables -X -t nat
iptables -Z -t nat
iptables -P INPUT   ACCEPT
iptables -P OUTPUT  ACCEPT
iptables -P FORWARD DROP
iptables -t nat -P PREROUTING  ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT      ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
WAN_IP="10.0.0.4"
LAN_NET="192.168.168.0/24"
echo 1 > /proc/sys/net/ipv4/ip_forward
#LAN->WAN(NAT)
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to $WAN_IP
iptables -t filter -A FORWARD -o eth0 -p all -m mac --mac-source 00:0C:29:3F:C3:6B -j ACCEPT
route add -net 172.22.16.0 netmask 255.255.240.0 gw 192.168.8.251

现在在此NAT主机上可以ping 通外网,可以Ping 通子公司网段172.22.16.0中的IP,客户端除允许的MAC地址可以访问外网及子公司网段外,其它的主机无法访问子公司网段.我想请教各位,如何才能使没有指定允许的MAC地址的主机可以访问子公司的网段!

论坛徽章:
0
6 [报告]
发表于 2006-06-19 14:28 |只看该作者
原帖由 jzcqx 于 2006-6-19 09:15 发表
rc.local文件内容如下

modprobe ip_conntrack
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp
modprobe iptable_filter
modprobe iptable_nat
modprobe ip_nat_ftp
iptables -F
i ...

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe iptable_filter
modprobe iptable_nat
modprobe ip_nat_ftp
#modprobe ip_nat_pptp
#modprobe ip_conntrack_proto_gre
iptables -F
iptables -X
iptables -Z
iptables -F -t nat
iptables -X -t nat
iptables -Z -t nat
iptables -P INPUT   ACCEPT
iptables -P OUTPUT  ACCEPT
iptables -P FORWARD DROP
iptables -t nat -P PREROUTING  ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT      ACCEPT
iptables -t filter -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t filter -A FORWARD -o eth1 -p all -j ACCEPT
######################################################################################
#***************set var********************
WAN_IP="10.0.0.4"
LAN_NET="192.168.168.0/24"
#******************************************
#IP_forward
#and you can modify "/etc/sysctl.conf"
echo 1 > /proc/sys/net/ipv4/ip_forward
#LAN->WAN(NAT)
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to $WAN_IP
#PORT NAT
iptables -t nat -A PREROUTING -i eth0 -p tcp -d $WAN_IP --dport 5900 -j DNAT --to 192.168.168.13:5900
iptables -t nat -A PREROUTING -i eth0 -p tcp -d $WAN_IP --dport 5800 -j DNAT --to 192.168.168.13:5800

#**********************************Start Add Routing*********************************
#Route to Taibei
route add -net 172.22.16.0 netmask 255.255.240.0 gw 192.168.8.1
#Route to Taoyuan
route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.8.1
#Route to Dongguan
route add -net 172.22.80.0 netmask 255.255.240.0 gw 192.168.8.1
#***********************************End Add Routing**********************************
MAC="
00:16:76:1C:50:B2
00:16:76:35:A7:89"
for i in $MAC
do
  iptables -t filter -A FORWARD -p all -m mac --mac-source $i -j ACCEPT
done

以上问题已经解决,只需增加蓝色字部分,现又出现一个问题就是文中红色字部分,DNAT无法实现端口转发,在外网无法通过nat主机访问内部的VNC主机,请各位高手看看,上面的shell哪里需要增加一些相关的语句,谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP