openvpn
は、systemd
ユニットファイルからの正確なExecStart=
呼び出しを使用して、コマンドラインから正常に開始します。
/usr/sbin/openvpn --daemon ovpn-server --status /run/openvpn/server.status 10 --cd /etc/openvpn --script-security 2 --config /etc/openvpn/server.conf /run/openvpn/server.pid
ps ax
は、プロセスが存在することを確認します。
1634 ? Ss 0:00 /usr/sbin/openvpn --daemon ovpn-server --status /run/openvpn/server.status 10 --cd /etc/openvpn --script-security 2 --config /etc/openvpn/server.conf --writepid /run/openvpn/
ただし、systemctl start openvpn@server
は成功しません。
● [email protected] - OpenVPN connection to server
Loaded: loaded (/lib/systemd/system/[email protected]; disabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Thu 2016-03-17 09:54:52 UTC; 4s ago
Docs: man:openvpn(8)
https://community.openvpn.net/openvpn/wiki/Openvpn23ManPage
https://community.openvpn.net/openvpn/wiki/HOWTO
Process: 1679 ExecStart=/usr/sbin/openvpn --daemon ovpn-server --status /run/openvpn/server.status 10 --cd /etc/openvpn --script-security 2 --config /etc/openvpn/server.conf --writepid /run/openvpn/s
Main PID: 819 (code=exited, status=1/FAILURE)
Mar 17 09:54:52 vpn ovpn-server[1679]: Push_ifconfig_ipv6_remote = ::
Mar 17 09:54:52 vpn ovpn-server[1679]: enable_c2c = DISABLED
Mar 17 09:54:52 vpn ovpn-server[1679]: duplicate_cn = DISABLED
Mar 17 09:54:52 vpn ovpn-server[1679]: cf_max = 0
Mar 17 09:54:52 vpn ovpn-server[1679]: cf_per = 0
Mar 17 09:54:52 vpn ovpn-server[1679]: max_clients = 1024
Mar 17 09:54:52 vpn systemd[1]: [email protected]: Control process exited, code=exited status=1
Mar 17 09:54:52 vpn systemd[1]: Failed to start OpenVPN connection to server.
Mar 17 09:54:52 vpn systemd[1]: [email protected]: Unit entered failed state.
Mar 17 09:54:52 vpn systemd[1]: [email protected]: Failed with result 'exit-code'.
フォークに失敗したとjournalctl | grep ovpn-server | tail -n 100
を解釈します:
Mar 17 09:57:44 vpn ovpn-server[1693]: OpenVPN 2.3.10 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] built on Feb 2 2016
Mar 17 09:57:44 vpn ovpn-server[1693]: library versions: OpenSSL 1.0.2g 1 Mar 2016, LZO 2.08
Mar 17 09:57:44 vpn ovpn-server[1693]: daemon() failed or unsupported: Resource temporarily unavailable (errno=11)
Mar 17 09:57:44 vpn ovpn-server[1693]: Exiting due to fatal error
私もこれの修正を探していました。動作することがわかったのは、/lib/systemd/system/[email protected]
のLimitNPROC
行をコメント化することです。
その後systemctl daemon-reload
を実行することを忘れないでください。
システムパッケージに由来するsystemdユニットの変更を避けることをお勧めします。 systemd overrideドロップインを使用するだけです:
systemctl edit openvpn@
Openvpnのユニット名serverは異なる場合があります。パッケージバージョン2.4.5-xenial0
の場合は
systemctl edit openvpn-server@
次に、エディターに入力します。
[Service]
LimitNPROC=infinity
/etc/systemd/system/[email protected]/override.conf
ファイル(または対応するユニット名に類似したファイル)を作成する必要があります。有効にするには、systemdをリロードします。
systemctl daemon-reload
クレジット:
オーバーライド: https://unix.stackexchange.com/a/398541/218321
"無制限の制限": https://unix.stackexchange.com/a/345596/218321
私はまた、それぞれのツン兄弟を以下に追加する必要がありました
DeviceAllow=/dev/net/tap rw
DeviceAllow=/dev/net/tap1 rw
l2レベルで実行します。