OpenVPN ondersteunt niet het doorgeven van gebruikersnaam en wachtwoord via de opdrachtregel.De $# die je gebruikt geeft het aantal parameters waarmee het script aangeroepen werd. De eerste parameter is $1, de tweede $2 enz. tot $9. Wil je parameter 10 en meer hebben, dan moet dat tussen accolades staan: ${10} enz.
Je kunt bij openvpn wel een authenticatiebestand aanmaken met daarin twee regels: eerst de gebruikersnaam en dan het wachtwoord.Dan kun je dat bestand opgeven achteraan de opdrachtregel met--auth-user-pass.
Als volgt:openvpn /etc/openvpn/ovpn_tcp/nl400.nordvpn.com.tcp.ovpn --auth-user-pass /padnaar/bestandsnaam.ext
Eventueel kun je dat bestand in realtime aanmaken vanuit de opdrachtregelparameters
!/bin/bash
clear
if [[ -z $1 ]]; then
echo "Geef alsjeblieft gebruikersnaam en wachtwoord op voor de vpn-verbinding."
elif [[ -z $2 ]]; then
echo "Je gaf een gebruikersnaam, maar geen wachtwoord voor de vpn-verbinding."
else
echo $1 >authdata.txt
echo $2>>authdata.txt
openvpn /etc/openvpn/ovpn_tcp/nl400.nordvpn.com.tcp.ovpn --auth-user-pass authdata.txt
rm -f authdata.txt
fi