aboutsummaryrefslogtreecommitdiffstats
path: root/roles/space_server/tasks/radius.yml
blob: 021a9bc3a99b1efea2c8f082fcec06154dc586db (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
---
- name: Install our freeradius-assha package
  dnf:
    name: '{{ item }}'
    state: present
  with_fileglob:
    - 'radius/freeradius-assha-*.fc{{ ansible_distribution_major_version }}.*.rpm'
  tags:
    - packages

- name: Make sure curl and diffutils are installed
  dnf:
    name: '{{ item }}'
    state: present
  with_items:
    - curl
    - diffutils
  tags:
    - packages

- name: Disable default site
  file:
    path: '/etc/raddb/sites-enabled/{{ item }}'
    state: absent
  with_items:
    - default
    - inner-tunnel
  notify:
    - restart radiusd
- name: Configure radiusd
  copy:
    dest: '/etc/raddb/{{ item }}'
    src: 'radius/{{ item }}'
    owner: root
    group: radiusd
    mode: 0640
  with_items:
    - radiusd.conf
    - mods-available/eap
    - sites-available/labitat
    - sites-available/labitat-inner
  notify:
    - restart radiusd
- name: Configure radius clients
  template:
    dest: '/etc/raddb/clients.conf'
    src: radius/clients.conf.j2
    owner: root
    group: radiusd
    mode: 0640
  notify:
    - restart radiusd
- name: Enable labitat site
  file:
    path: '/etc/raddb/sites-enabled/{{ item }}'
    src: '../sites-available/{{ item }}'
    state: link
    owner: root
    group: radiusd
    force: yes
  with_items:
    - labitat
    - labitat-inner
  notify:
    - restart radiusd

- name: Create getusers script
  template:
    dest: '/etc/raddb/getusers.sh'
    src: radius/getusers.sh.j2
    owner: root
    group: radiusd
    mode: 0750
- name: Create getusers service and timer
  copy:
    dest: '/etc/systemd/system/{{ item }}'
    src: 'radius/{{ item }}'
    owner: root
    group: root
    mode: 0644
  with_items:
    - getusers.service
    - getusers.timer
  notify:
    - restart getusers

- name: Enable getusers timer
  systemd:
    name: getusers.timer
    enabled: yes
    masked: no
    state: started
  when: not chroot
- name: '- when in chroot'
  command: systemctl enable getusers.timer
  args:
    creates: '/etc/systemd/system/timers.target.wants/getusers.timer'
  when: chroot

- name: Create service drop-in directory
  file:
    dest: '/etc/systemd/system/radiusd.service.d'
    state: directory
    owner: root
    group: root
    mode: 0755
- name: Start radiusd after networks are configured
  copy:
    dest: '/etc/systemd/system/radiusd.service.d/wait-online.conf'
    src: wait-online.conf
    owner: root
    group: root
    mode: 0644

- name: Enable radiusd service
  systemd:
    name: radiusd.service
    enabled: yes
    masked: no
    state: started
  when: not chroot
- name: '- when in chroot'
  command: systemctl enable radiusd.service
  args:
    creates: '/etc/systemd/system/multi-user.target.wants/radiusd.service'
  when: chroot

# vim: set ts=2 sw=2 et: