LXC TUN/TAP in Proxmox aktivieren

Wer in einem LXC Container OpenVPN o.ä. laufen lassen möchte, muss dem Container einen TUN/TAP Adapter zuweisen. Da dies spezielle Einstellungen auf der Kernelebene sind, benötigt der LXC Container einen Configeintrag.

Auf dem Proxmox Node auf dem der Container läuft muss in der Datei /var/lib/lxc/<vmid>/config der Eintrag lxc.cgroup.devices.allow = c 10:200 rwm in einer neuen Zeile hinzugefügt werden.
Möchte man TUN/TAP Standrdmäßig aktivieren kann der Eintrag auf unter /etc/lxc/default.conf hinzugefügt werden.

Nun muss bei jedem Start des Containers der Adapter hinzugefügt werden. Dafür folgenden Code in den Autostart.

if ! [ -c /dev/net/tun ]; then
mkdir -p /dev/net
mknod -m 666 /dev/net/tun c 10 200
fi

Der Autostart unter Linux ist bspw. /etc/rc.local. rc.local gilt jedoch ab Debian 9 als veraltet. Um die rc.local unter Debian 9+ wieder zu aktiveren kann man den Service einfach wieder hinzufügen.

cat </etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will „exit 0“ on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

exit 0
EOF
chmod +x /etc/rc.local
systemctl daemon-reload
systemctl start rc-local

Quelle: https://stackoverflow.com/a/44801337

Schreiben Sie einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert