###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007 Michael Tremer & Christian Schmidt #
+# Copyright (C) 2007-2023 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 2.1.2
+VER = 2.5.9
THISAPP = openvpn-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 543a30dafcdefe1d67c0e47b80741755
+$(DL_FILE)_BLAKE2 = e5110ebb9149121c11de45f085f66d30a89fb674ad96c5792d83b16dc29c95215a91e682adb3c800b91ed4d88d6d24b5bcae0799cdb855a284832f0668ffcb82
install : $(TARGET)
download :$(patsubst %,$(DIR_DL)/%,$(objects))
-md5 : $(subst %,%_MD5,$(objects))
+b2 : $(subst %,%_BLAKE2,$(objects))
###############################################################################
-# Downloading, checking, md5sum
+# Downloading, checking, b2sum
###############################################################################
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
$(patsubst %,$(DIR_DL)/%,$(objects)) :
@$(LOAD)
-$(subst %,%_MD5,$(objects)) :
- @$(MD5)
+$(subst %,%_BLAKE2,$(objects)) :
+ @$(B2SUM)
###############################################################################
# Installation Details
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
- @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/var/ipfire/ovpn \
- --enable-pthread
+ @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+ cd $(DIR_APP) && ./configure \
+ --prefix=/usr \
+ --sysconfdir=/var/ipfire/ovpn \
+ --enable-iproute2 \
+ --enable-plugins \
+ --enable-plugin-auth-pam \
+ --enable-plugin-down-root
+
cd $(DIR_APP) && make $(MAKETUNING)
cd $(DIR_APP) && make install
cd $(DIR_APP) && cp -Rvf $(DIR_SRC)/config/ovpn /var/ipfire
- cd $(DIR_APP)/plugin/auth-pam && make
- cp -pvf $(DIR_APP)/plugin/auth-pam/openvpn-auth-pam.so /lib/
+ -mkdir -vp /usr/lib/openvpn/plugins
+ -mkdir -vp /var/log/openvpn
-mkdir -vp /var/ipfire/ovpn/ca
+ -mkdir -vp /var/ipfire/ovpn/ccd
-mkdir -vp /var/ipfire/ovpn/crls
+ -mkdir -vp /var/ipfire/ovpn/n2nconf
+ -mkdir -vp /var/ipfire/ovpn/scripts
touch /var/ipfire/ovpn/ovpn-leases.db
- chmod 700 /var/ipfire/ovpn/ovpn-leases.db
+ chmod 600 /var/ipfire/ovpn/ovpn-leases.db
+ chown -R root:root /var/ipfire/ovpn/scripts
chown -R nobody:nobody /var/ipfire/ovpn
- chown root.nobody /var/log/ovpnserver.log
- chmod 755 /var/ipfire/ovpn/verify
- chmod 660 /var/log/ovpnserver.log
chmod 700 /var/ipfire/ovpn/certs
+ mv -v /var/ipfire/ovpn/verify /usr/lib/openvpn/verify
+ chown root:root /usr/lib/openvpn/verify
+ chmod 755 /usr/lib/openvpn/verify
+ # Add crl updater
+ mv -v /var/ipfire/ovpn/openvpn-crl-updater /etc/fcron.daily
+ chown root:root /etc/fcron.daily/openvpn-crl-updater
+ chmod 750 /etc/fcron.daily/openvpn-crl-updater
+
+ # Install authenticator
+ install -v -m 755 $(DIR_SRC)/config/ovpn/openvpn-authenticator \
+ /usr/sbin/openvpn-authenticator
+
@rm -rf $(DIR_APP)
@$(POSTBUILD)