add role ldap/nss
This commit is contained in:
parent
998dc0b643
commit
9fc02e7bef
3 changed files with 77 additions and 0 deletions
11
roles/ldap/nss/handlers/main.yml
Normal file
11
roles/ldap/nss/handlers/main.yml
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
---
|
||||||
|
- name: restart nslcd
|
||||||
|
service:
|
||||||
|
name: nslcd
|
||||||
|
state: restarted
|
||||||
|
notify: reload nscd
|
||||||
|
|
||||||
|
- name: reload nscd
|
||||||
|
service:
|
||||||
|
name: nscd
|
||||||
|
state: reloaded
|
41
roles/ldap/nss/tasks/main.yml
Normal file
41
roles/ldap/nss/tasks/main.yml
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
---
|
||||||
|
- name: install packages
|
||||||
|
package:
|
||||||
|
name: "{{ item }}"
|
||||||
|
state: installed
|
||||||
|
with_items:
|
||||||
|
- nscd
|
||||||
|
- nss-pam-ldapd
|
||||||
|
|
||||||
|
- name: configure nsswitch to use ldap
|
||||||
|
lineinfile:
|
||||||
|
path: /etc/nsswitch.conf
|
||||||
|
regexp: "^{{ item }}:.*"
|
||||||
|
line: "{{ item }}: files ldap"
|
||||||
|
with_items:
|
||||||
|
- passwd
|
||||||
|
- shadow
|
||||||
|
- group
|
||||||
|
|
||||||
|
- name: allow nslcd user to read host key
|
||||||
|
user:
|
||||||
|
name: nslcd
|
||||||
|
groups: hostkey
|
||||||
|
|
||||||
|
- name: create nslcd config
|
||||||
|
template:
|
||||||
|
dest: /etc/nslcd.conf
|
||||||
|
src: nslcd.conf.j2
|
||||||
|
mode: 0600
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
notify: restart nslcd
|
||||||
|
|
||||||
|
- name: enable nslcd and nscd
|
||||||
|
service:
|
||||||
|
name: "{{ item }}"
|
||||||
|
enabled: true
|
||||||
|
state: started
|
||||||
|
with_items:
|
||||||
|
- nslcd
|
||||||
|
- nscd
|
25
roles/ldap/nss/templates/nslcd.conf.j2
Normal file
25
roles/ldap/nss/templates/nslcd.conf.j2
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
uid nslcd
|
||||||
|
gid ldap
|
||||||
|
|
||||||
|
uri {% for server in ldap_server %}ldaps://{{ server }} {% endfor %}
|
||||||
|
base {{ ldap_basedn }}
|
||||||
|
|
||||||
|
# time out searches after 30 seconds
|
||||||
|
timelimit 30
|
||||||
|
# close idle connections after 10 minutes
|
||||||
|
idle_timelimit 600
|
||||||
|
# do not search group memberships for local users
|
||||||
|
nss_initgroups_ignoreusers ALLLOCAL
|
||||||
|
|
||||||
|
pagesize 500
|
||||||
|
map group member uniqueMember
|
||||||
|
|
||||||
|
# use ssl and verify server cert
|
||||||
|
ssl on
|
||||||
|
tls_reqcert demand
|
||||||
|
tls_cacertfile {{ tls_bundle }}
|
||||||
|
|
||||||
|
# use local host cert/key for authentication
|
||||||
|
tls_key {{ tls_private }}/{{ inventory_hostname }}.key
|
||||||
|
tls_cert {{ tls_certs }}/{{ inventory_hostname }}.crt
|
||||||
|
sasl_mech EXTERNAL
|
Loading…
Add table
Add a link
Reference in a new issue