Python OpenVPN脚本
我试图为linux编写一个python脚本来启动openvpn,但在让openvpn开始使用子流程时遇到了一个问题 我正在使用以下命令启动openvpn:Python OpenVPN脚本,python,subprocess,openvpn,Python,Subprocess,Openvpn,我试图为linux编写一个python脚本来启动openvpn,但在让openvpn开始使用子流程时遇到了一个问题 我正在使用以下命令启动openvpn: openvpn_cmd = ['sudo', 'openvpn', '--config', 'client.cfg', '--auth-user-pass', 'hmaauth.conf'] prog = subprocess.Popen(openvpn_cmd) 但我从OpenVPN返回以下错误: 选项错误:--nobind没有意义,除非
openvpn_cmd = ['sudo', 'openvpn', '--config', 'client.cfg', '--auth-user-pass', 'hmaauth.conf']
prog = subprocess.Popen(openvpn_cmd)
但我从OpenVPN返回以下错误:
选项错误:--nobind没有意义,除非与--remote一起使用
在运行subprocess命令之前,配置文件直接从VPN服务网站下载,因此我不能(也不应该)更改配置中的任何内容
我听说如果不使用root权限运行,可能会发生这种情况,但我已经在这样做了
有人对我为什么会出现这个错误有什么建议吗?
我有一个正在运行的shell脚本,它使用以下命令启动openvpn:
sudo openvpn --config client.cfg --auth-user-pass hmaauth.conf
这正是我在python脚本中所拥有的
提前谢谢你的建议。好吧,这里的问题是我很笨。我下载的配置文件没有指定VPN的远程服务器,现在我理解了“无远程”错误
现在我已经解决了,我们可以开始了。也许可以尝试使用openvpn的完整路径和配置文件?从命令行执行
openvpn
命令吗?我在这里看不到任何python问题,除了您可能忘记更改到正确的目录。python脚本与配置文件位于同一目录中,因此这不应该是问题。我也在挠头,我看不出python代码有任何问题。同样的命令在shell脚本中也能正常工作…Gfei,当你以sudo的方式运行某个东西时,环境变量是不同的。嗯,我想等有机会的时候我会尝试添加完整路径。我以前从未遇到过那个问题。