Este manual ha sido probado desde una instalación nueva de Proxmox version 1.9 y un servidor VPS con Debian versión 6, descargada directamente desde la consola web del propio Proxmox.
1. Instalación de Proxmox como lo haríamos normalmente.
2. Una vez instalado Proxmox, procedemos a descargar una plantilla desde el menú de Proxmox (Plantilla de Aplicaciones) la cual usaremos para instalar una máquina virtual de prueba para el VPN.
En este ejemplo hemos optado por descargar la version 6 de Debian.
3. Una vez descargada la imagen, instalamos un VPS (Maquinas Virtuales -> Crear) como tipo:
Container (OPenVZ)
seleccionando la imagen que hemos descargado y poniendo los datos de red que sean necesarios, según nuestra configuración y preferencias de red dentro del entorno donde esté instalado nuestro hipervisor Proxmox.
4. Desde la consola del servidor Proxmox (como root) activamos el soporte TUN/TAP en el kernel
modprobe tun
comprobamos que esté activado
lsmod | grep tun
teniendo que ver una salida como esta:
tun 18815 1 vhost_net
Para que esto sea permanente, debemos poner que el módulo "tun" sea cargado en el inicio del servidor. Para ello usamos la siguiente orden:
echo tun >> /etc/modules
Podemos reiniciar Proxmox y ejecutar la orden anterior para verificar que se ha cargado el módulo al inicio.
5. Damos permisos para que nuestra máquina virtual pueda hacer uso del dispositivo tun/tap
vzctl set 101 --devnodes net/tun:rw --save
En nuestro caso, como solo tenemos una máquina virtual, esta tiene el ID 101.
La salida del comando anterior deberá ser:
Setting devices Saved parameters for CT 101
6. Desde la consola del servidor Proxmox editamos el fichero
nano -w /etc/vz/vz.conf
y en la línea donde pone (sobre la linea 46)
## IPv4 iptables kernel modules to be enabled in CTs by default IPTABLES="ipt_REJECT ipt_tos ipt_limit ipt_multiport iptable_filter iptable_mangle ipt_TCPMSS ipt_tcpmss ipt_ttl ipt_length"
añadimos al final
ipt_state iptable_nat
dejamos esa línea como sigue:
IPTABLES="ipt_REJECT ipt_tos ipt_limit ipt_multiport iptable_filter iptable_mangle ipt_TCPMSS ipt_tcpmss ipt_ttl ipt_length ipt_state iptable_nat"
Con este paso hacemos accesible los módulos de "nat" y "state" de iptables a los VPS
7. Permitimos a nuestro VPS abrir el interface TUN/TAP, asegurándonos primero que el VPS esté apagado.
vzctl stop 101 vzctl set 101 --devices c:10:200:rw --save vzctl set 101 --capability net_admin:on --save
8. Instalamos algunos módulos más en nuestro servidor Proxmox antes de iniciar el VPS
modprobe ipt_mark modprobe ipt_MARK modprobe tun
Haciéndolos permanentes del mismo modo que hicimos en el paso 4.
echo ipt_mark >> /etc/modules echo ipt_MARK >> /etc/modules
9. Iniciamos el VPS
vzctl start 101
10. Creamos el dispositivo "tun net" en nuestra máquina virtual
vzctl exec 101 mkdir -p /dev/net vzctl exec 101 mknod /dev/net/tun c 10 200 vzctl exec 101 chmod 600 /dev/net/tun
Perfecto el tutorial. Me ha valido para instalar la VPN en mi ubuntu 12.04 LTS OPenvz.
Quería saber si existe algún método de hacer que los valores:
vzctl exec 101 mkdir -p /dev/net
vzctl exec 101 mknod /dev/net/tun c 10 200
vzctl exec 101 chmod 600 /dev/net/tun
se carguen al reinicar la máquina…?
Gracias.