![在不破坏自动发现功能的情况下阻止 Apple 的 Mail.app 和 EWS](https://linux22.com/image/693115/%E5%9C%A8%E4%B8%8D%E7%A0%B4%E5%9D%8F%E8%87%AA%E5%8A%A8%E5%8F%91%E7%8E%B0%E5%8A%9F%E8%83%BD%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E9%98%BB%E6%AD%A2%20Apple%20%E7%9A%84%20Mail.app%20%E5%92%8C%20EWS.png)
我需要阻止 Apple 的 Mail.app 电子邮件客户端连接到我们的 Exchange 2010 和 2013 服务器。Mail.app 使用 EWS 连接到 Exchange 服务器,因此我使用 IP 过滤器阻止了 EWS。这不仅阻止了 Mail.app 运行,还阻止了 AutoDiscover。
有没有更好的方法来阻止 Mail.app?或者我可以启用 AutoDiscover 并阻止其余 EWS 功能吗?
答案1
将用户代理列入黑名单或白名单的问题在于,用户代理字符串很容易被伪造。
我在自己的环境中使用 Thunderbird 的 ExQuilla 扩展程序进行了此操作,以确认白名单对我们来说不够好。说明位于 https://exquilla.zendesk.com/entries/41164327-Custom-User-Agent-string
不幸的是,我对这个问题没有更好的答案。我们不得不在反向代理上阻止 EWS,以防止外部客户端能够在没有 2FA 的情况下下载电子邮件。OWA 很容易进行 2FA,EAS 支持条件访问或设备隔离,但 EWS 仅使用用户名和密码就完全开放。这对我们来说是一个巨大的痛苦。
答案2
如果客户端确实通过 EWS 连接到 Exchange,则有一种方法可以发现此客户端正在使用的 UserAgent。只要它是可识别的(顺便说一句,这不是托管服务中的东西),你就可以通过 阻止它Set-OrganizationConfig
。
使用日志解析器查看 Exchange 服务器上的 IIS 日志以发现应用程序的用户代理字符串。掌握此信息后,您可以在 Exchange 2010 及更高版本上使用以下内容:
Set-OrganizationConfig -EwsApplicationAccessPolicy EnforceBlockList -EwsBlockList @{Add="UserAgent/*"}
通配符在用户代理阻止列表中可以成为您的朋友,这实际上取决于您在 IIS 日志中找到的内容。
Set-CasMailbox
您还可以通过使用而不是组织范围的“Set-OrganizationConfig”来阻止此每个用户
我还在这里写了有关阻止特定应用程序的内容:http://blaughwtech.blogspot.com/2015/07/block-microsoft-send-app-in-ews-policy.html