![集成 Active Directory、Squid 和流量整形器(如 MikroTik)](https://linux22.com/image/501829/%E9%9B%86%E6%88%90%20Active%20Directory%E3%80%81Squid%20%E5%92%8C%E6%B5%81%E9%87%8F%E6%95%B4%E5%BD%A2%E5%99%A8%EF%BC%88%E5%A6%82%20MikroTik%EF%BC%89.png)
我们大学有一个大型网络,大约有 10,000 名用户。我们有一个 AD,并希望使用 Squid 服务器进行缓存和 NTLM 身份验证。我们也有 40 Mbit/s 的互联网,我们将共享它。
在 AD 中,我们有学生、老师……OU,每个组都应该有适当的互联网速度。我知道我们应该使用流量整形器以最佳方式共享互联网。
第一个问题是:哪种流量整形器适合使用(在 Linux 中)?我们可以使用MikroTik?
第二个是:我们能否使用 Squid 身份验证从 AD 中识别用户及其 OU,然后从流量整形器中向他们提供他们的互联网速度(以及我们如何做到)?
第三个是:还有其他解决方案可以解决这个问题吗?(问题:使用 AD 和共享 Internet 连接的最佳方式。)
答案1
简单的答案是使用类似 802.1x 的东西。
如果您有一张完全空白的表格,那么您可以购买 Enterasys 交换机,它可以根据 802.1x 半径响应将策略应用于用户。教师将获得无限带宽,学生将获得 50k/秒的互联网速度,但无限的本地网络速度,等等。
如果您有一个现有网络(并且您没有使用 enterasys 交换机),那么您可以将不同类别的用户放入不同的子网,然后使用 freebsd 和 PF 或 linux 的流量整形并基于这些子网在边界应用流量整形。任何给定的现有子网都将分成 2-4 个子网,每个子网都有不同的策略。部署起来会很麻烦,但也不是特别难。
在另一个生活中,我为校园无线网络设置了一个防火墙,该防火墙设置了一个强制门户,并根据 ldap 数据库对用户进行身份验证。根据用户属性应用不同的流量整形策略本来相当容易。不过,设置它绝非易事,我现在不建议将其作为解决方案。
我相信其他人有其他方法来解决这个问题,而我的方法可能比其他方法更复杂,而且不如其他方法可靠。
答案2
Squid 支持 NTLM 身份验证。
对于带宽管理,你可能需要研究一下 squid 的一个功能,称为延迟池。
答案3
有可购买的软件解决方案可以轻松满足您的需求,Blue Coat 的 PacketShaper 和 Proxy 解决方案就是其中之一,但显然这需要花钱。拥有 8000 名用户的大学肯定买得起这样的产品,但如果买不起,您还有其他选择。
首先,如果你想使用 squid 透明地拦截流量,就无法进行身份验证。因此,请确保你能够在浏览器中为网络上的每台机器分配代理设置。
Chris 建议的解决方案可能会有效,但实施和支持确实有点复杂。
延迟池可以用作带宽限制器,但作为流量整形器,我认为 squid 无法做到这一点。您需要另一种软件解决方案,而且我不确定您是否会找到许多免费的优质流量整形器或易于使用/配置的流量整形器。