-
Notifications
You must be signed in to change notification settings - Fork 158
Description
This is just a tracking ticket, split out of issue #50 , to track the possibility and requirements needed to run OpenVPN 3 Linux inside a container.
There are several challenges here, depending on how high we set the bar in regards to isolation and privilege access. Most of the openvpn3-service-*
process runs with basically no privileges. The exception is openvpn3-service-netcfg
(aka netcfg
- net config).
The netcfg
service requires privileges to change the network configuration (adding/removing virtual interfaces, configuring IP addresses, routing - requires CAP_NET_ADMIN
). In addition netcfg
will also either need file access to read and manipulate /etc/resolv.conf
or interact with systemd-resolved
over D-Bus. Manipulating resolv.conf
adds CAP_DAC_OVERRIDE
. If it is attempted to use --redirect-method bind-device
, CAP_NET_RAW
is also required.
All of these capabilities above will currently require the container to be given more privileges as well. As a first step, it might be acceptable to give fairly broad capabilities and privileges on the system, but ideally this should be restricted as much as possible to stay inside the container only.