一、安装grafana
直接去网址下载适合自己版本的安装包
网址:https://grafana.com/grafana/download?platform=linux
然后使用命令:
dpkg -i grafana_6.0.2_amd64.deb 这样grafana就安装成功了。
相关配置文件:
二进制运行程序 /usr/sbin/grafana-server 启动脚本 /etc/init.d/grafana-server grafana环境变量的默认文件 /etc/default/grafana-server 配置文件 /etc/grafana/grafana.ini 配置文件 /usr/share/grafana/default.ini 日志文件 /var/log/grafana/grafana.log 默认的轻量级数据库 /var/lib/grafana/grafana.db grafana具体的页面显示代码 /usr/share/grafana 二、ldap安装
1.安装
# sudo apt-get install slapd ldap-utils 2.配置
#dpkg-reconfigure slapd 下面就是具体配置设置:
Omit OpenLDAP server configuration? ... No DNS domain name: ... sscc.com //根据自己需要输入,但必须和后面的相关地方保持一致 Name of your organization: ... Whatever & Co Admin Password: XXXXX Confirm Password: XXXXX OK BDB Do you want your database to be removed when slapd is purged? ... No Move old database? ... Yes Allow LDAPv2 Protocol? ... No 3.查询配置情况
ldapsearch -x -LLL -H ldap:/// -b dc=sscc,dc=com dn 输出结果: dn: dc=sscc,dc=com dn: cn=admin,dc=sscc,dc=com 这样ldap就安装成功了。
三、安装phpldapadmin
为了能更好的对ldap进行增加用户、删除用户、添加组等等,所以我们安装phpldapadmin。
1.安装
# apt-get install phpldapadmin 2.配置
其中,servers->Setvalue选项要注意dc选项:
$servers = new Datastore(); $servers->setValue('server','name','Local LDAP Server'); $servers->setValue('server','host','xx.xxx.xxx.xxx'); $servers->setValue('server','base',array('dc=sscc,dc=com')); //这个要改 $servers->setValue('login','auth_type','session'); $servers->setValue('login','bind_id','cn=admin,dc=sscc,dc=com');//这个要改 $servers->setValue('appearance','password_hash',''); $servers->setValue('login','attr','dn'); 然后就可以在浏览器上输入ip地址+/phpldapadmin登录ldap的管理页面,然后可以进行相应操作。
问题一:
phpldapadmin管理页面会显示这个错误:
Error trying to get a non-existant value (appearance,password_hash) 解决方案:
修改/usr/share/phpldapadmin/lib/TemplateRender.php中的一行,
将
$default = $this->getServer()->getValue('appearance','password_hash'); 修改为下面一行,即可
$default = $this->getServer()->getValue('appearance','password_hash_custom'); 四、grafana使用ldap认证登录
1.修改grafana配置文件中关于ldap认证登录相关部分
修改/usr/share/grafana/conf/defaults.ini中的内容
#################################### Auth LDAP ########################### [auth.ldap] enabled = true ##这里修改为true config_file = /etc/grafana/ldap.toml allow_sign_up = true # LDAP backround sync (Enterprise only) sync_cron = @hourly active_sync_enabled = false 修改/etc/grafana/ldap.toml中的内容
[[servers]] host = "xxx.xxx.xxx.xxx" 修改为ip port = 389 use_ssl = false start_tls = false ssl_skip_verify = false bind_dn = "cn=admin,dc=sscc,dc=com" #修改为安装ldap设置时的domain name bind_password = '123456' #修改ldap设置的密码 search_filter = "(cn=%s)" search_base_dns = ["dc=sscc,dc=com"] #下面三个是根据ldap有没有memberof属性来开启的,如果有就设置为如下,反之则注释掉。 group_search_filter = "(&(objectClass=posixGroup)(memberUid=%s))" group_search_base_dns = ["cn=users,dc=sscc,dc=com"] group_search_filter_user_attribute = "cn" [servers.attributes] name = "givenName" surname = "sn" username = "cn" member_of = "dn" #如果ldap有memberOf属性,则设置为memberOf,反之设置为dn email = "email" #设置具体的ldap组与grafana角色的映射 [[servers.group_mappings]] group_dn = "cn=users,dc=sscc,dc=com" org_role = "Editor" org_id = 2 [[servers.group_mappings]] group_dn = "*" org_role = "Viewer" org_id = 3 注:
这里有一个重点 posixGroup添加memberUid属性,并将用户添加到该用户组下:

这里关于phpldapadmin如何创建用户组以及用户,就不多赘述了,详情可以参考这篇文章:https://www.cnblogs.com/xiaomifeng0510/p/9564688.html
最后重启grafana,然后在登录页面就 可以使用ldap用户登陆了。
service grafana-server restart viewer权限的登录:
看了全文如果对你有帮助,帮忙点个赞,如果有什么问题,欢迎留言讨论。
来源:CSDN
作者:一只叫羊的羊
链接:https://blog.csdn.net/qq_34355232/article/details/103236572