# A comma-delimited list of usernames that have read-only rights in
# the CGIs. This will block any service or host commands normally shown
# on the extinfo CGI pages. It will also block comments from being shown
# to read-only users.
authorized_for_read_only=viewer
在 /usr/local/nagios/etc/cgi.cfg (或系统上的任何位置)定义只读用户:
当然,必须首先将查看器定义为具有适当 htpasswd 身份验证的联系人。在服务/主机详细信息页面中,通常有命令的右侧会显示:
您的帐户没有执行命令的权限。
如果我正确理解您的问题,您希望将用户添加到只能查看某些服务器并且无权执行任何管理任务(开始/停止监视或警报)的 nagios。
为此,您需要将用户添加到 nagios 的 .htpasswd 文件,然后在 nagios 中创建一个联系人,其联系人名称与 .htpasswd 中设置的用户名匹配,然后仅将该联系人添加到您希望他们看到的主机中。请记住,当您将内容添加到模板中定义的主机配置时,它会覆盖模板而不是添加到模板中,因此您还需要重新添加主机在模板中已有的任何联系人。
为了允许用户仅查看访问Nagios webview 中的某些主机,您必须实施以下更改:
注意:跳转到3.如果您已经启用了密码保护身份验证:
编辑
cgi.cfg
位于您的 nagios 安装(例如/usr/local/nagios/etc
)以启用密码保护登录:在
nagios.conf
Apache 安装目录中的文件中,验证是否包含以下行以指向该htpasswd.users
文件:使用命令和 Apache HTTPD 密码管理器将用户添加到
htpasswd.users
文件中。htpasswd
位置可能因您的系统而异;它的一些常见位置是/usr/bin
和/usr/local/apache/bin
:编辑
cgi.cfg
位于您的 nagios 安装中;取消注释authorized_for_read_only
并添加您要授予访问权限的用户名:objects/contacts.cfg
从您的 nagios 安装中为用户创建一个条目:在同一
objects/contacts.cfg
定义中还定义了一个组,该组将包含用户和其他需要对相同主机进行相同访问的未来用户 - 当用户包含在组中时更易于管理:获取之前定义的联系人组
view-only-host01
,并在主机的 .cfg 中(例如objects/host01.cfg
)将其添加到您要授予仅查看访问权限的每个服务中:重启nagios
在您的 cgi.cfg 文件中,有以下几行:
authorized_for_all_services=*
authorized_for_all_hosts=*
通常这些配置如上,因此所有用户至少可以查看您的所有主机和服务。因此,如果您将新用户添加到您的 htpasswd 文件中,他们应该默认获得所需的行为。