JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris 11.1 管理:安全服务     Oracle Solaris 11.1 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

第 1 部分安全性概述

1.  安全性服务(概述)

第 2 部分系统、文件和设备安全性

2.  管理计算机安全性(概述)

控制对计算机系统的访问

维护物理安全性

维护登录控制

管理口令信息

口令加密

特殊系统帐户

远程登录

控制对设备的访问

设备策略(概述)

设备分配(概述)

控制对计算机资源的访问

地址空间布局随机化

限制和监视超级用户访问权限

配置基于角色的访问控制以替换超级用户

防止无意中误用系统资源

设置 PATH 变量

为用户指定受限 Shell

限制对文件中数据的访问

限制 setuid 可执行文件

使用缺省安全 (Secure by Default) 配置

使用资源管理功能

使用 Oracle Solaris 区域

监视计算机资源的使用情况

监视文件完整性

控制对文件的访问

通过加密保护文件

使用访问控制列表

跨计算机共享文件

限制对共享文件的 root 访问

控制网络访问

网络安全性机制

远程访问的验证和授权

防火墙系统

加密和防火墙系统

报告安全问题

3.  控制对系统的访问(任务)

4.  病毒扫描服务(任务)

5.  控制对设备的访问(任务)

6.  使用 BART 验证文件完整性(任务)

7.  控制对文件的访问(任务)

第 3 部分角色、权限配置文件和特权

8.  使用角色和特权(概述)

9.  使用基于角色的访问控制(任务)

10.  Oracle Solaris 中的安全属性(参考信息)

第 4 部分加密服务

11.  加密框架(概述)

12.  加密框架(任务)

13.  密钥管理框架

第 5 部分验证服务和安全通信

14.  使用可插拔验证模块

15.  使用 安全 Shell

16.  安全 Shell(参考信息)

17.  使用简单验证和安全层

18.  网络服务验证(任务)

第 6 部分Kerberos 服务

19.  Kerberos 服务介绍

20.  规划 Kerberos 服务

21.  配置 Kerberos 服务(任务)

22.  Kerberos 错误消息和故障排除

23.  管理 Kerberos 主体和策略(任务)

24.  使用 Kerberos 应用程序(任务)

25.  Kerberos 服务(参考信息)

第 7 部分在 Oracle Solaris 中审计

26.  审计(概述)

27.  规划审计

28.  管理审计(任务)

29.  审计(参考信息)

词汇表

索引

控制对计算机资源的访问

某些系统资源在缺省情况下即受保护。此外,作为系统管理员,您可以控制和监视系统活动。您可以通过设置限制访问的对象及其可以访问的资源。可以记录资源的使用,并可以监视正在使用资源的对象,还可以设置系统以最大程度地减少资源的不当使用。

地址空间布局随机化

Oracle Solaris 标记了许多用户级二进制文件,以启用地址空间布局随机化 (ASLR)。ASLR 会对地址空间的公钥部分的起始地址进行随机化处理。该安全防御机制可以导致返回导向编程 (Return Oriented Programming, ROP) 攻击在试图利用软件漏洞时失败。

区域为其流程继承了该随机布局。由于使用 ASLR 可能并不适合所有二进制文件,因此,ASLR 的使用可以在区域级别和二进制级别进行配置。

有三种可行的 ASLR 配置:

sxadm 命令用于配置 ASLR。您必须承担 root 角色才能运行此命令。有关示例和信息,请参见 sxadm(1M) 手册页。有关开发者帮助,请参见《Oracle Solaris 11 开发者安全性指南》

限制和监视超级用户访问权限

系统要求提供 root 口令才能进行超级用户访问。在缺省配置中,用户无法以 root 身份远程登录系统。远程登录时,用户必须使用其用户名登录,然后使用 su 命令成为 root 用户。可以监视一直在使用 su 命令的用户,特别是那些尝试获取超级用户访问权限的用户。有关监视超级用户以及限制超级用户访问权限的过程,请参见监视和限制 root 用户访问(任务)

配置基于角色的访问控制以替换超级用户

基于角色的访问控制 (Role-based access control, RBAC) 是 Oracle Solaris 的一项功能,目的在于将超级用户的功能分配给多个管理角色。超级用户(即 root 用户)可以访问系统中的所有资源。借助 RBAC,可以使用一组具有独立权限的角色来替换 root 的许多职责。例如,可以设置一个角色来处理用户帐户创建,设置另一个角色来处理系统文件修改。虽然您不可以修改 root 帐户,但可以将该帐户保留为一种角色,然后不分配该角色。此策略可以有效地阻止对系统的 root 访问。

每个角色都要求已知的用户使用自己的用户名和口令进行登录。登录之后,用户即可承担具有特定角色口令的角色。有关 RBAC 的更多信息,请参见基于角色的访问控制(概述)

防止无意中误用系统资源

可以通过以下方法来防止您和您的用户发生意外错误:

设置 PATH 变量

应注意正确设置 PATH 变量。否则,可能会无意中运行他人引入的程序。入侵程序可能会破坏数据或危害系统。这种对安全性构成威胁的程序称为特洛伊木马。例如,一个冒充的 su 程序可能会放置在公共目录中,而您作为系统管理员可能会运行该冒充程序。这类脚本看上去就像常规的 su 命令。由于这类脚本会在执行之后自行删除,因此,几乎没有明确迹象表明您实际上已运行了特洛伊木马。

PATH 变量是在登录时自动设置的。PATH 是通过您的初始化文件设置的,如 .bashrc/etc/profile。当设置用户搜索路径以便将当前目录 (.) 置于最后时,就可以防止您运行这类特洛伊木马。供 root 帐户使用的 PATH 变量绝不能包括当前目录。

为用户指定受限 Shell

标准 shell允许用户执行打开文件、执行命令等操作。受限 shell 可限制用户更改目录和执行命令的能力。可使用 /usr/lib/rsh 命令调用受限 shell。请注意,受限 shell 并不是远程 shell,后者为 /usr/sbin/rsh

受限 shell 在以下方面不同于标准 shell:

使用受限 shell,可以限制用户对系统文件的访问能力。此类 shell 将为需要执行特定任务的用户创建一种受限环境。但是,受限 shell 并非完全安全,它的目的仅在于防止不熟练的用户无意中造成破坏。

有关受限 shell 的信息,请使用 man -s1m rsh 命令查看 rsh(1M) 手册页。

限制对文件中数据的访问

因为 Oracle Solaris 是一种多用户环境,因此文件系统安全性是系统中最基本的安全风险。可以使用传统的 UNIX 文件保护措施保护文件,也可以使用更安全的访问控制列表 (access control list, ACL)。

您可能需要允许一些用户读取某些文件,为另一些用户提供更改或删除某些文件的权限。您可能会有一些不希望其他任何用户看到的数据。第 7 章介绍了如何设置文件权限。

限制 setuid 可执行文件

可执行文件可能产生安全风险。少量可执行程序必须以 root 身份运行才能正常工作。运行这些 setuid 程序需要将用户 ID 设置为 0。运行这些程序的任何用户都使用 root ID 运行程序。如果在编写某个程序时没有注意安全问题,使用 root ID 运行该程序将造成潜在的安全问题。

除了 setuid 位设置为 root 的 Oracle 随附可执行程序外,应该禁止使用其他 setuid 程序。如果无法禁止使用 setuid 程序,则必须限制其使用。安全管理需要的 setuid 程序很少。

有关更多信息,请参见防止可执行文件危及安全。有关过程,请参见防止程序受到安全风险(任务列表)

使用缺省安全 (Secure by Default) 配置

缺省情况下,安装 Oracle Solaris 后,将禁用许多网络服务。此配置称为“缺省安全”(SBD)。使用 SBD 时,接受网络请求的唯一网络服务是 sshd 守护进程。其他所有网络服务将被禁用,或仅处理本地请求。要启用单个网络服务(如 ftp),可使用 Oracle Solaris 的服务管理工具 (Service Management Facility, SMF) 功能。有关更多信息,请参见 netservices(1M)smf(5) 手册页。

使用资源管理功能

Oracle Solaris 软件提供了完善的资源管理功能。使用这些功能,可以按照服务器整合环境中的应用程序对资源使用进行分配、安排、监视以及设置上限操作。使用资源控制框架,可以对进程占用的系统资源设置约束。这类约束有助于防止尝试使系统资源发生泛洪的脚本引起的拒绝服务攻击。

使用这些资源管理功能,可以为特定项目指定资源。还可以动态调整可用资源。有关更多信息,请参见《Oracle Solaris 11.1 管理:Oracle Solaris Zones、Oracle Solaris 10 Zones 和资源管理》中的第 I 部分, "Oracle Solaris 资源管理"

使用 Oracle Solaris 区域

Oracle Solaris 区域提供了一种应用程序执行环境,其中单个 Oracle Solaris OS 实例中各进程与系统的其余部分隔离开来。这种隔离阻止了在一个区域中运行的进程监视或影响在其他区域中运行的进程。即使运行的进程具有超级用户功能,也不能查看或影响其他区域中的活动。

Oracle Solaris 区域非常适用于将多个应用程序置于单个服务器上的环境。有关更多信息,请参见《Oracle Solaris 11.1 管理:Oracle Solaris Zones、Oracle Solaris 10 Zones 和资源管理》中的第 II 部分, "Oracle Solaris Zones"

监视计算机资源的使用情况

作为系统管理员,您需要监视系统活动。您需要注意计算机的所有方面,其中包括以下方面:

了解这些知识之后,就可以使用可用工具审计系统使用情况并监视单个用户的活动。如果怀疑安全性受到破坏,则使用监视功能会非常有用。有关审计服务的更多信息,请参见第 26 章

监视文件完整性

作为系统管理员,您需要确保所管理的系统上安装的文件未被意外更改。在大型安装中,通过有关每个系统上的软件栈的比较和报告工具可以跟踪系统。使用基本审计报告工具 (Basic Audit Reporting Tool, BART),可以按时间进度对一个或多个系统执行文件级检查,以此进行全面的系统验证。一个或多个系统的 BART 清单在一段时间内的变化可以验证系统的完整性。BART 提供了清单创建、清单比较以及脚本报告规则。有关更多信息,请参见第 6 章