]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/commitdiff
Core Update 172: Ship and apply OpenVPN Diffie-Hellman changes
authorPeter Müller <peter.mueller@ipfire.org>
Fri, 11 Nov 2022 12:15:37 +0000 (12:15 +0000)
committerPeter Müller <peter.mueller@ipfire.org>
Fri, 18 Nov 2022 14:39:48 +0000 (14:39 +0000)
Inspired by https://git.ipfire.org/?p=people/ummeegge/ipfire-2.x.git;a=commit;h=2ccc799f8bd6a12c3edab5f1a89fab4d2cd05ea8.

Cc: Erik Kapfer <erik.kapfer@ipfire.org>
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
config/rootfiles/core/172/filelists/files
config/rootfiles/core/172/update.sh

index 3d60c06033d686fb007cdad5825ec604c9bfcc34..d3f270c79e8778ee25f32e5119a897c251d8134e 100644 (file)
@@ -1,3 +1,4 @@
+etc/ssl/ffdhe4096.pem
 usr/lib/firewall/rules.pl
 usr/local/bin/addonctrl
 usr/local/bin/openvpnctrl
index 2cdd78bc489d4945aa11bf11a1eef29b5112a656..d1137b81ccca5e72d9583e8407a5c5bb95a874cf 100644 (file)
@@ -33,6 +33,8 @@ done
 
 # Stop services
 /etc/rc.d/init.d/ipsec stop
+/usr/local/bin/openvpnctrl -k
+/usr/local/bin/openvpnctrl -kn2n
 /etc/rc.d/init.d/sshd stop
 /etc/rc.d/init.d/unbound stop
 
@@ -70,7 +72,8 @@ rm -rvf \
        /usr/lib/python3.10/site-packages/setuptools/_vendor/pyparsing.py \
        /usr/lib/python3.10/site-packages/setuptools/config.py \
        /usr/lib/python3.10/site-packages/setuptools_rust/utils.py \
-       /usr/libexec/ipsec/scepclient
+       /usr/libexec/ipsec/scepclient \
+       /var/ipfire/ca/dh1024.pem
 
 # Remove powertop add-on, if installed
 if [ -e "/opt/pakfire/db/installed/meta-powertop" ]; then
@@ -101,11 +104,24 @@ ldconfig
 # Correct permissions of some library files
 chown -Rv root:root /var/ipfire/connscheduler/lib.pl /var/ipfire/updatexlrator/updxlrator-lib.pl /var/ipfire/menu.d/*
 
+# Replace existing OpenVPN Diffie-Hellman parameter by ffdhe4096, as specified in RFC 7919
+if [ -f /var/ipfire/ovpn/server.conf ]; then
+       sed -i 's|/var/ipfire/ovpn/ca/dh1024.pem|/etc/ssl/ffdhe4096.pem|' /var/ipfire/ovpn/server.conf
+fi
+
+if [ -f "/var/ipfire/ovpn/n2nconf/*/*.conf" ]; then
+       sed -i 's|/var/ipfire/ovpn/ca/dh1024.pem|/etc/ssl/ffdhe4096.pem|' /var/ipfire/ovpn/n2nconf/*/*.conf
+fi
+
 # Start services
 /etc/init.d/unbound start
 if grep -q "ENABLE_SSH=on" /var/ipfire/remote/settings; then
        /etc/init.d/sshd start
 fi
+if grep -q "ENABLED=on" /var/ipfire/ovpn/settings; then
+       /usr/local/bin/openvpnctrl -s
+       /usr/local/bin/openvpnctrl -sn2n
+fi
 if grep -q "ENABLED=on" /var/ipfire/vpn/settings; then
        /etc/init.d/ipsec start
 fi