ZABBIX 对接 LDAP实现用户登陆统一认证

2020-02-19 15:12:52 浏览数 (1)

ZABBIX 认证方式有三种,分别是Internal、LDAP和HTTP。

注意:实现LDAP用户账户统一认证需要AD和ZABBIX共有用户帐号并且保证LDAP设置中 Test authentication 选项中用户和密码和AD中的相同。

Windows AD域

创建OU zabbix

在OU中创建账号

设置账号密码

OU中用户账户

ZABBIX Server

查看php 是否安装ldap 模块

LDAP配置

代码语言:javascript复制
LDAP host:访问DC的地址。格式:ldap://ip地址Port:默认389Base DN: DC=ytzjsj,DC=com,也就是域名(ytzjsj.com)Search attribute: sAMAccountName。Bind DN:CN=Admin, OU=zabbix, DC=ytzjsj, DC=com。CN就是在DC中创建的LDAPuser用户, OU就是LDAPuser属于哪个ou,DC=ytzjsj和DC=com同上。Bind password:xxxx ,改密码为LDAPuser用户的密码Login:AdminUser password:在DC中创建Admin用户和密码

开启LDAP认证

创建新用户

AD域控上需要创建ytzjsj的账户和密码

注意:在添加新用户时,如果 ZABBIX 已经开启ldap 认证且AD上已经创建新用户的账户和密码,这时在ZABBIX上创建用户可以不填写用户的密码可直接使用AD上的密码实现认证!

新用户登陆

LDAP挂掉后该怎么办

将认证类型改为Internal,然后使用Admin登陆,如果忘记密码,也可以重置Admin密码为admin。

代码语言:javascript复制
use zabbix;  #进入zabbix库show tables; #查看zabbix库中数据表desc config; #查看config表结构

用户和认证的信息涉及到四张表,分别为config、users、users_groups、usrgrp。

其中,认证类型由 authentication_type,字段决定,值可以为0,1和2。

0 代表Internal,1代表LDAP,2代表HTTP。

操作步骤

代码语言:javascript复制
select userid,alias,passwd from zabbix.users;update zabbix.config set authentication_type=0;update zabbix.users set passwd=md5("admin") where userid='1';flush privileges;

用户数据库参数介绍

查询Admin用户的ID

select * from users;

代码语言:javascript复制
(zabbix@localhost)[(none)]> select userid,alias,name,passwd from zabbix.users; -------- ------- -------- ---------------------------------- | userid | alias | name   | passwd                           | -------- ------- -------- ---------------------------------- |1 | Admin | Zabbix | f8c29048c7741c7fcfa77fb0cd30a2d5 || 2 | guest |        | d41d8cd98f00b204e9800998ecf8427e ||3 | zjsj  |        | afce02a060d53fa624ae21636316ca99 | -------- ------- -------- ---------------------------------- 3 rows in set (0.000 sec)

查询权限组ID

select * from usrgrp;

代码语言:javascript复制
(zabbix@localhost)[zabbix]> select * from usrgrp; ---------- --------------------------- ------------ -------------- ------------ | usrgrpid | name                      | gui_access | users_status | debug_mode | ---------- --------------------------- ------------ -------------- ------------ |        7 | Zabbix administrators     |          0 |            0 |          0 ||        8 | Guests                    |          1 |            0 |          0 ||        9 | Disabled                  |          0 |            1 |          0 ||       11 | Enabled debug mode        |          0 |            0 |          0 ||       12 | No access to the frontend |          3 |            0 |          0 ||       13 | zjsj                      |          0 |            0 |          0 | ---------- --------------------------- ------------ -------------- ------------ 6 rows in set (0.001 sec)
代码语言:javascript复制
select * from users_groups;(zabbix@localhost)[zabbix]> select * from users_groups ; ---- ---------- -------- | id | usrgrpid | userid | ---- ---------- -------- |  4 |        7 |      1 ||  2 |        8 |      2 ||  5 |       13 |      3 | ---- ---------- -------- 3 rows in set (0.000 sec)

查询用户和权限组对应关系

select * from usrgrp;

代码语言:javascript复制
(zabbix@localhost)[zabbix]>  select * from usrgrp; ---------- --------------------------- ------------ -------------- ------------ | usrgrpid | name                      | gui_access | users_status | debug_mode | ---------- --------------------------- ------------ -------------- ------------ |        7 | Zabbix administrators     |          0 |            0 |          0 ||        8 | Guests                    |          1 |            0 |          0 ||        9 | Disabled                  |          0 |            1 |          0 ||       11 | Enabled debug mode        |          0 |            0 |          0 ||       12 | No access to the frontend |          3 |            0 |          0 ||       13 | zjsj                      |          0 |            0 |          0 | ---------- --------------------------- ------------ -------------- ------------ 6 rows in set (0.000 sec)

修改用户所在权限组

代码语言:javascript复制
update users_groups set usrgrpid='1' where userid=3;flush privileges;

0 人点赞