#!/usr/bin/webif-page "-U /tmp -u 4096" >" ' onload="modechange()" ' "$SCRIPT_NAME" if ! empty "$FORM_install_package"; then echo "@TR<>
"
        install_package "openvpn"
        echo "
" fi install_package_button="" ! is_package_installed "openvpn" && install_package_button="string|
@TR<>
submit|install_package| @TR<> |" if empty "$FORM_submit"; then [ -f /etc/openvpn/certificate.p12 ] || NOCERT=1 [ -f /etc/openvpn/shared.key ] || NOPSK=1 [ -f /etc/openvpn/ca.crt ] || NOROOTCACERT=1 [ -f /etc/openvpn/client.crt ] || NOCLIENTCERT=1 [ -f /etc/openvpn/client.key ] || NOCLIENTKEY=1 FORM_openvpn_cli=${openvpn_cli:-$(nvram get openvpn_cli)} FORM_openvpn_cli_server=${openvpn_cli_server:-$(nvram get openvpn_cli_server)} FORM_openvpn_cli_proto=${openvpn_cli_proto:-$(nvram get openvpn_cli_proto)} FORM_openvpn_cli_port=${openvpn_cli_port:-$(nvram get openvpn_cli_port)} FORM_openvpn_cli_port=${FORM_openvpn_cli_port:-1194} FORM_openvpn_cli_auth=${openvpn_cli_auth:-$(nvram get openvpn_cli_auth)} FORM_openvpn_cli_auth=${FORM_openvpn_cli_auth:-cert)} FORM_openvpn_cli_psk=${openvpn_cli_psk:-$(nvram get openvpn_cli_psk)} else #PKCS12 [ -d /etc/openvpn ] || mkdir /etc/openvpn [ -f "$FORM_openvpn_pkcs12file" ] && { cp "$FORM_openvpn_pkcs12file" /etc/openvpn/certificate.p12 && UPLOAD_CERT=1 } #PreShared Key [ -f "$FORM_openvpn_pskfile" ] && { cp "$FORM_openvpn_pskfile" /etc/openvpn/shared.key && UPLOAD_PSK=1 } #PEM Cert [ -f "$FORM_openvpn_rootcafile" ] && { cp "$FORM_openvpn_rootcafile" /etc/openvpn/ca.crt && UPLOAD_ROOTCACERT=1 } [ -f "$FORM_openvpn_clientcertfile" ] && { cp "$FORM_openvpn_clientcertfile" /etc/openvpn/client.crt && UPLOAD_CLIENTCERT=1 } [ -f "$FORM_openvpn_clientkeyfile" ] && { cp "$FORM_openvpn_clientkeyfile" /etc/openvpn/client.key && UPLOAD_CLIENTKEY=1 } save_setting openvpn openvpn_cli $FORM_openvpn_cli save_setting openvpn openvpn_cli_server $FORM_openvpn_cli_server save_setting openvpn openvpn_cli_proto $FORM_openvpn_cli_proto save_setting openvpn openvpn_cli_port $FORM_openvpn_cli_port save_setting openvpn openvpn_cli_auth $FORM_openvpn_cli_auth save_setting openvpn openvpn_cli_psk $FORM_openvpn_cli_psk fi cat < EOF display_form <> field|@TR<> select|openvpn_cli|$FORM_openvpn_cli option|0|@TR<> option|1|@TR<> onchange| end_form start_form|@TR<>|connection_settings|hidden field|@TR<> text|openvpn_cli_server|$FORM_openvpn_cli_server field|@TR<> select|openvpn_cli_proto|$FORM_openvpn_cli_proto option|udp|UDP option|tcp|TCP field|@TR<> text|openvpn_cli_port|$FORM_openvpn_cli_port field|@TR<> onchange|modechange select|openvpn_cli_auth|$FORM_openvpn_cli_auth option|psk|@TR<> option|cert|@TR<> option|pem|@TR<> onchange| end_form #PreShared Key start_form|@TR<>|authentication|hidden field|@TR<>|psk_status|hidden $(empty "$NOPSK" || echo 'string|@TR<>') $(empty "$UPLOAD_PSK" || echo 'string|@TR<>
') $(empty "$NOPSK" && echo 'string|@TR<>') field|@TR<>|psk|hidden upload|openvpn_pskfile #PKCS12 Cert field|@TR<>|certificate_status|hidden $(empty "$NOCERT" || echo 'string|@TR<>') $(empty "$UPLOAD_CERT" || echo 'string|@TR<>
') $(empty "$NOCERT" && echo 'string|@TR<>') field|@TR<>|certificate|hidden upload|openvpn_pkcs12file # PEM Cert field|@TR<>|root_ca_status|hidden $(empty "$NOROOTCACERT" || echo 'string|@TR<>') $(empty "$UPLOAD_ROOTCACERT" || echo 'string|@TR<>
') $(empty "$NOROOTCACERT" && echo 'string|@TR<>') field|@TR<>|root_ca|hidden upload|openvpn_rootcafile field|@TR<>|client_certificate_status|hidden $(empty "$NOCLIENTCERT" || echo 'string|@TR<>') $(empty "$UPLOAD_CLIENTCERT" || echo 'string|@TR<>
') $(empty "$NOCLIENTCERT" && echo 'string|@TR<>') field|@TR<>|client_certificate|hidden upload|openvpn_clientcertfile field|@TR<>|client_key_status|hidden $(empty "$NOCLIENTKEY" || echo 'string|@TR<>') $(empty "$UPLOAD_CLIENTKEY" || echo 'string|@TR<>
') $(empty "$NOCLIENTKEY" && echo 'string|@TR<>') field|@TR<>|client_key|hidden upload|openvpn_clientkeyfile end_form EOF footer ?>