我正在尝试部署本地网络 Web 应用程序,该应用程序不需要客户端登录。
要求是阻止 LAN 中的某些机器(不是用户,只是几台计算机,应用程序没有登录页面,因此用户是匿名的)访问该应用程序。LAN 有 100 多台机器,试图阻止其中 20 台机器。可以将其视为将机器列入黑名单。
我担心的是:
- 我可以进行基于 MAC 地址的过滤吗?
- 如果没有,我应该进行基于 IP 的过滤吗?这可能是不可能的,因为 LAN 配置了动态 IP。
有没有其他方法,通过代码让我能够动态配置服务器?请求是否包含任何允许我执行此操作的客户端计算机特定信息?
我实际上无法控制网络,因为它是为客户端服务的。我对使用的交换机、客户端操作系统、预算等也没有任何发言权。
LAN 拓扑:令牌环,服务器运行的是 RedHat Linux 版本。
Web 应用程序是用 Java 编写的,部署在 TomCat 之上,但解决方案不一定受限制。我通常想知道我们是否可以放弃网络中特定机器对我们的应用程序的所有请求。
答案1
Linux 具有ARP 表该选项允许您创建使用 MAC 地址而不是 IP 地址的防火墙。
例如:
arptables -A IN --source-mac AA:BB:CC:DD:EE:FF -j DROP