通过MAC地址限制访问

时间:2009-05-28 08:34:16

标签: lamp mac-address

我正在旧PC上设置WAMP / LAMP堆栈。该计算机将连接到具有大约其他PC的本地网络。 我有兴趣限制来自其他人的计算机的访问权限,这样只有我和我的合作伙伴才能访问我们的本地服务器。 我认为,最好的方法是阻止其他人的MAC地址(路由器自动分配IP,所以我不想依赖它)。 我想补充一点,我无法访问路由器的配置页面,所以这必须从服务器本身完成。

任何人都可以扩展如何做到这一点吗?

3 个答案:

答案 0 :(得分:3)

linux / iptables,排序黑名单方式,这将丢弃源自指定mac地址的所有流量:

iptables -I INPUT 1 -m mac --mac-source <blacklisted mac 1> -j DROP
iptables -I INPUT 1 -m mac --mac-source <blacklisted mac 2> -j DROP

但是,我不确定这是否是你想要的,mac-address并不是一种过滤流量的可靠方法。大多数现代NIC允许您更改您的mac地址,如果以太网帧封装的ip-packet通过路由器,则以太网帧上的source-mac-address将是最后一个路由器通过而不是原始计算机。

我建议调查mod_auth_basic或类似的东西,它在犯错误时比iptables更宽容。如果您决定沿着iptables路线走下去,我会建议更多的白名单方法,其中默认情况下iptables会丢弃某些流量,然后允许通过你想要的。

iptables -A INPUT -p tcp --dport 80 -m mac --source <your mac> -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -m mac --source <your partners mac> -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j DROP

答案 1 :(得分:1)

首先要看的是路由器的控制面板。通常路由器(至少对于无线)允许基于物理地址的访问控制。

第二件事就是防火墙。寻找通过mac地址限制访问的防火墙(如果你使用的是linux我非常肯定它已经有了这个功能,在我的wintel上我使用的是Comodo个人防火墙,允许我按物理地址进行过滤。)

答案 2 :(得分:1)

如果你不能摆弄路由器,那么你必须对服务器本身实施限制:取决于你想要的偏执程度,我想到的一些选项是:

  • 最简单 - 在Apache中设置VirtualHost,将主机名设置为无法通过DNS解析的唯一内容:只需将此条目添加到本地主机文件即可 - 任何通过IP访问服务器的人都将获得默认的Apache主机(欢迎页面) )。
  • 中 - 使用mod_auth_basic添加基本(通过htpasswd的用户名+密码)访问网络服务器
  • 最难 - 添加iptables规则以阻止除给定mac的
  • 之外的所有端口80访问