免费注册 查看新帖 |

Chinaunix

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

[网络管理] iptables限制不了用户mac的问题? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-12-02 12:11 |只看该作者 |倒序浏览
我想实现以下功能,只有被允许的mac地址才能转发信息,其它的默认都禁止.
比如,允许00:0F:1E:00:00:83 转发,不允许00:1A:73:8E9:C6 以及其它的转发.
我使用iptables时,不管有没有被允许,都可以被转发.
我使用ebtables时,要么全部被禁止,其它都不能转发;要么部分被禁止,其它都允许;而不是我想实现的,部分允许,其它都禁止.

iptables的设置:

iptables -F
iptables -P FORWARD DROP
iptables -A FORWARD -m mac --mac-source 00:0F:1E:00:00:83 -j ACCEPT
不管其它没有被允许的mac地址,比如00:1A:73:8E9:C6也可以被转发.


iptables -F
iptables -P FORWARD DROP
iptables -A FORWARD -m mac --mac-source 00:0F:1E:00:00:83 -j ACCEPT

iptables -A FORWARD -m mac --mac-source 00:1A:73:8E9:C6 -j DROP

都可以转发

ebtables的设置:

ebtables -F
iptables -A FORWARD -s 00:1A:73:8E9:C6 -j DROP

可以拒绝对00:1A:73:8E9:C6 的转发,但是其它都允许

下面的设置不行:
ebtables -F
ebtables -P FORWARD DROP
ebtables -A FORWARD -s 00:0F:1E:00:00:83 -j ACCEPT

所有得mac地址都不能被转发


请问,怎么才能实现只有被允许的mac地址才能转发信息,其它的默认都禁止了?
谢谢!



论坛徽章:
0
2 [报告]
发表于 2008-12-02 13:45 |只看该作者
  1. 00:0C:29:5F:DB:9A为1.8
  2. 00:0C:29:28:34:2A为1.7
  3. 1.8和1.7默认网关指向为1.1


  4. 在1.1上执行
  5. echo 1 > /proc/sys/net/ipv4/ip_forward

  6. /sbin/iptables -F
  7. /sbin/iptables -F -t nat
  8. /sbin/iptables -P INPUT ACCEPT
  9. /sbin/iptables -P OUTPUT ACCEPT
  10. /sbin/iptables -P FORWARD DROP
  11. /sbin/iptables -A FORWARD -m mac --mac-source 00:0C:29:5F:DB:9A -j ACCEPT
  12. 1.8 telnet分公司443成功
  13. 1.7 telnet分公司443超时
  14. 测试成功




  15. /sbin/iptables -F
  16. /sbin/iptables -F -t nat
  17. /sbin/iptables -P INPUT ACCEPT
  18. /sbin/iptables -P OUTPUT ACCEPT
  19. /sbin/iptables -P FORWARD ACCEPT
  20. /sbin/iptables  -A FORWARD -m mac --mac-source 00:0C:29:28:34:2A -j DROP
  21. 1.8 telnet分公司443成功
  22. 1.7 telnet分公司443超时
  23. 测试成功
复制代码

检查下你的转发问题吧,应该可能是你别的策略导致的。
你是使用单臂路由还是双网卡?

你参照我的脚本修改下MAC地址直接在你的防火墙上跑下试试。

[ 本帖最后由 剑次狼 于 2008-12-2 14:58 编辑 ]

论坛徽章:
0
3 [报告]
发表于 2008-12-02 21:54 |只看该作者

回复 #1 qinquan 的帖子

modprobe看看相应的netfilter的模块是否加载了
还有就是命令执行的时候是否出现提示

论坛徽章:
0
4 [报告]
发表于 2008-12-02 22:09 |只看该作者
原帖由 kns1024wh 于 2008-12-2 21:54 发表
modprobe看看相应的netfilter的模块是否加载了
还有就是命令执行的时候是否出现提示

恩~很有可能

论坛徽章:
0
5 [报告]
发表于 2008-12-03 11:10 |只看该作者
我使用了两块网卡,中间用网桥连接。
如果用ebtables时,需要做修改,如果允许一个mac地址,源地址和目的地址都要允许。
ebtables -F
ebtables -P FORWARD DROP
ebtables -A FORWARD -s 00:0F:1E:00:00:83 -j ACCEPT
ebtables -A FORWARD -d 00:0F:1E:00:00:83 -j ACCEPT
经过这样的修改后,默认都会拒绝,00:0F:1E:00:00:83会被允许

iptables下我还要去试试
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP