web-dev-qa-db-ja.com

Ubuntu Server 16.04-OpenVPNが起動しないようで、ログが書き込まれません

次のガイドラインに従って、Ubuntuサーバー16.04にoepnvpnをインストールしました how-to-set-up-an-openvpn-server-on-ubunt

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.

syslogの出力

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
13
megloff

問題は、サービス構成/lib/systemd/system/openvpn.service/bin/trueを呼び出すだけであることです(なぜ削除されなかったのかはわかりません)。使用可能な構成は/lib/systemd/system/[email protected]にある可能性がありますが、多少のハッキングが必要です。

私のために働いた解決策:

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 [email protected]

3.すべてが機能する場合は、サービスの自動起動を有効にします

systemctl enable [email protected]
16
Wildfire

全体を検索した後、私はこのリンクを見つけました:

https://a20.net/bert/2016/09/27/openvpn-client-connection-not-started-on-ubuntu-16-04/

edit /etc/default/openvpn, uncomment AUTOSTART=”all”
Sudo systemctl daemon-reload
Sudo service openvpn restart

私はそれをもう少し煮詰めました:

echo 'echo "AUTOSTART="\"all"\"" >> /etc/default/openvpn' | Sudo -s
Sudo systemctl daemon-reload
Sudo service openvpn restart
13
user247945

/etc/init.d/openvpnのバグのため?

# check if automatic startup is disabled by AUTOSTART=none
if test "x$AUTOSTART" = "xnone" -o -z "$AUTOSTART" ; then
  log_warning_msg " Autostart disabled."
  exit 0
fi
if test -z "$AUTOSTART" -o "x$AUTOSTART" = "xall" ; then
  # all VPNs shall be started automatically
  ...

/ etc/default/openvpnでAUTOSTARTが空の場合、スクリプトは終了するようです。したがって、フィリップのソリューションを選択するか、119行目で2番目の条件を削除します。

-o -z "$AUTOSTART"
1
Alex

サーバーのconfファイルはmyserver.confです

systemctl enable openvpn@myserver
service openvpn@myserver start

サーバーのconfファイルはyourserver.confです

systemctl enable openvpn@yourserver
service openvpn@yourserver start