通过环境变量设置openvpn用户名和密码

问题描述 投票:0回答:1

我有一个相当长的密码,我想使用秘密管理器自动执行,我不想以明文形式存储它。

this的答案来看,我可以使用环境变量来实现这一点,这很棒。

使用

sudo openvpn --config ~/Documents/config.ovpn --auth-user-pass test.txt
进行快速检查有效,也很棒!我需要 sudo,否则 openvpn 无法工作。

但是我无法正确执行命令,我可能犯了一些小错误。

我尝试过:

sudo openvpn --config ~/Documents/config.ovpn --auth-user-pass <(echo -e $VPN_USER"\n"$VPN_PASS)

但这会导致:

2024-04-13 20:11:43 WARNING: cannot stat file '/proc/self/fd/14': No such file or directory (errno=2)
Options error: --auth-user-pass fails with '/proc/self/fd/14': No such file or directory (errno=2)

我认为这是由于我使用 sudo 造成的。所以我尝试了其他方法(我不完全是 bash 专业人士):

cat <(echo -e $VPN_USER"\n"$VPN_PASS) | sudo /usr/sbin/openvpn --config ~/Documents/config.ovpn --auth-user-pass 

但这会导致:

Password entry required for 'Enter Auth Username:' (PID 191957).
Please enter password with the systemd-tty-ask-password-agent tool.

这可能是一个简单的问题。

bash sudo openvpn
1个回答
0
投票

我使用此命令完成了此工作:

sudo bash -c 'openvpn --config /home/leander/Documents/Informatics-EdLAN-Forum.ovpn --auth-user-pass <(echo -e "'${VPN_USER}'\n'${VPN_PASS}'")'

我仍然很乐意得到解释我做错了什么,因为我不确定发生了什么

© www.soinside.com 2019 - 2024. All rights reserved.