Bomi
分类: 系统运维
2012-02-04 00:56:55
运行 OS X 的 Macintosh 基本上与仍启用用户帐户控制 (UAC) 的 Windows Vista 一样:您的管理员权限被剥夺了,根帐户或管理员帐户被禁用了,而且执行一些需要管理员权限的操作时,还会提示您提升权限。在 Windows Vista 中,您可能知道需要管理员帐户时如何管理和使用它。但如果您是刚刚接触 Mac,这对于您来说可就不是那么简单了。
在 Mac 中,为了执行管理功能(尤其是在终端中),您必须能够发出 sudo 命令,而这项命令需要进行身份验证。这很简单,配置 Mac 的方法是现成的,您只需重新输入自己的密码来提供必要的身份验证即可。
有些人会觉得这实在是太简单了,几乎和 Windows 一样,但它也意味着如果他人猜出、盗窃或破解了您的密码,他就可以从本地或通过 SSH 访问您的系统,这样攻击者就可以像计算机启用了根一样把它整个接收下来(根好比是 Windows 中的管理员)。更糟糕的是,如果攻击者使用“sudo –s”启动 Shell 的话,系统日志中实际上不会留下任何痕迹。
您如何按需向 Mac 用户提供他们所需的权利,并同时增强安全性?令人惊讶的是,只要启用根帐户即可。
默认情况下,OS X 会采取一般的安全措施,禁用根帐户。但问题是,前面已经提到,在这种状态下,用户只需重新键入其自己的凭据,即可获得提升的权限。为了确保用户无法只通过重新输入他们自己的凭据就可以获得根级别(管理员)的访问权限,您需要为帐户“根”指定密码,以此来启用根帐户。为此,请使用您的 Directory Utility,或从终端发出以下命令:
sudo passwd root
然后,按照提示输入新密码(请参见 图 1)。不要忘记定期更改密码
启用根帐户后,用户便无法再只通过重新输入他们自己的密码来获得根级别(管理员)的权限。这在设置权限时可提供更细微的控制,因为现在必须调用单独的已提升帐户才能执行管理功能。您可以使用第三方解决方案以随机和安全的方式存储帐户密码,并提供经过委派和审核的界面以根据需要获得密码,通过这种方法将此帐户与一般用户帐户分开进行管理和保护。
完成这些工作后,您需要确保 sudo 命令可供需要它的人使用。请记住,OS X 中有三个用户级别:用户、管理员和根。默认情况下,用户无法发出 sudo 命令,只有管理员和根用户可以。如果您不希望用户具备管理员权限,但希望他们能够在必要时发出 sudo 命令,必须在 OS X 系统上为用户启用 sudo。为此,您可以编辑 /private/etc/sudoers 文件来包含特定用户,也可以取消图 2 中以 '%wheel' 开头的示例行中的注释,然后将您的用户添加到 wheel 组中。
图 2 为指定用户启用 sudo
按照此处概述的步骤进行操作,您可以通过自动化流程管理 Mac 系统的根密码,这些流程会定期或在密码恢复之后随机生成新密码。因此,您的系统仍然会符合贵公司的策略,以及支付卡行业 (PCI) 数据安全标准、萨班-奥西利法案 (SOX)、健康保险流通与责任法案 (HIPAA) 和其他法案中提出的规定。您也可以阻止用户和管理员仅仅通过重新键入他们自己的密码而不加思考地提升他们的权限。