Ubuntu
Ubuntu Server 16.04 - OpenVPN 似乎沒有啟動,沒有寫入日誌
我按照以下指南 how-to-set-up-an-openvpn-server-on-ubuntu在 Ubuntu 伺服器 16.04 上安裝和 oepnvpn
當我使用以下命令啟動 openVPN 伺服器時:
service openvpn start
看起來它已經啟動了,但是即使我啟動了日誌選項,我也沒有寫入任何日誌文件。status /var/log/openvpn-status.log log /var/log/openvpn.log
任何提示我可以嘗試什麼?
- 如何檢查程序/服務是否真的在執行?
- 我怎樣才能知道服務是否每次都崩潰?
- 知道為什麼不寫入日誌文件嗎?
啟動服務時的輸出
root@Diabolo:/etc/openvpn# service openvpn stop root@Diabolo:/etc/openvpn# service openvpn start root@Diabolo:/etc/openvpn# service openvpn status openvpn.service - OpenVPN service Loaded: loaded (/lib/systemd/system/openvpn.service; enabled; vendor preset: enabled) Active: active (exited) since Sat 2016-06-25 19:04:12 CEST; 3s ago Process: 3956 ExecStart=/bin/true (code=exited, status=0/SUCCESS) Main PID: 3956 (code=exited, status=0/SUCCESS) Jun 25 19:04:12 Diabolo systemd[1]: Starting OpenVPN service... Jun 25 19:04:12 Diabolo systemd[1]: Started OpenVPN service.
系統日誌上的輸出
Jun 25 19:04:12 Diabolo systemd[1]: Starting OpenVPN service... Jun 25 19:04:12 Diabolo systemd[1]: Started OpenVPN service.
配置文件server.conf
port 1194 proto udp dev tun ca /etc/openvpn/ca.crt cert /etc/openvpn/server.crt key /etc/openvpn/server.key dh /etc/openvpn/dh2048.pem server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway def1 bypass-dhcp" push "dhcp-option DNS 208.67.222.222" push "dhcp-option DNS 208.67.220.220" keepalive 10 120 comp-lzo max-clients 100 user nobody group nogroup persist-key persist-tun status /var/log/openvpn-status.log log /var/log/openvpn.log verb 3
問題是服務配置
/lib/systemd/system/openvpn.service
只是呼叫/bin/true
(我不知道為什麼它不被刪除)。可以在 中找到可用的配置/lib/systemd/system/openvpn@.service
,但它仍然需要被破解。對我有用的解決方案:
1.創建對網路服務的依賴
為了保護它不被覆蓋,請在子目錄中的單獨文件中創建它:
mkdir -p /lib/systemd/system/openvpn\@.service.d
在此目錄中創建一個文件。它的名稱必須以 結尾
.conf
,例如:vi /lib/systemd/system/openvpn\@.service.d/local-after-ifup.conf
在此文件中放入以下內容:
[Unit] Requires=networking.service After=networking.service
2.嘗試啟動伺服器
systemctl start openvpn@<CONF_NAME>.service
其中 CONF_NAME 是目錄中
.conf
文件的名稱/etc/openvpn
。在你的情況下:systemctl start openvpn@server.service
3.如果一切正常,啟用服務自動啟動
systemctl enable openvpn@server.service