exe*_*ico 9 linux vpn debian script openvpn
在谷歌上呆了几天后,我无法找到我问题的正确答案。在阅读了很多脚本可能性之后,OpenVPN 就启动了。
我有一个运行 Debian 7.8 的客户端,带有 OpenVPN 2.2.1 x86_64-linux-gnu。
连接运行良好,一切正常。但是 - 我需要挂载一些 NFS 驱动器然后启动连接(“up” - 我猜)。
但是 - 然后我试图启动一个脚本,我遇到了这个错误:
Tue Jun 23 10:44:55 2015 /usr/share/openvpn/script-to-start.sh tun0 1500 1542 192.168.2.6 192.168.2.5 init
Tue Jun 23 10:44:55 2015 WARNING: Failed running command (--up/--down): could not execute external program
Tue Jun 23 10:44:55 2015 Exiting
Run Code Online (Sandbox Code Playgroud)
我在配置文件中添加了设置:
script-security 2
up /usr/share/openvpn/script-to-start.sh
down /usr/share/openvpn/script-to-stop.sh
Run Code Online (Sandbox Code Playgroud)
我正在尝试运行的脚本(现在仅用于测试)是:
#/bin/bash
grep vpn /var/log/syslog > /home/USERNAME/test.txt
clear
echo "Good morning, world."
Run Code Online (Sandbox Code Playgroud)
(2017年更新: - #/bin/bash 行中缺少“!”标记。不要复制/粘贴在上面的行,因为这是问题所在)
我也用 "#!/bin/sh" 测试过,只是为了确定。毕竟,我测试了权限和所有权:
如您所见,我在“up”和“down”命令之前添加了“script-security 2”。OpenVPN 以 root 身份运行,并由 init.d 脚本启动,但即使我尝试使用完整命令运行它,也会遇到相同的错误。
请参见下面的示例(使用和不使用 sudo):
sudo openvpn --remote SERVERDOMAIN --dev tun1 --ifconfig 192.168.2.2 192.168.2.1 --tls-client --ca /etc/openvpn/easy-rsa/keys/ca.crt --cert /etc/openvpn/easy-rsa/keys/TITLE.crt --key /etc/openvpn/easy-rsa/keys/TITLE.key --reneg-sec 60 --verb 5 --script-security 2 --up /usr/share/openvpn/script-to-start.sh
Run Code Online (Sandbox Code Playgroud)
如果我自己运行该死的小脚本,同时使用 SU 和 Sudo,一切都会顺利进行,没有任何问题。
关键是我需要运行这个命令来挂载一些 NFS 驱动器,但现在我被锁定了。所以我在这里需要一些帮助 - 我确实在丹麦论坛上尝试过,但没有运气。
sudo mount 192.168.2.1:/media/usb1/sync /home/USERNAME/sync
Run Code Online (Sandbox Code Playgroud)
在线手册不是很有帮助 - 现在我需要你的帮助。
小智 10
我遇到了同样的问题,幸运的是我找到了解决方案。
以下是我检查的内容:
grep
应该是/bin/grep
;您可以通过which
在命令前面键入来找到完整路径)script-security 2 system
替代 归档时间: |
|
查看次数: |
34082 次 |
最近记录: |