jon*_*ers 3 c# windows credentials openvpn
如果您尝试通过 --auth-user-pass 开关将用户名/密码从文件传递给 OpenVPN,您会收到以下错误:
"Sorry, 'Auth' password cannot be read from a file."
Run Code Online (Sandbox Code Playgroud)
至少他们很有礼貌。
因此,我们的解决方法是,当我们收到 Auth Username: 和 Auth Password: 提示时(这是在 C# 中),以编程方式写入“standard in”。
与时间相关的东西并不是 100% 可靠,所以我正在寻找一种以不同方式将凭据传递给 OpenVPN 的方法,并发现了这篇文章:OpenVPN Post
它说您可以使用 --enable-password-save 选项重新编译源代码。有人能够做到这一点吗?
我的最后一个问题是:如何将身份验证用户名/密码传递给客户端的 openvpn.exe?OpenVPNGUI 是否以某种方式做到了这一点(也许我们可以复制他们所做的事情)?
小智 5
笔记!如果通过 GUI“C:\Program Files\OpenVPN\config\name.ovpn”启动,参数auth-user-pass不起作用
制作启动文件 start_openvpv.cmd (+链接到“以管理员身份运行”),内容为:
cd C:\Users\Name\Documents\VPN
"C:\Program Files\OpenVPN\bin\openvpn.exe" --config C:\Users\Name\Documents\VPN\myvpnconfig.ovpn --auth-user-pass "C:\Users\Name\Documents\VPN\pass.txt"
Run Code Online (Sandbox Code Playgroud)
通过.txt:
yourusername
yourpassword
Run Code Online (Sandbox Code Playgroud)
或者将行放入 name.ovpn,如上面的消息所示:
auth-user-pass pass.txt
Run Code Online (Sandbox Code Playgroud)
+start_openvpv.cmd:
cd C:\Users\Name\Documents\VPN
"C:\Program Files\OpenVPN\bin\openvpn.exe" --config C:\Users\Name\Documents\VPN\myvpnconfig.ovpn
Run Code Online (Sandbox Code Playgroud)