我需要了解如何配置 macOS 以使用 EAP-TLS 身份验证而不使用 MDM。
我的网络上只有一台 Mac 设备,由所有者使用。我不想使用第三方软件。
我只需要知道如何导入证书以及如何手动配置无线 EAP-TLS 连接。
我的网络仅支持 Windows,使用 AD CS 创建证书并通过策略配置站点。由于它是 Mac,我将手动执行此例程。
我需要了解如何配置 macOS 以使用 EAP-TLS 身份验证而不使用 MDM。
我的网络上只有一台 Mac 设备,由所有者使用。我不想使用第三方软件。
我只需要知道如何导入证书以及如何手动配置无线 EAP-TLS 连接。
我的网络仅支持 Windows,使用 AD CS 创建证书并通过策略配置站点。由于它是 Mac,我将手动执行此例程。
背景:像这样的设置需要使用“配置配置文件”进行配置——基本上是一个具有特定格式设置的 XML 文件和 .mobileconfig 扩展名。通常,您会在 MDM 服务中注册设备,然后通过 Internet 向其发送配置文件,但您也可以将文件直接放在 Mac(或 iPhone 或 iPad)上,然后手动安装。
我没有办法正确测试这一点,但我认为以下过程会起作用。首先,您需要 Apple Configurator 应用程序、要使用的客户端证书(通常是 .p12 或 .pfx 文件,即包括私钥)以及身份验证服务器的证书(.crt 或 .cer 文件,不包括私钥)。如果您已经在 Mac 的钥匙串中安装了这些证书,则可能需要删除它们(使用“钥匙串访问”实用程序)以避免冲突。我认为不会有问题,但由于我无法测试这一点......为了以防万一,删除它们可能是最安全的。
您还需要一个可以编辑 XML 文件的程序,以便在安装之前调整配置文件。一般来说,面向编程的文本编辑器适合于此(即不会“帮助”向文件添加格式垃圾,或对奇怪的“.mobileconfig”扩展名感到不安)。Unix 命令行编辑器如
nano
和vi
是不错的选择。如果您更喜欢 GUI 编辑器,我推荐BBEdit - 即使在免费演示模式下,它也非常适合类似的事情(但获取网络下载版本,而不是 App Store 版本,该版本删除了一些功能以符合 App Store安全政策)。首先,运行 Apple Configurator。它的大部分界面与管理 iPhone 等有关,本质上充当仅限本地的 MDM。忽略这一切。从“文件”菜单中,选择“新建配置文件”。
您将在左侧栏中看到一个窗口,其中包含一堆不同类别的配置设置。您只需要其中三个:常规(实际上是配置文件本身的属性)、证书和 Wi-Fi。
在“常规”部分中,为配置文件输入适当的名称(此配置文件将特定于该客户端 Mac,因此它可能应包括 Mac 的设备名称/序列号/资产标签/其他唯一 ID)。如果您在 Mac 上创建它并将其应用到,则默认标识符可能就可以了;否则,选择类似独特的东西。输入您的组织(即公司)名称以及您想要的任何描述和同意消息。
在边栏中选择“证书”,然后单击右侧面板中的“配置”按钮。这应该会给你一个“打开文件”对话框。打开客户端和服务器证书。如果您无法同时选择两个,请打开一个,然后单击窗格右上角的“+”按钮并添加第二个。如果客户端证书受密码保护,则其下方会有一个字段要求输入密码;将其留空是最安全的(稍后当您安装配置文件时,它会提示您输入)。
在侧栏中选择 Wi-Fi,然后单击“配置”。输入网络的 SSID(网络名称),进行任何其他相关更改,然后从“安全类型”弹出菜单中选择适当的企业选项。其下方将出现“企业设置”部分,其中包含“协议”和“信任”选项卡。
在“协议”选项卡中,选择 TLS EAP 类型,您将在其下方看到“身份证书”选项。从弹出菜单中选择客户端证书。
切换到“信任”选项卡,然后在“受信任的证书”中,选中服务器证书的框。我认为您不需要在受信任的服务器证书名称下输入任何内容。
注意:侧栏中的“证书”旁边应该有一个红色“1”,因为未输入客户端证书的密码。那不是问题。如果任何其他配置部分有更大的数字或红色数字,则意味着缺少一些重要的内容,您应该返回并检查。它会用红色箭头指出缺少的设置。
此时,配置文件应该已按照 Apple Configurator 的要求完成。选择“文件”菜单 >“保存”,将文件保存在任意位置(注意:默认情况下,.mobileconfig 扩展名将被隐藏,但它确实存在)。它会抱怨有一个错误,并且可能无法工作(再次,因为缺少密码),但告诉它无论如何都要保存。
此时配置文件中缺少一件重要的事情:有效负载范围。在 macOS 中,配置文件可以仅应用于单个用户,也可以应用于整个系统。Apple Configurator 旨在配置 iOS 和 tvOS 设备,这些设备没有这种区别,因此它没有办法指定它。macOS 将默认将其应用于用户范围,但从您的描述来看,您希望它应用于系统(整个计算机)范围。所以你需要编辑该文件。
在您选择的编辑器中打开 .mobileconfig 文件,然后
<key>PayloadScope</key><string>System</string>
在顶层添加。它应该看起来像这样:[编辑:] 看起来您还必须告诉它在系统级别应用 Wi-Fi 配置,而不仅仅是在用户登录时应用。这将涉及查找包含该配置部分的 XML 文件部分。最简单的方法是查找
SSID_STR
键(及其字符串值),然后<key>SetupModes</key><array><string>System</string></array>
在其正下方添加一个新条目。它应该看起来像这样:(注意:当我测试这个时,该
SSID_STR
项目是 Wi-Fi 设置中的最后一项dict
,因此它的正下方有一个关闭dict
标签。您的顺序可能不同,在这种情况下会有更多key
下面的条目不是问题,只是顺序不同而已。)现在配置文件已准备就绪。打开系统设置(在 Apple 菜单下)。默认情况下,“配置文件”部分可能不会显示,因此您需要从“查看”菜单中选择它,或使用“搜索”字段来查找它。无论哪种方式,都选择配置文件设置。
在已安装的配置文件列表(可能为空)下,单击“+”按钮,然后选择您刚刚创建的配置配置文件。我将向您展示该配置文件所包含内容的摘要,并为您提供多次退出安装的机会。根据需要多次单击继续/安装/等。在某些时候,它应该提示您输入缺少的客户端证书密码以及本地管理员帐户密码;输入这些并继续。
当完成提示您时,该配置文件应列在已安装配置文件列表中的“设备”下(如果它位于“用户”下,则范围更改不起作用;使用“-”按钮将其删除,检查您的编辑,然后再试一次)。如果它没有立即连接到 Wi-Fi 网络,您可能需要重新启动 Mac 才能使新设置完全生效。
顺便说一句,我认为实际上有一种方法可以让 Mac 从 Active Directory 证书服务中提取自己的客户端证书,并自动将其应用到 Wi-Fi 配置。但我不确定具体如何设置,对于一台 Mac(您已经为其创建了客户端证书)来说,这可能不值得担心。