ansible tower 和openldap 集成

2019-07-08  本文已影响0人  bjmingyang

修改log 模式为debug

vi /etc/tower/settings.py 
LOGGING['handlers']['tower_warnings']['level'] = 'DEBUG'
#原来的是这样的注释掉
#LOGGING['handlers']['tower_warnings'] = {'class': 'logging.NullHandler'}
sh  /usr/bin/ansible-tower-service restart
#重启服务,我也不知道为什么安装的时候没有给执行权限,可以自己给个执行权限,不用手动加路径了
tail -f /var/log/tower/web.log
#可以看log了

然后装个客户端,测试一下openldap 好使

yum install openldap-clients
ldapsearch -x  -H ldap://ldap01s.example.com:389 -D "cn=admin,dc=example,dc=com" -b "dc=example,dc=com" -w 密码
#-H 主机 -D 管理员账号 -W 密码 -b 搜索域

执行有如下结果

# xxx.com
dn: dc=xxx,dc=com
objectClass: dcObject
objectClass: organization
o: Daodao Inc.
dc: example

# Manager, daodao.com
dn: cn=admin,dc=xxx,dc=com
objectClass: organizationalRole
cn: admin

# people, xxx.com
dn: ou=people,dc=xxx,dc=com
objectClass: organizationalUnit
ou: people

# lli, people, xxx.com
dn: uid=lli,ou=people,dc=xxx,dc=com
cn:: 6buO6JW+
uid: lli
telephoneNumber: 15811045972
ou: People
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: shadowAccount
objectClass: posixAccount
objectClass: entrustIGUser
departmentNumber: 8
sn: Li

说明连接性没问题,然后在tower 认证界面里面选择 ldap

最下面
分别

LDAP USER SEARCH 
---
[
 "OU=people,DC=example,DC=com",
 "SCOPE_SUBTREE",
 "(uid=%(user)s)"
]
--


LDAP GROUP SEARCH
-----
[
 "dc=example,dc=com",
 "SCOPE_SUBTREE",
 "(objectClass=posixgroup)"
]
---


LDAP USER ATTRIBUTE MAP
---
{
 "first_name": "givenName",
 "last_name": "sn",
 "email": "mail"
}
---

LDAP USER DN TEMPLATE 这个可以按空来,除了用户密码,其他都可以默认值
有时候会出现无法保存,400或者401,501的错误,那个是因为你选择的类型,和你ldap过滤的字段不匹配导致的。修改就好了
然后可以看看log,还有的情况就是ldap ssl 的不被信任,请至少升级到tls,然后选择不认证自签证书,或者就是选不加密的ldap

用户可以登陆的时候,然后在tower里面给他赋权就行了,当然也可以做ldap的group映射,看你的用户数量了

上一篇下一篇

猜你喜欢

热点阅读