设备分配会限制或防止对外围设备进行访问。限制在用户分配时实施。缺省情况下,用户必须具有授权才能访问可分配设备。
如果已经运行 bsmconv 命令启用了审计,则已经在系统上启用了设备分配。有关更多信息,请参见 bsmconv(1M) 手册页。
承担拥有审计控制权限配置文件的角色或成为超级用户。
主管理员角色拥有审计控制权限配置文件。还可以将审计控制权限配置文件指定给所创建的角色。有关如何创建角色并将其指定给用户的信息,请参见示例 9–3。
# bsmconv This script is used to enable the Basic Security Module (BSM). Shall we continue with the conversion now? [y/n] y bsmconv: INFO: checking startup file. bsmconv: INFO: move aside /etc/rc3.d/S81volmgt. bsmconv: INFO: turning on audit module. bsmconv: INFO: initializing device allocation files. The Basic Security Module is ready. If there were any errors, please fix them now. Configure BSM by editing files located in /etc/security. Reboot this system now to come up with BSM enabled. |
此命令禁用 Volume Management 守护进程 (/etc/rc3.d/S81volmgt)。
承担主管理员角色,或成为超级用户。
主管理员角色拥有主管理员配置文件。要创建角色并将角色指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 “使用 Solaris Management Console(任务)”。
创建包含适当授权和命令的权限配置文件。
通常,可以创建包括 solaris.device.allocate 授权的权限配置文件。请按照如何创建或更改权限配置文件中的说明执行。授予权限配置文件适当属性,例如:
权限配置文件名称: Device Allocation
授予的授权: solaris.device.allocate
带有安全属性的命令:带有 sys_mount 权限的 mount 和带有 sys_mount 权限的 umount
创建权限配置文件的角色。
请按照如何使用 GUI 创建和指定角色中的说明执行。使用以下角色属性作为指南:
角色名: devicealloc
角色全名: Device Allocator
角色说明: Allocates and mounts allocated devices
权限配置文件: Device Allocation
此权限配置文件必须在包括于角色中的配置文件列表的顶部。
将此角色指定给允许分配设备的每个用户。
为用户讲授如何使用设备分配。
有关分配可移除介质的示例,请参见如何分配设备。
由于 Volume Management 守护进程 (vold) 未运行,因此不会自动挂载可移除介质。有关挂载已分配设备的示例,请参见如何挂载已分配的设备。
必须启用设备分配,此过程才会成功。有关如何启用设备分配的信息,请参见如何使设备可分配。
承担拥有设备安全权限配置文件的角色或成为超级用户。
主管理员角色拥有设备安全权限配置文件。还可以将设备安全权限配置文件指定给所创建的角色。有关如何创建角色并将其指定给用户的信息,请参见示例 9–3。
# list_devices device-name |
其中,device-name 是以下各项之一:
audio[n]-麦克风和扬声器。
fd[n]-软盘驱动器。
sr[n]-CD-ROM 驱动器。
st[n]-磁带机。
如果 list_devices 命令返回一条类似于以下内容的错误消息,则表明未启用设备分配,或者您不具有足够权限来检索此信息。
list_devices: No device maps file entry for specified device.
为使此命令成功执行,请启用设备分配并承担具有 solaris.device.revoke 授权的角色。
强制分配应在某个用户忘记解除设备分配时使用,也可以在用户对设备有即时需要时使用。
此用户或角色必须具有 solaris.device.revoke 授权。
确定角色中是否具有适当授权。
$ auths solaris.device.allocate solaris.device.revoke |
将设备强制分配给需要此设备的用户。
此示例将磁带机强制分配给用户 jdoe。
$ allocate -U jdoe |
在进程终止或用户注销时,不会自动解除对用户的设备分配。用户忘记解除设备分配时,应使用强制解除分配。
此用户或角色必须具有 solaris.device.revoke 授权。
确定角色中是否具有适当授权。
$ auths solaris.device.allocate solaris.device.revoke |
强制解除设备分配。
此示例强制解除打印机分配。现在,其他用户可以分配此打印机。
$ deallocate -f /dev/lp/printer-1 |
承担拥有设备安全权限配置文件的角色或成为超级用户。
主管理员角色拥有设备安全权限配置文件。还可以将设备安全权限配置文件指定给所创建的角色。有关如何创建角色并将其指定给用户的信息,请参见示例 9–3。
指定是否需要授权,或者指定 solaris.device.allocate 授权。
更改 device_allocate 文件中设备项的第五个字段。
audio;audio;reserved;reserved;solaris.device.allocate;/etc/security/lib/audio_clean fd0;fd;reserved;reserved;solaris.device.allocate;/etc/security/lib/fd_clean sr0;sr;reserved;reserved;solaris.device.allocate;/etc/security/lib/sr_clean |
其中,solaris.device.allocate 指示用户必须具有 solaris.device.allocate 授权才能使用此设备。
在以下示例中,系统上的任何用户都可以分配所有设备。device_allocate 文件中每个设备项的第五个字段都更改为一个 at 符号 (@)。
$ whoami devicesec $ vi /etc/security/device_allocate audio;audio;reserved;reserved;@;/etc/security/lib/audio_clean fd0;fd;reserved;reserved;@;/etc/security/lib/fd_clean sr0;sr;reserved;reserved;@;/etc/security/lib/sr_clean … |
在以下示例中,不能使用音频设备。device_allocate 文件中音频设备项的第五个字段更改为一个星号 (*)。
$ whoami devicesec $ vi /etc/security/device_allocate audio;audio;reserved;reserved;*;/etc/security/lib/audio_clean fd0;fd;reserved;reserved;solaris device.allocate;/etc/security/lib/fd_clean sr0;sr;reserved;reserved;solaris device.allocate;/etc/security/lib/sr_clean … |
在以下示例中,不能使用外围设备。device_allocate 文件中每个设备项的第五个字段都更改为一个星号 (*)。
$ whoami devicesec $ vi /etc/security/device_allocate audio;audio;reserved;reserved;*;/etc/security/lib/audio_clean fd0;fd;reserved;reserved;*;/etc/security/lib/fd_clean sr0;sr;reserved;reserved;*;/etc/security/lib/sr_clean … |
缺省情况下,设备分配命令位于 other 审计类中。
承担主管理员角色,或成为超级用户。
主管理员角色拥有主管理员配置文件。要创建角色并将角色指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 “使用 Solaris Management Console(任务)”。
预选 ot 类进行审计。
将 ot 类添加到 audit_control 文件的 flags 行中。此文件的显示与以下信息类似:
# audit_control file dir:/var/audit flags:lo,ot minfree:20 naflags:lo |
有关详细说明,请参见如何修改 audit_control 文件。