配置 Amazon EC2 Mac 实例的系统完整性保护
您可以为采用 x86 架构的 Mac 实例和搭载 Apple 芯片的 Mac 实例配置系统完整性保护(SIP)设置。SIP 是 macOS 的一项关键安全功能,有助防止未经授权的代码执行和系统级别修改。有关更多信息,请参阅关于系统完整性保护
您可以完全启用或禁用 SIP,也可以有选择地启用或禁用特定 SIP 设置。建议仅在执行必要任务时暂时禁用 SIP,并在任务完成后尽快重新启用。禁用 SIP 可能会使实例容易受到恶意代码攻击。
所有支持 Amazon EC2 Mac 实例的 AWS 区域都支持 SIP 配置。
注意事项
-
支持下列 Amazon EC2 Mac 实例类型和 macOS 版本:
-
Mac1 | Mac2 | Mac2-m1ultra – macOS Ventura(版本 13.0 或更高版本)
-
Mac2-m2 | Mac2-m2pro – macOS Ventura(版本 13.2 或更高版本)
注意
不支持 macOS 测试版和预览版。
-
-
您可以指定自定义 SIP 配置,来🈶选择地启用或禁用特定 SIP 设置。如果您实施自定义配置,请连接到实例并验证设置,从而确保正确实现了您的需求并按预期运行。
SIP 配置可能会随 macOS 更新更改。我们建议在执行任何 macOS 版本升级后检查自定义 SIP 设置,确保安全配置依然兼容并正常发挥作用。
-
对于采用 x86 架构的 Mac 实例,SIP 设置在实例级别应用。连接到实例的任何根卷都将自动沿用已配置的 SIP 设置。
对于搭载 Apple 芯片的 Mac 实例,SIP 设置在卷级别应用。连接到实例的根卷不会沿用 SIP 设置。如果挂载其他根卷,则必须重新将 SIP 设置配置为所需状态。
-
完成 SIP 配置任务最长可能需要 90 分钟时间。在 SIP 配置任务进行期间,实例会保持无法访问状态。
-
SIP 配置不会传递到您随后利用该实例创建的快照或 AMI。
-
搭载 Apple 芯片的 Mac 实例必须只有一个可引导卷,并且每个挂载卷只能有一个额外的管理员用户。
默认 SIP 配置
下表列举了采用 x86 架构的 Mac 实例和搭载 Apple 芯片的 Mac 实例的默认 SIP 配置。
搭载 Apple 芯片的 Mac 实例 | 采用 x86 架构的 Mac 实例 | |
---|---|---|
Apple 内部专用 | ||
文件系统保护 | ||
基础系统 | ||
调试限制 | ||
Dtrace 限制 | ||
Kext 签名 | ||
Nvram 保护 |
检查 SIP 配置
我们建议在进行更改之前和之后检查 SIP 配置,确保其配置符合预期。
检查 Amazon EC2 Mac 实例的 SIP 配置
使用 SSH 连接到实例,然后在命令行中运行以下命令。
$
csrutil status
下面是示例输出。
System Integrity Protection status: enabled.
Configuration:
Apple Internal: enabled
Kext Signing: disabled
Filesystem Protections: enabled
Debugging Restrictions: enabled
DTrace Restrictions: enabled
NVRAM Protections: enabled
BaseSystem Verification: disabled
有关搭载 Apple 芯片的 Mac 实例的先决条件
在为搭载 Apple 芯片的 Mac 实例配置 SIP 设置之前,必须为 Amazon EBS 根卷管理员用户 (ec2-user
) 设置密码并启用安全令牌。
注意
密码和安全令牌将在您首次使用 GUI 连接到搭载 Apple 芯片的 Mac 实例时设置。如果您之前使用 GUI 连接到实例或者您使用采用 x86 架构的 Mac 实例,则无需执行这些步骤。
为 EBS 根卷管理员用户设置密码并启用安全令牌
-
为
ec2-user
用户设置密码。$
sudo /usr/bin/dscl . -passwd /Users/ec2-user -
为
ec2-user
用户启用安全令牌。对于-oldPassword
,请指定与上一步中相同的密码。对于-newPassword
,请指定一个不同的密码。以下命令假定您已将旧密码和新密码保存在.txt
文件中。$
sysadminctl -oldPassword `cat old_password.txt` -newPassword `cat new_password.txt` -
确认已启用安全令牌。
$
sysadminctl -secureTokenStatus ec2-user
配置 SIP 设置
在配置实例的 SIP 设置时,您可以启用或禁用所有 SIP 设置,也可以指定自定义配置,从而有选择地启用或禁用特定 SIP 设置。
注意
如果您实施自定义配置,请连接到实例并验证设置,从而确保正确实现了您的需求并按预期运行。
SIP 配置可能会随 macOS 更新更改。我们建议在执行任何 macOS 版本升级后检查自定义 SIP 设置,确保安全配置依然兼容并正常发挥作用。
要配置实例的 SIP 设置,您必须创建一个 SIP 配置任务。该 SIP 配置任务将指定实例的 SIP 设置。
在为搭载 Apple 芯片的 Mac 实例创建 SIP 配置时,必须指定以下凭证:
-
内部磁盘管理员用户
-
用户名:仅支持默认管理员用户 (
aws-managed-user
),并且默认使用该用户。不能指定其他管理员用户。 -
密码:如果没有更改
aws-managed-user
的默认密码,请指定默认密码,即空。否则请指定您的密码。
-
-
Amazon EBS 根卷管理员用户
-
用户名:如果未更改默认管理员用户,请指定
ec2-user
。否则指定您的管理员用户的用户名。 -
密码:必须始终指定此密码。
-
使用以下方法创建一个 SIP 配置任务。
检查 SIP 配置任务状态
可以使用以下方法之一检查 SIP 配置任务的状态。