65 lines
1.6 KiB
YAML
65 lines
1.6 KiB
YAML
## Install and configure nfs-server
|
|
---
|
|
- name: check if there are installing
|
|
stat: path=/etc/exports
|
|
register: exports
|
|
|
|
- name: install nfs-kernel-server
|
|
apt:
|
|
name:
|
|
- nfs-kernel-server
|
|
state: latest
|
|
|
|
- name: make sure the export exists
|
|
file: path={{ export_root }}/home/ state=directory recurse=yes
|
|
|
|
- name: make sure the export exists
|
|
file: path={{ lan_homes }} state=directory recurse=yes
|
|
|
|
- name: bind mount exported dir
|
|
mount:
|
|
path: "{{ export_root }}/home/"
|
|
src: "{{ lan_homes }}"
|
|
fstype: none
|
|
state: mounted
|
|
opts: bind
|
|
|
|
- name: configure exports
|
|
blockinfile:
|
|
dest: /etc/exports
|
|
insertbefore: EOF
|
|
block: |
|
|
{{ export_root }} *(sec=krb5p:krb5i:krb5:sys,rw,fsid=0,crossmnt,no_subtree_check)
|
|
{{ export_root }}/home/ *(sec=krb5p:krb5i,rw,no_subtree_check)
|
|
notify: "restart nfs-kernel-server"
|
|
|
|
|
|
|
|
- name: check if there is a local kadmin
|
|
stat: path=/usr/sbin/kadmin.local
|
|
register: kadmin
|
|
|
|
- name: create machine principal
|
|
command: kadmin.local -q "addprinc -randkey nfs/{{ ansible_hostname }}.{{ ldap_domain }}"
|
|
when: kadmin.stat.exists and not exports.stat.exists
|
|
|
|
- name: add principal to the keytab
|
|
command: kadmin.local -q "ktadd nfs/{{ ansible_hostname }}.{{ ldap_domain }}"
|
|
notify: "restart rpc-svcgssd"
|
|
when: kadmin.stat.exists and not exports.stat.exists
|
|
|
|
- name: install sssd-krb5
|
|
apt:
|
|
name:
|
|
- sssd-krb5
|
|
- sssd-ldap
|
|
state: latest
|
|
when: kadmin.stat.exists
|
|
|
|
- name: provide identities from directory
|
|
template:
|
|
src: sssd.conf.j2
|
|
dest: /etc/sssd/sssd.conf
|
|
mode: 0600
|
|
notify: restart sssd
|
|
when: kadmin.stat.exists
|