OpenVPN on Linux: passing username and password in command line
Solution 1:
The previous answer didn't work for me (still asked for username and password), what did work was putting your credentials in a file (pass.txt), like this
[email protected]
password
and calling openvpn with --auth-user-pass pass.txt
.
source
Note that in some OpenVPN versions (e.g. OpenVPN 2.4.11) there is a bug where you have to first use --config
and then --auth-user-pass
or your auth file will be ignored without any warning.
So, here a complete example:
sudo openvpn --config /home/ipv/conf/ipvanish-CA-Toronto-tor-a09.ovpn --auth-user-pass pass.txt
Solution 2:
Following @Fluffy answer (unfortunately I don't have enough reputation to comment)
There is a nice bash trick that can eliminate need for pass.txt file
Insead of
openvpn ... --auth-user-pass pass.txt
where pass.txt is
opvn_user
ovpn_pass
one can use
openvpn ... --auth-user-pass <(echo -e "opvn_user\novpn_pass")
please note the \n
usage between username and password