Este artículo explica como habilitar el uso de VPN (por ejemplo OpenVPN) mediante el módulo TUN/TAP dentro de un contenedor openVZ.
OpenVZ es usado por PROXMOX para crear contenedores por lo que os será muy útil si os solicitan esto.
Soporta TUN/TAP del Kernel
OpenVZ soporta VPN dentro de un contenedor a través del módulo TUN/TAP del kernel. Para permitir al contenedor #101 usar el módulo TUN/TAP debemos hacer lo siguiente: Asegúrate de que el módulo tun ha sido cargado previamente en el nodo principal:
lsmod|grep tun
Si no está ahí, usa el siguiente comando para cargar dicho módulo:
modprobe tun
Para asegurarnos que el módulo tun se cargará automáticamente en cada reinicio también a /etc/modules.conf (en RHEL mira /etc/sysconfig/modules/directory
Concesión de un contenedor de acceso a TUN/TAP
Permite al contendor usar el módulo tun/tap lanzando los siguientes comandos en el host:
CTID=101 vzctl set $CTID --devnodes net/tun:rw --save vzctl set $CTID --devices c:10:200:rw --save vzctl set $CTID --capability net_admin:on --save vzctl exec $CTID mkdir -p /dev/net vzctl exec $CTID mknod /dev/net/tun c 10 200
vzctl exec $CTID chmod 600 /dev/net/tun
Configurar VPN dentro del contenedor
Después de que hayamos completa todos los pasos anteriores podremos usar el software VPN con TUN/TAP dentro de la máquina virtual como en la propia máquina.