= OpenVPN systemd use This is only a ''brief'' summary of OpenVPN systemd usage. OpenVPN **must** be compiled with systemd support.[[br]] Use the correct OpenVPN supported systemd `.service` files. === Build OpenVPN with systemd support When you build the openvpn binary use the configure option `--enable-systemd` like so: {{{ ./configure --enable-systemd }}} Verify OpenVPN systemd support has been enabled like so: {{{ $ openvpn --version }}} Look for `enable-systemd=yes` in the output. === Using OpenVPN with systemd support In order to use OpenVPN with systemd please use the correct systemd `.service` file. **Server**: * Place your server configuration file in `/etc/openvpn/server` * Use the `openvpn-server@.service` like so: {{{ $ sudo systemctl start openvpn-server@{Server-config} }}} Replace `{Server-config}` with the `name` of your config file without the `.conf` **Client**: * Place your client configuration file in `/etc/openvpn/client` (notice however that, due to an outdated version of openvpn, some distributions, like Ubuntu 20.10, look for configuration files under `/etc/openvpn` instead of `/etc/openvpn/client`. In case of doubt, check the specific error message in `journalctl -xe`) * The filename must end in `.conf`, so if your client config file is something like `profile.ovpn` rename it to `somename.conf` (where `somename` is meaningful to you, to describe where you are connecting.) * Use the `openvpn-client@.service` like so: {{{ $ sudo systemctl start openvpn-client@{Client-config} }}} Replace `{Client-config}` with the `name` of your config file without the `.conf` **Start at boot**: Replace `start` with `enable` Other systemd questions are probably best answered by reading `man systemctl` etc .. **Note**: * `openvpn@.service` is **deprecated**. * `openvpn.service` is **obsoleted**. (This is only used for backward compatibility) === Known issues https://community.openvpn.net/openvpn/ticket/945 [[br]] https://community.openvpn.net/openvpn/ticket/1089