diff --git a/rootfs/etc/services.d/openvpn/run b/rootfs/etc/services.d/openvpn/run index 4668437..a4b0122 100644 --- a/rootfs/etc/services.d/openvpn/run +++ b/rootfs/etc/services.d/openvpn/run @@ -27,4 +27,5 @@ exec s6-setuidgid "$(id -u openvpn):$(id -g openvpn)" openvpn \ --pull-filter ignore "dhcp-option DNS" \ --dhcp-option DNS "${DNS}" \ --redirect-gateway def1 bypass-dhcp \ - --route "${LAN_FIRST_IP}" "${LAN_MASK}" net_gateway + --route "${LAN_FIRST_IP}" "${LAN_MASK}" net_gateway \ + --script-security 2 --up-delay --up /usr/sbin/tunnelUp.sh --route-pre-down /usr/sbin/tunnelDown.sh diff --git a/rootfs/etc/services.d/qbittorrent/run b/rootfs/etc/services.d/qbittorrent/run index 5ec7075..aa156b0 100644 --- a/rootfs/etc/services.d/qbittorrent/run +++ b/rootfs/etc/services.d/qbittorrent/run @@ -30,5 +30,17 @@ else echo "INFO: no port updater for provider ${OPENVPN_PROVIDER}" fi +if [[ -v PRESTART ]]; then + if [[ -x $PRESTART ]]; then + echo "INFO: Executing $PRESTART..." + $PRESTART + echo "INFO: $PRESTART returned $?" + else + echo "WARNING: Variable PRESTART defined, but no executable file found at $PRESTART..." + fi +else + echo "INFO: PRESTART not defined." +fi + umask "${UMASK_SET:-002}" exec s6-setuidgid "${PUID}:${PGID}" qbittorrent-nox diff --git a/rootfs/usr/sbin/tunnelDown.sh b/rootfs/usr/sbin/tunnelDown.sh new file mode 100755 index 0000000..04eec11 --- /dev/null +++ b/rootfs/usr/sbin/tunnelDown.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +if [[ -v TUNNELDOWN ]]; then + if [[ -x $TUNNELDOWN ]]; then + echo "INFO: Executing $TUNNELDOWN..." + $TUNNELDOWN + echo "INFO: $TUNNELDOWN returned $?" + else + echo "WARNING: Variable TUNNELDOWN defined, but no executable file found at $TUNNELDOWN..." + fi +else + echo "INFO: TUNNELDOWN not defined." +fi diff --git a/rootfs/usr/sbin/tunnelUp.sh b/rootfs/usr/sbin/tunnelUp.sh new file mode 100755 index 0000000..6c0aab4 --- /dev/null +++ b/rootfs/usr/sbin/tunnelUp.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +if [[ -v TUNNELUP ]]; then + if [[ -x $TUNNELUP ]]; then + echo "INFO: Executing $TUNNELUP..." + $TUNNELUP + echo "INFO: $TUNNELUP returned $?" + else + echo "WARNING: Variable TUNNELUP defined, but no executable file found at $TUNNELUP..." + fi +else + echo "INFO: TUNNELUP not defined." +fi