系统管理指南:安全性服务

管理设备分配

设备分配会限制或防止对外围设备进行访问。限制在用户分配时实施。缺省情况下,用户必须具有授权才能访问可分配设备。

Procedure如何使设备可分配

如果已经运行 bsmconv 命令启用了审计,则已经在系统上启用了设备分配。有关更多信息,请参见 bsmconv(1M) 手册页。

  1. 承担拥有审计控制权限配置文件的角色或成为超级用户。

    主管理员角色拥有审计控制权限配置文件。还可以将审计控制权限配置文件指定给所创建的角色。有关如何创建角色并将其指定给用户的信息,请参见示例 9–3

  2. 启用设备分配。


    # 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)。


Procedure如何授权用户来分配设备

  1. 承担主管理员角色,或成为超级用户。

    主管理员角色拥有主管理员配置文件。要创建角色并将角色指定给用户,请参见《系统管理指南:基本管理》中的第 2  章 “使用 Solaris Management Console(任务)”

  2. 创建包含适当授权和命令的权限配置文件。

    通常,可以创建包括 solaris.device.allocate 授权的权限配置文件。请按照如何创建或更改权限配置文件中的说明执行。授予权限配置文件适当属性,例如:

    • 权限配置文件名称: Device Allocation

    • 授予的授权: solaris.device.allocate

    • 带有安全属性的命令:带有 sys_mount 权限的 mount 和带有 sys_mount 权限的 umount

  3. 创建权限配置文件的角色。

    请按照如何使用 GUI 创建和指定角色中的说明执行。使用以下角色属性作为指南:

    • 角色名: devicealloc

    • 角色全名: Device Allocator

    • 角色说明: Allocates and mounts allocated devices

    • 权限配置文件: Device Allocation

      此权限配置文件必须在包括于角色中的配置文件列表的顶部。

  4. 将此角色指定给允许分配设备的每个用户。

  5. 为用户讲授如何使用设备分配。

    有关分配可移除介质的示例,请参见如何分配设备

    由于 Volume Management 守护进程 (vold) 未运行,因此不会自动挂载可移除介质。有关挂载已分配设备的示例,请参见如何挂载已分配的设备

Procedure如何查看有关设备的分配信息

开始之前

必须启用设备分配,此过程才会成功。有关如何启用设备分配的信息,请参见如何使设备可分配

  1. 承担拥有设备安全权限配置文件的角色或成为超级用户。

    主管理员角色拥有设备安全权限配置文件。还可以将设备安全权限配置文件指定给所创建的角色。有关如何创建角色并将其指定给用户的信息,请参见示例 9–3

  2. 显示有关系统上可分配设备的信息。


    # 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 授权的角色。

Procedure强制分配设备

强制分配应在某个用户忘记解除设备分配时使用,也可以在用户对设备有即时需要时使用。

开始之前

此用户或角色必须具有 solaris.device.revoke 授权。

  1. 确定角色中是否具有适当授权。


    $ auths
    
    solaris.device.allocate solaris.device.revoke
  2. 将设备强制分配给需要此设备的用户。

    此示例将磁带机强制分配给用户 jdoe


    $ allocate -U jdoe
    

Procedure强制解除设备分配

在进程终止或用户注销时,不会自动解除对用户的设备分配。用户忘记解除设备分配时,应使用强制解除分配。

开始之前

此用户或角色必须具有 solaris.device.revoke 授权。

  1. 确定角色中是否具有适当授权。


    $ auths
    
    solaris.device.allocate solaris.device.revoke
  2. 强制解除设备分配。

    此示例强制解除打印机分配。现在,其他用户可以分配此打印机。


    $ deallocate -f /dev/lp/printer-1
    

Procedure如何更改可以分配的设备

  1. 承担拥有设备安全权限配置文件的角色或成为超级用户。

    主管理员角色拥有设备安全权限配置文件。还可以将设备安全权限配置文件指定给所创建的角色。有关如何创建角色并将其指定给用户的信息,请参见示例 9–3

  2. 指定是否需要授权,或者指定 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 授权才能使用此设备。


示例 4–4 允许任何用户分配设备

在以下示例中,系统上的任何用户都可以分配所有设备。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

…


示例 4–5 防止使用某些外围设备

在以下示例中,不能使用音频设备。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

…


示例 4–6 防止使用所有外围设备

在以下示例中,不能使用外围设备。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

…

Procedure如何审计设备分配

缺省情况下,设备分配命令位于 other 审计类中。

  1. 承担主管理员角色,或成为超级用户。

    主管理员角色拥有主管理员配置文件。要创建角色并将角色指定给用户,请参见《系统管理指南:基本管理》中的第 2  章 “使用 Solaris Management Console(任务)”

  2. 预选 ot 类进行审计。

    ot 类添加到 audit_control 文件的 flags 行中。此文件的显示与以下信息类似:


    # audit_control file
    
    dir:/var/audit
    
    flags:lo,ot
    
    minfree:20
    
    naflags:lo

    有关详细说明,请参见如何修改 audit_control 文件