blob: 619c09373e9d807957239f16b974dbe9251e814a (
plain)
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
|
- name: Install strongSwan
apt: pkg=strongswan-ikev2
- name: Ensure we have our private key
file: path=/etc/ipsec.d/private/{{ inventory_hostname }}.key
owner=root group=root
mode=0600
notify:
- Missing IPSec certificate
- name: Ensure we have our public key
file: path=/etc/ipsec.d/certs/{{ inventory_hostname }}.pem
owner=root group=root
mode=0644
notify:
- Missing IPSec certificate
- name: Ensure we have the CA's public key
file: path=/etc/ipsec.d/cacerts/cacert.pem
owner=root group=root
mode=0644
notify:
- Missing IPSec certificate
- name: Configure IPSec's secrets
template: src=etc/ipsec.secrets.j2
dest=/etc/ipsec.secrets
owner=root group=root
mode=0600
register: r1
notify:
- Restart IPSec
- name: Configure IPSec
template: src=etc/ipsec.conf.j2
dest=/etc/ipsec.conf
owner=root group=root
mode=0644
register: r2
notify:
- Restart IPSec
- name: Start IPSec
service: name=ipsec state=started
when: not (r1.changed or r2.changed)
- name: Auto-create a dedicated interface for IPSec
copy: src=etc/network/if-up.d/ipsec
dest=/etc/network/if-up.d/ipsec
owner=root group=root
mode=0755
notify:
- Reload networking
# XXX: As of 1.3.1 ansible doesn't accept relative src.
# See https://github.com/ansible/ansible/issues/4459
- name: Auto-deactivate the dedicated interface for IPSec
file: #src=../if-up.d/ipsec
src=/etc/network/if-up.d/ipsec
dest=/etc/network/if-down.d/ipsec
owner=root group=root state=link
- meta: flush_handlers
|