File: /volume1/@appstore/VPNCenter/hook/CertReload.sh
#!/bin/sh
PRIVATE_LOCATION="/var/packages/VPNCenter/target"
PKG_USERCONF_DIR="/usr/syno/etc/packages/VPNCenter"
SSL_CA="/usr/local/etc/certificate/VPNCenter/OpenVPN/syno-ca-cert.pem"
SSL_SERVER_CRT="/usr/local/etc/certificate/VPNCenter/OpenVPN/cert.pem"
SSL_SERVER_KEY="/usr/local/etc/certificate/VPNCenter/OpenVPN/privkey.pem"
SSL_SHORT_CHAIN_CA="/usr/local/etc/certificate/VPNCenter/OpenVPN/short-chain.pem"
SSL_ROOT_CA="/usr/local/etc/certificate/VPNCenter/OpenVPN/root.pem"
SSL_CHAIN_CA="/usr/local/etc/certificate/VPNCenter/OpenVPN/chain.pem"
CA_BUNDLE="${PKG_USERCONF_DIR}/openvpn/keys/ca_bundle.crt"
copy_cert()
{
if [ -f ${PKG_USERCONF_DIR}/no-intercrt ]; then
rm ${PKG_USERCONF_DIR}/no-intercrt
fi
rm ${CA_BUNDLE}
rm ${PKG_USERCONF_DIR}/openvpn/keys/ca.crt
if [ -e ${SSL_CA} ]; then
cp ${SSL_CA} ${PKG_USERCONF_DIR}/openvpn/keys/ca.crt
elif [ -e ${SSL_SHORT_CHAIN_CA} ]; then
cp ${SSL_SHORT_CHAIN_CA} ${PKG_USERCONF_DIR}/openvpn/keys/ca.crt
cat "${SSL_SHORT_CHAIN_CA}" "${SSL_ROOT_CA}" > "${CA_BUNDLE}"
elif [ -e ${SSL_CHAIN_CA} ]; then
cp ${SSL_CHAIN_CA} ${PKG_USERCONF_DIR}/openvpn/keys/ca.crt
cat "${SSL_CHAIN_CA}" > "${CA_BUNDLE}"
else
touch ${PKG_USERCONF_DIR}/no-intercrt
fi
cp ${SSL_SERVER_CRT} ${PKG_USERCONF_DIR}/openvpn/keys/server.crt
cp ${SSL_SERVER_KEY} ${PKG_USERCONF_DIR}/openvpn/keys/server.key
}
case "$1" in
OpenVPN)
copy_cert
${PRIVATE_LOCATION}/scripts/openvpn.sh restart
;;
copy_cert_only)
copy_cert
;;
*)
echo "Usage: $0 {OpenVPN}" >&2
exit 1
;;
esac