在 Ubuntu 18.04 上启动 OpenVPN

在 Ubuntu 18.04 上启动 OpenVPN

我尝试在运行 Xubuntu 18.04 的机器上启动 openvpn。我将我使用的服务的凭据放在一个单独的文件中,并将该文件的名称放在 OVPN 文件中,如下所述: https://askubuntu.com/questions/464264/starting-openvpn-client-automatically-at-boot#464269。当我输入:sudo openvpn /etc/openvpn/name.ovpn 时,openvpn 不会要求我的凭据并启动且没有任何错误。

所以没问题。但是,我尝试了前面提到的 URL 中提到的所有技巧,但我无法让 openvpn 在启动时建立连接。通常,每次更改后我都会重新启动机器。

然后我尝试使用 sudo crontab -e 将服务添加到 cron。@reboot openvpn /etc/openvpn/name.ovpn 更改后的 crontab 已安装。重启机器后,我仍然没有受到保护。ifconfig 确认没有设置 VPN 隧道。根据 syslog,openvpn 确实启动了,没有错误。cron 日志和 openvpn 日志都没有显示错误。

我也在网上阅读了许多其他信息,但没有其他真正的解决方案。

我很困惑。有人能帮忙吗?

先感谢您。

答案1

根据您的评论,这一行

/lib/systemd/system/[email protected]; disabled; vendor preset: enabled

似乎表明该服务已被禁用。

您可以尝试按顺序进行

sudo systemctl daemon-reload
sudo systemctl enable openvpn@client

然后重新启动。

根据要求编辑

sudo systemctl daemon-reload刷新systemd系统(重新读取配置文件、重新生成结构等)。手册页显示:

daemon-reload
   Reload systemd manager configuration. This will rerun all generators (see systemd.generator(7)), reload
   all unit files, and recreate the entire dependency tree. While the daemon is being reloaded, all sockets
   systemd listens on behalf of user configuration will stay accessible

我个人从未理解什么时候它应该被使用,但经常为我解决启动问题;)

sudo systemctl enable openvpn@client只是告诉systemd系统使能够指定的服务,即在适当的时间启动并在应该停止时停止。在这种情况下,openvpn它可能在网络设置后启动,并在关闭系统时停止。

答案2

这个答案对我有帮助,我当时正在苦苦挣扎,只是做了一个systemctl enable openvpn,我需要做的systemctl enable openvpn@client 下一个问题很容易通过查看找到journalctl -xe ,然后我发现主要问题是我的配置文件的名称。我将 client.ovpn 改为 client.conf 并且一切正常。

相关内容