环境
centos7.9
zabbix 5.0 LTS
openldap
zabbix服务器上运行如下命令:
php -m|grep ldap #查看模块是否开启
zabbix web页面配置
LDAP host:访问ldap的地址。格式:ldap://ip地址
Port:默认389
Base DN: dc=tencent,dc=com,也就是域名(tencent.com)
Search attribute: uid,属性值,网上有填sAMAccountName。
Bind DN: cn=Admin, ou=People, dc=tencent, dc=com。 cn就是在DC中创建的LDAPuser用户, ou就是LDAPuser属于哪个ou,dc=tencent和dc=com不在解释。
Bind password:xxxx ,改密码为LDAPuser用户的密码
Login:Admin # 建议自建创建一个ldap测试用户,反正我是使用测试用过才通过验证的。
User password:在DC中创建Admin用户的密码,点击测试,如果配置正确,将会提示LDAP登录成功
ldap认证方式以及用户同步
配置完毕ldap后,发现不知道怎么登录。发现需要同步ldap用户到zabbix用户才能登录。
或者一个比较传统的办法就是在zabbix用户手动创建ldap uid 的用户名。因为我接入ldap的时候填写的是uid字段。
比如:
ldap某个用户uid为dev001,那么创建用户名字为dev001,密码随意填写,因为最后会使用ldap用户的密码,还有如何你需要管理员权限的话,还是用户那儿设置一下权限。
然后切换认证方式ldap。再启动一个隐身模式的浏览器,免得内置admin退出了就无法登录了。
zabbix认证方式修改
当出现网络故障或LDAP服务不可用时,zabbix系统便无法登录,这里可以通过修改zabbix数据库的方式更改认证方式。当你正在调试zabbix集成ldap的时候特别好用。
#查看认证方式
> select authentication_type from config;
+---------------------+
| authentication_type |
+---------------------+
| 0 |
+---------------------+
1 row in set (0.001 sec)
#修改认证方式
> update config set authentication_type=0; # 可修改值为 0, 1, 2
0 内置
1 LDAP
2 HTTP
ldap有问题了,上面的值设置为authentication_type=0,就可以使用原来的内置的admin进行登录了。