Further split roles. Mount user home on the clients (sshfs).
The following roles are available: fvs-sssd Configures LDAP as ID and AUTH provider using sssd. fvs-mount Provides all private user directories on login with pam_mount. Machines provided so far are: The server providing the home directory: fvs-home.yml A standard client: fvs-client.yml
This commit is contained in:
parent
77c8c26e38
commit
7238875d0c
10 changed files with 91 additions and 88 deletions
|
@ -33,8 +33,9 @@
|
||||||
|
|
||||||
roles:
|
roles:
|
||||||
- up2date-debian
|
- up2date-debian
|
||||||
|
- fvs-sssd
|
||||||
|
- fvs-mount
|
||||||
|
- fvs-client
|
||||||
## Choose either gnome or KDE:
|
## Choose either gnome or KDE:
|
||||||
- gnome
|
- gnome
|
||||||
#- kde
|
#- kde
|
||||||
- fvs-mkhome
|
|
||||||
- fvs-client
|
|
||||||
|
|
20
fvs-home.yml
Normal file
20
fvs-home.yml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
- name: apply configuration to the home server
|
||||||
|
hosts: all
|
||||||
|
remote_user: ansible
|
||||||
|
become: yes
|
||||||
|
vars:
|
||||||
|
extra_pkgs:
|
||||||
|
- vim
|
||||||
|
extra_pkgs_bpo: [ ] # [ libreoffice ]
|
||||||
|
|
||||||
|
roles:
|
||||||
|
- up2date-debian
|
||||||
|
- fvs-sssd
|
||||||
|
|
||||||
|
tasks:
|
||||||
|
- name: enable pam_mkhomedir.so
|
||||||
|
lineinfile:
|
||||||
|
dest: /etc/pam.d/common-session
|
||||||
|
line: "session optional pam_mkhomedir.so umask=0027"
|
||||||
|
insertbefore: "session optional pam_mount.so"
|
|
@ -4,11 +4,6 @@
|
||||||
dest: /etc/firefox-esr/firefox-esr.js
|
dest: /etc/firefox-esr/firefox-esr.js
|
||||||
line: pref("browser.startup.homepage", "https://www.startpage.com");
|
line: pref("browser.startup.homepage", "https://www.startpage.com");
|
||||||
|
|
||||||
#- name: enable pam_umask
|
|
||||||
# lineinfile:
|
|
||||||
# dest: /etc/pam.d/common-session
|
|
||||||
# line: "session optional pam_umask.so usergroups"
|
|
||||||
|
|
||||||
- name: set capabilities (wireshark)
|
- name: set capabilities (wireshark)
|
||||||
capabilities:
|
capabilities:
|
||||||
path: /usr/bin/dumpcap
|
path: /usr/bin/dumpcap
|
||||||
|
|
|
@ -1,79 +0,0 @@
|
||||||
---
|
|
||||||
- name: install needed packages
|
|
||||||
apt:
|
|
||||||
name:
|
|
||||||
- sssd-ldap
|
|
||||||
- libpam-mount
|
|
||||||
- cifs-utils
|
|
||||||
state: latest
|
|
||||||
|
|
||||||
- name: add URI to ldap.conf
|
|
||||||
lineinfile:
|
|
||||||
dest: /etc/ldap/ldap.conf
|
|
||||||
line: "URI ldaps://{{ ldap_server }}/"
|
|
||||||
insertafter: "#URI.*"
|
|
||||||
|
|
||||||
- name: add BASE to ldap.conf
|
|
||||||
lineinfile:
|
|
||||||
dest: /etc/ldap/ldap.conf
|
|
||||||
line: "BASE {{ basedn }}"
|
|
||||||
insertafter: "#BASE.*"
|
|
||||||
|
|
||||||
- name: do not verify cert
|
|
||||||
lineinfile:
|
|
||||||
dest: /etc/ldap/ldap.conf
|
|
||||||
line: "LDAPTLS_REQCERT never"
|
|
||||||
|
|
||||||
#- name: enable pam_umask
|
|
||||||
# lineinfile:
|
|
||||||
# dest: /etc/pam.d/common-session
|
|
||||||
# line: "session optional pam_umask.so usergroups"
|
|
||||||
|
|
||||||
- name: enable pam_mkhomedir.so
|
|
||||||
lineinfile:
|
|
||||||
dest: /etc/pam.d/common-session
|
|
||||||
line: "session optional pam_mkhomedir.so umask=0027"
|
|
||||||
insertbefore: "session optional pam_mount.so"
|
|
||||||
|
|
||||||
- name: configure pam_mount
|
|
||||||
blockinfile:
|
|
||||||
dest: /etc/security/pam_mount.conf.xml
|
|
||||||
block: |
|
|
||||||
<volume
|
|
||||||
fstype="cifs"
|
|
||||||
server="{{ smb_server }}"
|
|
||||||
path="{{ smb_home }}"
|
|
||||||
mountpoint="/media/%(USER)/winhome"
|
|
||||||
options="dir_mode=0750,file_mode=0640"
|
|
||||||
><not><user>ansible</user></not></volume>
|
|
||||||
<volume
|
|
||||||
fstype="cifs"
|
|
||||||
server="{{ smb_server }}"
|
|
||||||
path="{{ smb_share }}"
|
|
||||||
mountpoint="/media/%(USER)/winshare"
|
|
||||||
options="dir_mode=0750,file_mode=0640"
|
|
||||||
><not><user>ansible</user></not></volume>
|
|
||||||
<!--volume
|
|
||||||
fstype="fuse"
|
|
||||||
path="sshfs#%(USER)@homes:"
|
|
||||||
mountpoint="/home/%(USER)"
|
|
||||||
options="StrictHostKeyChecking=no,allow_root"
|
|
||||||
><not><user>ansible</user></not></volume>
|
|
||||||
<volume
|
|
||||||
path="/home/%(USER)"
|
|
||||||
mountpoint="~"
|
|
||||||
options="bind"
|
|
||||||
/-->
|
|
||||||
insertafter: "<!-- Volume definitions -->"
|
|
||||||
|
|
||||||
- name: provide identities from directory
|
|
||||||
template:
|
|
||||||
src: sssd.conf.j2
|
|
||||||
dest: /etc/sssd/sssd.conf
|
|
||||||
mode: 0600
|
|
||||||
notify: restart sssd
|
|
||||||
|
|
||||||
## FIXME: preseeding grub nvram does not work
|
|
||||||
- name: reset boot order
|
|
||||||
command: efibootmgr --delete-bootorder
|
|
||||||
when: run_in_installer|default(false)|bool
|
|
|
@ -1,5 +1,4 @@
|
||||||
basedn: "ou=Benutzer,ou=fvs,ou=SCHULEN,o=ml3"
|
|
||||||
ldap_server: "ldap.steinbeisschule-reutlingen.de"
|
|
||||||
smb_server: "smb.steinbeisschule-reutlingen.de"
|
smb_server: "smb.steinbeisschule-reutlingen.de"
|
||||||
|
home_server: "home.steinbeisschule-reutlingen.de"
|
||||||
smb_home: "DOCS/fvs/home/"
|
smb_home: "DOCS/fvs/home/"
|
||||||
smb_share: "DOCS/fvs/tausch/"
|
smb_share: "DOCS/fvs/tausch/"
|
35
roles/fvs-mount/tasks/main.yml
Normal file
35
roles/fvs-mount/tasks/main.yml
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
---
|
||||||
|
- name: install needed packages
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- libpam-mount
|
||||||
|
- cifs-utils
|
||||||
|
- sshfs
|
||||||
|
state: latest
|
||||||
|
|
||||||
|
- name: configure pam_mount
|
||||||
|
blockinfile:
|
||||||
|
dest: /etc/security/pam_mount.conf.xml
|
||||||
|
block: |
|
||||||
|
<volume
|
||||||
|
fstype="cifs"
|
||||||
|
server="{{ smb_server }}"
|
||||||
|
path="{{ smb_home }}"
|
||||||
|
mountpoint="/media/%(USER)/winhome"
|
||||||
|
options="dir_mode=0750,file_mode=0640"
|
||||||
|
><not><or><user>ansible</user><user>Debian-gdm</user></or></not></volume>
|
||||||
|
<volume
|
||||||
|
fstype="cifs"
|
||||||
|
server="{{ smb_server }}"
|
||||||
|
path="{{ smb_share }}"
|
||||||
|
mountpoint="/media/%(USER)/winshare"
|
||||||
|
options="dir_mode=0750,file_mode=0640"
|
||||||
|
><not><or><user>ansible</user><user>Debian-gdm</user></or></not></volume>
|
||||||
|
<volume
|
||||||
|
fstype="fuse"
|
||||||
|
path="sshfs#%(USER)@{{ home_server }}:"
|
||||||
|
mountpoint="/home/%(USER)"
|
||||||
|
options="allow_other,default_permissions,reconnect,password_stdin"
|
||||||
|
ssh="0" noroot="0"
|
||||||
|
><not><or><user>ansible</user><user>Debian-gdm</user></or></not></volume>
|
||||||
|
insertafter: "<!-- Volume definitions -->"
|
2
roles/fvs-sssd/defaults/main.yml
Normal file
2
roles/fvs-sssd/defaults/main.yml
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
basedn: "ou=Benutzer,ou=fvs,ou=SCHULEN,o=ml3"
|
||||||
|
ldap_server: "ldap.steinbeisschule-reutlingen.de"
|
30
roles/fvs-sssd/tasks/main.yml
Normal file
30
roles/fvs-sssd/tasks/main.yml
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
---
|
||||||
|
- name: install needed packages
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- sssd-ldap
|
||||||
|
state: latest
|
||||||
|
|
||||||
|
- name: add URI to ldap.conf
|
||||||
|
lineinfile:
|
||||||
|
dest: /etc/ldap/ldap.conf
|
||||||
|
line: "URI ldaps://{{ ldap_server }}/"
|
||||||
|
insertafter: "#URI.*"
|
||||||
|
|
||||||
|
- name: add BASE to ldap.conf
|
||||||
|
lineinfile:
|
||||||
|
dest: /etc/ldap/ldap.conf
|
||||||
|
line: "BASE {{ basedn }}"
|
||||||
|
insertafter: "#BASE.*"
|
||||||
|
|
||||||
|
- name: do not verify cert
|
||||||
|
lineinfile:
|
||||||
|
dest: /etc/ldap/ldap.conf
|
||||||
|
line: "LDAPTLS_REQCERT never"
|
||||||
|
|
||||||
|
- name: provide identities from directory
|
||||||
|
template:
|
||||||
|
src: sssd.conf.j2
|
||||||
|
dest: /etc/sssd/sssd.conf
|
||||||
|
mode: 0600
|
||||||
|
notify: restart sssd
|
Loading…
Add table
Reference in a new issue