220 lines
5.3 KiB
YAML
220 lines
5.3 KiB
YAML
---
|
|
|
|
- name: Installing nfs client packages
|
|
apt:
|
|
name: [ 'nfs-common' ]
|
|
state: latest
|
|
|
|
- name: Create directory for user homes
|
|
file: path=/var/lib/nethserver/home state=directory owner=root group=root mode=0755
|
|
|
|
- name: Add mount to fstab
|
|
mount:
|
|
path: /var/lib/nethserver/home
|
|
src: "{{ esmith.SystemName }}.{{ esmith.DomainName }}:/var/lib/nethserver/home"
|
|
fstype: nfs4
|
|
opts: rw,async,_netdev
|
|
passno: "1"
|
|
dump: "0"
|
|
state: mounted
|
|
|
|
########################## nslcd
|
|
- name: Set bind DN
|
|
debconf:
|
|
name: nslcd
|
|
question: nslcd/ldap-binddn
|
|
value: cn=ldapservice,dc=directory,dc=nh
|
|
vtype: string
|
|
|
|
- name: Set base DN
|
|
debconf:
|
|
name: nslcd
|
|
question: nslcd/ldap-base
|
|
value: dc=directory,dc=nh
|
|
vtype: string
|
|
|
|
- name: Set LDAP server
|
|
debconf:
|
|
name: nslcd
|
|
question: nslcd/ldap-uris
|
|
value: ldap://{{ esmith.SystemName }}.{{ esmith.DomainName }}:389/
|
|
vtype: string
|
|
|
|
- name: Set bind password
|
|
debconf:
|
|
name: nslcd
|
|
question: nslcd/ldap-bindpw
|
|
value: "{{ lookup('file', '/var/lib/nethserver/secrets/ldapservice') }}"
|
|
vtype: password
|
|
|
|
########################## ldap-auth
|
|
- name: Set bind DN
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/binddn
|
|
value: cn=ldapservice,dc=directory,dc=nh
|
|
vtype: string
|
|
|
|
- name: Set root bind DN
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/rootbinddn
|
|
value: cn=ldapservice,dc=directory,dc=nh
|
|
vtype: string
|
|
|
|
- name: Set base DN
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/ldapns/base-dn
|
|
value: dc=directory,dc=nh
|
|
vtype: string
|
|
|
|
- name: Set login required
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/dblogin
|
|
value: "true"
|
|
vtype: boolean
|
|
|
|
- name: Set root login required
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/dbrootlogin
|
|
value: "true"
|
|
vtype: boolean
|
|
|
|
- name: Set ldap override
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/override
|
|
value: "true"
|
|
vtype: boolean
|
|
|
|
- name: Set move-to-debconf
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/move-to-debconf
|
|
value: "true"
|
|
vtype: boolean
|
|
|
|
- name: Set pam password
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/pam_password
|
|
value: exop
|
|
vtype: select
|
|
|
|
- name: Set LDAP server
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/ldapns/ldap-server
|
|
value: ldap://{{ esmith.SystemName }}.{{ esmith.DomainName }}:389/
|
|
vtype: string
|
|
|
|
- name: Set LDAP server version
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/ldapns/ldap_version
|
|
value: "3"
|
|
vtype: select
|
|
|
|
- name: Set bind password
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/bindpw
|
|
value: "{{ lookup('file', '/var/lib/nethserver/secrets/ldapservice') }}"
|
|
vtype: password
|
|
|
|
- name: Set root bind password
|
|
debconf:
|
|
name: ldap-auth-config
|
|
question: ldap-auth-config/rootbindpw
|
|
value: "{{ lookup('file', '/var/lib/nethserver/secrets/ldapservice') }}"
|
|
vtype: password
|
|
|
|
########################## libnss-ldapd
|
|
- name: Configure libnss for ldap
|
|
debconf:
|
|
name: libnss-ldapd
|
|
question: libnss-ldapd/nsswitch
|
|
value: "passwd, group, shadow"
|
|
vtype: multiselect
|
|
- name: Configure libnss for not removing ldap configuration
|
|
debconf:
|
|
name: libnss-ldapd
|
|
question: libnss-ldapd/clean_nsswitch
|
|
value: "false"
|
|
vtype: boolean
|
|
|
|
########################## packages install
|
|
- name: Installing client packages
|
|
apt:
|
|
name: [ 'libnss-ldapd', 'ldap-auth-config' ]
|
|
state: latest
|
|
|
|
|
|
# nss_initgroups_ignoreusers avahi,avahi-autoipd,backup,bin,colord,daemon,dnsmasq,games,gnats,hplip,irc,kernoops,libuuid,lightdm,list,lp,mail,man,messagebus,news,proxy,pulse,root,rtkit,saned,speech-dispatcher,sshd,statd,sync,sys,syslog,usbmux,uucp,whoopsie,www-data
|
|
|
|
|
|
########################## nsswitch
|
|
- name: nsswitch settings for passwd
|
|
lineinfile:
|
|
path: /etc/nsswitch.conf
|
|
state: present
|
|
regexp: '^passwd\:'
|
|
line: 'passwd: files ldap'
|
|
|
|
- name: nsswitch settings for group
|
|
lineinfile:
|
|
path: /etc/nsswitch.conf
|
|
state: present
|
|
regexp: '^group\:'
|
|
line: 'group: files ldap'
|
|
|
|
- name: nsswitch settings for shadow
|
|
lineinfile:
|
|
path: /etc/nsswitch.conf
|
|
state: present
|
|
regexp: '^shadow\:'
|
|
line: 'shadow: files ldap'
|
|
|
|
########################## idmap.conf
|
|
- name: Tweak idmap.conf
|
|
ini_file:
|
|
path: /etc/idmapd.conf
|
|
section: Translation
|
|
option: Method
|
|
value: nsswitch
|
|
mode: 0644
|
|
|
|
########################## DM
|
|
- name: Check if lightdm is installed
|
|
shell: dpkg-query -W -f='${Status}' lightdm | grep 'install ok installed'
|
|
register: lightdm_installed
|
|
failed_when: no
|
|
changed_when: no
|
|
|
|
- name: Check if gdm3 is installed
|
|
shell: dpkg-query -W -f='${Status}' gdm3 | grep 'install ok installed'
|
|
register: gdm3_installed
|
|
failed_when: no
|
|
changed_when: no
|
|
|
|
- name: Adjusting lightdm settings
|
|
template:
|
|
src: 'lightdm.conf'
|
|
dest: '/usr/share/lightdm/lightdm.conf.d/50-libreschool.conf'
|
|
owner: 'root'
|
|
group: 'root'
|
|
mode: 0644
|
|
when: lightdm_installed.rc == 0
|
|
|
|
- name: Adjust gdm3 settings
|
|
ini_file:
|
|
path: /etc/gdm3/greeter.dconf-defaults
|
|
section: org/gnome/login-screen
|
|
option: disable-user-list
|
|
value: "true"
|
|
no_extra_spaces: yes
|
|
when: gdm3_installed.rc == 0
|