更改 OpenWBEM CIMOM 配置

当 OpenWBEM CIMOM(owcimomd)启动时,它将从 openwbem.conf 文件度取运行时配置。openwbem.conf 文件位于 /etc/openwbem 目录中。

由分号(;)或井号(#)注释的选项的所有设置都使用默认设置。

当对此文件执行更改时,如果文本编辑器保存文件的格式是所使用平台的本机格式,则可以使用此文本编辑器更改文件。

可以在 openwbem.conf 文件来更改这些设置。本节讨论以下配置设置:

更改“身份验证”配置

更改“身份验证”配置时,您可以控制以下方面:

  • 能够访问 CIMOM 的人员

  • 所使用的身份验证模块

请参见以下设置:

http_server.allow_local_authentication

目的

指示 http_server 以允许本地身份验证而无需提供密码,这取决于本地系统文件权限。

可将此设置与“基本”或“摘要”设置一起使用。

语法

http_server.allow_local_authentication = option

选项

描述

true

启用本地身份验证。

这是默认设置。

false

禁用本地身份验证。

示例

http_server.allow_local_authentication = true

http_server.digest_password_file

目的

指定密码文件的位置。如果启用了 http_server.use_digest 设置,则需要指定密码文件的位置。

语法

http_server.digest_password_file = path_filename

以下是摘要密码文件的默认路径和文件名:

/etc/openwbem/digest_auth.passwd

示例

http_server.digest_password_file = /etc/openwbem/digest_auth.passwd

http_server.ssl_client_verification

目的

确定服务器是否应尝试通过 SSL 客户机证书验证来身份验证客户机。

在默认情况下会禁用该设置。

语法:

http_server.ssl_client_verification = option

选项

描述

自动更新

指定与可选选项相同的功能;但是,会将传递 HTTP 身份验证的先前未知的客户机证书添加到可信储存以便带有相同证书的后续客户机连接无需进行 HTTP 身份验证。

已禁用

禁用客户机证书检查。

这是默认设置。

可选

允许身份验证可信证书(无需 HTTP 身份验证)。

档客户机传递 HTTP 身份验证时,还允许不可信证书传递 SSL 握手。

必需

需要可信证书以使 SSL 握手成功。

示例

http_server.ssl_client_verification = disabled

http_server.ssl_trust_store

目的

指定包含 OpenSSL 可信储存的目录。

语法

http_server.ssl_trust_store = path

以下是可信储存文件的默认路径。

/etc/openwbem/truststore

示例

http_server.ssl_trust_store = /etc/openwbem/truststore

http_server.use_digest

目的

指示 HTTP 服务器使用“摘要”身份验证,这将绕过“基本”身份验证机制。要使用摘要,必须使用 owdigestgenpass 来设置摘要密码文件。

摘要不使用 owcimomd.authentication_module 配置设置所指定的身份验证模块。

语法

http_server.use_digest = option

选项

描述

false

启用“基本”身份验证机制。

这是默认设置。

true

禁用“基本”身份验证机制。

示例

http_server.use_digest = false

owcimomd.ACL_superuser

目的

指定用户的用户名,该用户能够访问由 owcimomd 维护的所有名称空间中的所有“通用信息模型”(CIM)数据。此用户可用来管理 /root/security 名称空间,该名称空间储存所有 ACL 用户权限。

在导入 OpenWBEM_Acl1.0.mof 文件之前,将不启用 ACL 处理。

语法

owcimomd.ACL_superuser = username

示例

owcimomd.ACL_superuser = root

owcimomd.allow_anonymous

目的

启用或禁用匿名登录 owcimomd。

语法

owcimomd.allow_anonymous = option

选项

描述

false

需要使用用户名和密码登录以访问 owcimomd 数据。

这是默认和建议设置。

true

允许匿名登录 owcimomd。

这将禁用身份验证。无需用户名或密码就能够访问 owcimomd 数据。

示例

owcimomd.allowed_anonymous = false

owcimomd.allowed_users

目的

指定允许访问 owcimomd 数据的用户列表。

语法

owcimomd.allowed_users = option

选项

描述

用户名

指定允许访问 owcimomd 数据的一个或多个用户。

每个用户名之间使用空格隔开。

root 用户为默认设置。

*

允许身份验证所有用户(例如,如果选择使用 ACL 来控制访问)。

除非将 owcimomd.allow_anonymous 设置为 true,否则将对所有身份验证方法强制设置此选项。

示例

owcimomd.allowed_users = bcwhitely jkcarey jlanderson

owcimomd.authentication_module

目的

指定 owcimomd 使用的身份验证模块。此设置应为到包含身份验证模块的共享库的绝对路径。

语法

owcimomd.authentication_module = path_filename

以下是身份验证模块的默认路径和文件名:

/usr/lib/openwbem/authentication/libpamauthentication.so

示例

owcimomd.authentication_module = /usr/lib/openwbem/authentication/libpamauthentication.so

simple_auth.password_file

目的

指定使用简单身份验证模块时密码文件的路径。

在默认情况下会禁用该设置。

语法

simple_auth.password_file = path_filename

示例

simple_auth.password_file = /etc/openwbem/simple_auth.passwd

更改证书配置

http_server.SSL_cert 和 http_server.SSL_key 设置指定包含主机私用密钥以及证书(OpenSSL 使用该证书进行 HTTPS 通讯)的文件的位置。

.pem 文件位于以下默认位置中:

/etc/openwbem/servercert.pem

/etc/openwbem/serverkey.pem

语法

http_server.SSL_cert = path_filename

http_server.SSL_key = path_filename

[Note]

密钥和证书可位于相同文件中。在此情况下,http_server.SSL_cert 和 http_server.SSL_key 的值应相同。

示例

http_server.SSL_cert = /etc/openwbem/servercert.pem

http_server.SSL_key = /etc/openwbem/servercert.pem

http_server.SSL_key = /etc/openwbem/serverkey.pem

更改端口配置

http_server.http_port 和 server.https_port 设置指定 owcimomd 侦听所有 HTTP 和 HTTPS 通讯所使用的端口号。

语法

http_server.http_port = option

http_server.https_port = option

选项

描述

Specific_port_number

指定 HTTP 或 HTTPS 通信的特定端口。

对于 HTTP,默认端口为 5988。

对于 HTTPS,默认端口为 5989。

-1

禁用 HTTP 或 HTTPS 连接(例如,如果您只希望支持 HTTPS 连接)。

0

运行时动态指派端口号。

示例

这些设置将禁用 HTTP 端口并启用端口 5989 来进行 HTTPS 通信:

http_server.http_port = -1

http_server.https_port = 5989

更改默认日志记录配置

owcimomd.conf 文件中的以下日志设置使您能够指定日志记录发生的位置和数量、记录的错误类型、日志大小、文件名和格式:

如果希望设置调试日志记录,请参见第 11.2.5 节 “配置“调试”日志记录”

如果希望设置其他日志,请参见第 11.2.6 节 “配置其他日志”

log.main.categories

目的

指定日志输出的类别。

语法

log.main.categories = option

选项

描述

category_name

指定使用空格分隔列表记录的类别。

owcimomd 中使用的类别有:

  • DEBUG

  • ERROR

  • FATAL

  • INFO

有关这些选项的更多信息,请参见第 11.2.4.4 节 “log.main.level”

如果在此选项中指定,则将不会作为级别来处理预定义的类别,而是作为独立类别来处理预定义的类别。无默认值可用;如果未设置类别,则将不会记录类别并且将使用 log.main.level 设置。

*

记录所有类别。

这是默认设置。

示例

log.main.categories = FATAL ERROR INFO

log.main.components

目的

指定日志输出的组件。

语法

log.main.components = option

选项

描述

component_name

指定使用空格分隔列表记录的组件(如 owcimomd)。

提供者可使用自己的组件。

*

指定记录所有组件。

这是默认设置。

示例

log.main.components = owcimomd nssd

log.main.format

目的

指定日志消息的格式(文本与 printf() 样式转换指定符混用)。

语法

log.main.format = conversion_specifier

选项

指定

%%

%

%c

组件(如 owcimomd)

%d

Date

可后跟日期格式指定符,以大括号括起。例如,%d{%H:%M:%S} 或 %d{%d %b %Y %H:%M:%S}。如果未提供日期格式指定符,则将假定使用 ISO 8601 格式。

唯一的例外是 %Q,它是毫秒数。

有关日期格式指定符的更多信息,请参见有关 strftime() 函数的文档(以 <ctime> 为标题)。

%e

XML CDATA 格式的消息。这包含“<![CDATA[“ and ending “]]>”

%F

文件名

%l

文件名和行号。例如,file.cpp(100)

%L

行号

%M

发出日志记录请求的方法名称(仅在支持 __PRETTY_FUNCTION__ 或 C99 的 __func__ 的 C++ 编译器上工作)。

%m

消息

%n

依赖于平台的行分隔符(一个分隔符时为 \n 或多个分隔符时为 \r\n)。

%p

类别,也称为级别或优先级。

%r

从应用程序启动到创建日志记录事件所经过的毫秒数。

%t

线程 ID

\n

换行

\t

Tab

\r

换行

\\

\

\x<hexDigits>

以十六进制表示的字符

可以更改最小字段宽度、最大字段宽度和对齐方式。可选格式修饰符位于百分比符号(%)和转换字符之间。第一个格式修饰符为左对齐标志,该标记为减号(-)字符。可选最小字段宽度修饰符跟在第一个格式修饰符之后,最小字段宽度修饰符为整数,表示输出的最小字符数。如果数据项需要较少的字符,则将根据对齐标志来在数据项左侧或右侧补加空格。如果数据项大于最小字段宽度,则将扩展字段以适应数据长度。

最小字段宽度修饰符以句点(.)表示,后跟十进制常量。如果数据项长度长于最大字段,则将从数据项开头(默认设置)或从数据项末尾(如果指定了左对齐标志)删除多余字符。

示例

Log4j TTCC 布局:

"%r [%t] %-5p %c - %m"

与 TTCC 类似,但带有一些固定大小的字段:

"%-6r [%15.15t] %-5p %30.30c - %m"

符合 log4j.dtd 1.2 的 XML 输出,可由 Chainsaw 处理(如果使用此输出,则输出必须为一行;此处断行是为了可读性需要):

"<log4j:event logger="%c" timestamp="%d{%s%Q}" level="%p" thread="%t"> <log4j:message>%e</log4j:message> <log4j:locationInfo class="" method="" file="%F" line="%L"/></log4j:event>"

以下为默认值:

log.main.format = [%t]%m

log.main.level

目的

指定日志输出的级别。如果设置该值,则日志将以指定级别或高于指定级别来输出所有预定义的类别。

语法

log.main.level = option

选项

描述

DEBUG

记录所有“调试”、“信息”、“错误”和“致命”错误消息。

ERROR

记录所有“错误”和“致命”错误消息。

这是默认设置。

FATAL

仅记录“致命”错误消息。

INFO

记录所有“信息”、“错误”和“致命”错误消息。

示例

log.main.level = ERROR

log.main.location

目的

档 log.main.type 设置选项指定将日志记录发送到文件时,指定 owcimomd 使用的日志文件的位置。

语法

log.main.location = path_filename

示例

log.main.location = /system/cimom/var/owcimomd.log

log.main.max_backup_index

目的

指定删除旧日志之前将保存的备份日志数量。

语法

log.main.backup_index = option

选项

描述

unsigned_integer_above_0

指定保存的备份日志数量。

默认设置是 1 个日志文件。

0

当达到最大文件大小时,将不会再创建备份日志并且日志会备截断。

示例

log.main.max_backup_index = 1

log.main.max_file_size

目的

指定 owcimomd 日志的最大大小(以 KB 为单位)。

语法

log.main.max_file_size = option

选项

描述

unsigned _integer_in_KB

将日志限制为特定大小(以 KB 为单位)。

0

使日志的大小不受限制。

这是默认设置。

示例

log.main.max_file_size = 0

log.main.type

目的

指定 owcimomd 使用的主日志类型。

语法

log.main.type = option

选项

描述

file

将所有消息发送到 log.main.location 配置设置中标识的文件中。

null

禁用日志记录。

syslog

将所有消息发送到 syslog 接口。

这是默认设置。

示例

log.main.type = syslog

配置“调试”日志记录

如果 owcimomd 以调试方式运行,则调试日志将为活动状态并带由以下设置:

  • log.debug.categories = *

  • log.debug.components = *

  • log.debug.format = [%t] %m

  • log.debug.level = *

  • log.debug.type = stderr

为调试日志设置颜色

如果希望调试日志以彩色显示,则使用以下 ASCII 转义码:

log.debug.format = \x1b[1;37;40m[\x1b[1;31;40m%-.6t\x1b[1;37;40m]\x1b[1;32;40m %m\x1b[0;37;40m

如果希望使用其他颜色,则对 log.debug.format 命令使用以下代码:

表 11.3. log.debug.format 命令的其他颜色代码

颜色

代码

红色

\x1b[1;31;40m

深红色

\x1b[0;31;40m

绿色

\x1b[1;32;40m

深绿色

\x1b[0;32;40m

黄色

\x1b[1;33;40m

深黄色

\x1b[0;33;40m

蓝色

\x1b[1;34;40m

深蓝色

\x1b[0;34;40m

紫色

\x1b[1;35;40m

深紫色

\x1b[0;35;40m

青色

\x1b[1;36;40m

深青色

\x1b[0;36;40m

白色

\x1b[1;37;40m

暗灰色

\x1b[0;37;40m

灰色

\x1b[0;37;40m

重置颜色

\x1b[0;37;40m


配置其他日志

如果希望创建其他日志,则在以下设置中列处日志名称:

owcimomd.additional_logs = logname

日志名称之间以空格隔开。

语法

owcimomd.additional_logs = logname

为每个日志应用以下设置:

  • log.log_name.categories

  • log.log_name.components

  • log.log_name.format

  • log.log_name.level

  • log.log_name.location

  • log.log_name.max_backup_index

  • log.log_name.max_file_size

示例

owcimomd.additional_logs = errorlog1 errorlog2 errorlog3