summaryrefslogtreecommitdiff
path: root/data/live-build-config/hooks/live/30-strongswan-configs.chroot
blob: a0efc126cd1e7474fc345bef9171dd8da6ee273f (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
#!/usr/bin/env python3

# The Cisco Unity plugin, that implements a proprietary extension
# for IPsec split tunneling, interfers with DMVPN
#
# Since we do not do remote access IPsec, the simplest solution
# is to disable it entirely from the start.

import re

# Disable the 'cisco_unity' option in charon.conf
with open('/etc/strongswan.d/charon.conf', 'r') as f:
    charon_conf = f.read()
    charon_conf = re.sub(r'# (cisco_unity = no)', r"\1", charon_conf)

with open('/etc/strongswan.d/charon.conf', 'w') as f:
    f.write(charon_conf)



# Prevent the 'cisco_unity' plugin from loading
with open('/etc/strongswan.d/charon/unity.conf', 'r') as f:
    unity_conf = f.read()
    unity_conf = re.sub(r'load = yes', r'load = no', unity_conf)

with open('/etc/strongswan.d/charon/unity.conf', 'w') as f:
    f.write(unity_conf)



# Prevent the 'farp' plugin from loading
with open('/etc/strongswan.d/charon/farp.conf', 'r') as f:
    farp_conf = f.read()

    farp_conf = re.sub(r'load = yes', r'load = no', farp_conf)

with open('/etc/strongswan.d/charon/farp.conf', 'w') as f:
    f.write(farp_conf)


# Add ike-name to logging
charon_logging = """
charon {
    syslog {
        # prefix for each log message
        identifier = charon
        # use default settings to log to the LOG_DAEMON facility
        daemon {
            default = 1
            ike_name = yes
        }
    }
}
"""

with open('/etc/strongswan.d/charon-logging.conf', 'w') as f:
    f.write(charon_logging)