跳过导航链接 | |
退出打印视图 | |
Oracle VM Server for SPARC 3.0 管理指南 Oracle VM Server for SPARC (简体中文) |
第 1 部分Oracle VM Server for SPARC 3.0 软件
1. Oracle VM Server for SPARC 软件概述
3. Oracle VM Server for SPARC 安全
Logical Domains Manager 配置文件内容
第 2 部分可选的 Oracle VM Server for SPARC 软件
13. Oracle VM Server for SPARC 物理机到虚拟机转换工具
14. Oracle VM Server for SPARC Configuration Assistant (Oracle Solaris 10)
16. 使用 Oracle VM Server for SPARC 管理信息库软件
17. Logical Domains Manager 发现
默认情况下,任何用户都可以访问所有域控制台。要控制对域控制台的访问,请配置 vntsd 守护进程以执行授权检查。vntsd 守护进程提供一个名为 vntsd/authorization 的服务管理工具 (Service Management Facility, SMF) 属性。可以配置此属性以对域控制台或控制台组启用用户和角色的授权检查。要启用授权检查,请使用 svccfg 命令将此属性的值设置为 true。当此选项处于启用状态时,vntsd 将仅侦听并接受 localhost 上的连接。如果启用 vntsd/authorization 时 listen_addr 属性指定备用 IP 地址,vntsd 将忽略该备用 IP 地址并继续仅在 localhost 上侦听。
注意 - 请勿将 vntsd 服务配置为使用 localhost 以外的主机。 如果您指定的是 localhost 以外的主机,系统将不再限制您从控制域连接到来宾域控制台。如果使用 telnet 命令远程连接到来宾域,则登录凭据在网络中以明文形式传递。 |
默认情况下,访问所有来宾控制台的授权存在于本地 auth_attr 数据库中。
solaris.vntsd.consoles:::Access All LDoms Guest Consoles::
使用 usermod 命令可以在本地文件中为用户或角色分配必需的授权。此命令仅允许具有所需授权的用户或角色访问给定的域控制台或控制台组。要在命名服务中为用户或角色分配授权,请参见《System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP)》。
您可以控制对所有域控制台的访问,也可以控制对单一域控制台的访问。
要控制对所有域控制台的访问,请参见如何使用角色控制对所有域控制台的访问和如何使用权限配置文件控制对所有域控制台的访问。
要控制对单一域控制台的访问,请参见如何使用角色控制对单一控制台的访问和如何使用权限配置文件控制对单个控制台的访问。
primary# svccfg -s vntsd setprop vntsd/authorization = true primary# svcadm refresh vntsd primary# svcadm restart vntsd
primary# roleadd -A solaris.vntsd.consoles role-name primary# passwd all_cons
primary# usermod -R role-name username
示例 3-2 使用角色控制对所有域控制台的访问
首先,启用控制台授权检查以限制对域控制台的访问。
primary# svccfg -s vntsd setprop vntsd/authorization = true primary# svcadm refresh vntsd primary# svcadm restart vntsd primary# ldm ls NAME STATE FLAGS CONS VCPU MEMORY UTIL UPTIME primary active -n-cv- UART 8 16G 0.2% 47m ldg1 active -n--v- 5000 2 1G 0.1% 17h 50m ldg2 active -t---- 5001 4 2G 25% 11s
以下示例说明如何创建具有 solaris.vntsd.consoles 授权的 all_cons 角色,该授权允许访问所有域控制台。
primary# roleadd -A solaris.vntsd.consoles all_cons primary# passwd all_cons New Password: Re-enter new Password: passwd: password successfully changed for all_cons
此命令将 all_cons 角色分配给 sam 用户。
primary# usermod -R all_cons sam
用户 sam 承担 all_cons 角色,可以访问所有控制台。例如:
$ id uid=700299(sam) gid=1(other) $ su all_cons Password: $ telnet 0 5000 Trying 0.0.0.0... Connected to 0. Escape character is '^]'. Connecting to console "ldg1" in group "ldg1" .... Press ~? for control options .. $ telnet 0 5001 Trying 0.0.0.0... Connected to 0. Escape character is '^]'. Connecting to console "ldg2" in group "ldg2" .... Press ~? for control options ..
本示例说明未经授权的用户 dana 尝试访问域控制台时所发生的情况:
$ id uid=702048(dana) gid=1(other) $ telnet 0 5000 Trying 0.0.0.0... Connected to 0. Escape character is '^]'. Connection to 0 closed by foreign host.
primary# svccfg -s vntsd setprop vntsd/authorization = true primary# svcadm refresh vntsd primary# svcadm restart vntsd
包括以下条目:
LDoms Consoles:::Access LDoms Consoles:auths=solaris.vntsd.consoles
primary# profiles -p "LDoms Consoles" \ 'set desc="Access LDoms Consoles"; set auths=solaris.vntsd.consoles'
primary# usermod -P "All,Basic Solaris User,LDoms Consoles" username
在添加 LDoms Consoles 配置文件期间指定任何先前存在的配置文件时要谨慎。之前的命令显示用户已经拥有 All 和 Basic Solaris User 配置文件。
primary# usermod -P +"LDoms Consoles" username
$ telnet 0 5000
示例 3-3 使用权限配置文件控制对所有域控制台的访问
以下示例说明如何使用权限配置文件控制对所有域控制台的访问:
Oracle Solaris 10:通过将以下条目添加到 /etc/security/prof_attr 文件创建具有 solaris.vntsd.consoles 授权的权限配置文件:
LDoms Consoles:::Access LDoms Consoles:auths=solaris.vntsd.consoles
将权限配置文件分配给 username。
primary# usermod -P "All,Basic Solaris User,LDoms Consoles" username
以下命令显示如何验证用户是否为 sam 以及 All、Basic Solaris User 和 LDoms Consoles 权限配置文件是否有效。telnet 命令显示如何访问 ldg1 域控制台。
$ id uid=702048(sam) gid=1(other) $ profiles All Basic Solaris User LDoms Consoles $ telnet 0 5000 Trying 0.0.0.0... Connected to 0. Escape character is '^]'. Connecting to console "ldg1" in group "ldg1" .... Press ~? for control options ..
Oracle Solaris 11:使用 profiles 命令在 /etc/security/prof_attr 文件中创建具有 solaris.vntsd.consoles 授权的权限配置文件。
primary# profiles -p "LDoms Consoles" \ 'set desc="Access LDoms Consoles"; set auths=solaris.vntsd.consoles'
将权限配置文件分配给用户。
primary# usermod -P +"LDoms Consoles" sam
以下命令显示如何验证用户是否为 sam 以及 All、Basic Solaris User 和 LDoms Consoles 权限配置文件是否有效。telnet 命令显示如何访问 ldg1 域控制台。
$ id uid=702048(sam) gid=1(other) $ profiles All Basic Solaris User LDoms Consoles $ telnet 0 5000 Trying 0.0.0.0... Connected to 0. Escape character is '^]'. Connecting to console "ldg1" in group "ldg1" .... Press ~? for control options ..
primary# svccfg -s vntsd setprop vntsd/authorization = true primary# svcadm refresh vntsd primary# svcadm restart vntsd
授权名称从域名派生而来,并且形式为 solaris.vntsd.console-domain-name:
solaris.vntsd.console-domain-name:::Access domain-name Console::
primary# roleadd -A solaris.vntsd.console-domain-name role-name primary# passwd role-name New Password: Re-enter new Password: passwd: password successfully changed for role-name
primary# usermod -R role-name username
示例 3-4 访问单一域控制台
本示例说明用户 terry 如何承担 ldg1cons 角色,以及如何访问 ldg1 域控制台。
首先,将单一域 ldg1 的授权添加到 /etc/security/auth_attr 文件:
solaris.vntsd.console-ldg1:::Access ldg1 Console::
然后,创建具有新授权的角色以仅允许访问该域控制台。
primary# roleadd -A solaris.vntsd.console-ldg1 ldg1cons primary# passwd ldg1cons New Password: Re-enter new Password: passwd: password successfully changed for ldg1cons
将 ldg1cons 角色分配给用户 terry,其承担 ldg1cons 角色并访问域控制台。
primary# usermod -R ldg1cons terry primary# su terry Password: $ id uid=700300(terry) gid=1(other) $ su ldg1cons Password: $ id uid=700303(ldg1cons) gid=1(other) $ telnet 0 5000 Trying 0.0.0.0... Escape character is '^]'. Connecting to console "ldg1" in group "ldg1" .... Press ~? for control options ..
以下内容说明用户 terry 无法访问 ldg2 域控制台:
$ telnet 0 5001 Trying 0.0.0.0... Connected to 0. Escape character is '^]'. Connection to 0 closed by foreign host.
primary# svccfg -s vntsd setprop vntsd/authorization = true primary# svcadm refresh vntsd primary# svcadm restart vntsd
以下示例条目可添加域控制台的授权:
solaris.vntsd.console-domain-name:::Access domain-name Console::
domain-name Console:::Access domain-name Console:auths=solaris.vntsd.console-domain-name
此条目必须在一行上。
primary# profiles -p "domain-name Console" \ 'set desc="Access domain-name Console"; set auths=solaris.vntsd.console-domain-name'
以下命令将配置文件分配给用户:
primary# usermod -P "All,Basic Solaris User,domain-name Console" username
请注意,All 和 Basic Solaris User 配置文件是必需的。
primary# usermod -P +"domain-name Console" username