it-swarm-es.com

¿Cómo usar VPN sobre el puente de red configurado manualmente (con la interfaz principal no administrada por NetworkManager)?

He configurado un puente de red que estoy usando para conectar KVM máquinas virtuales en mi escritorio a mi red doméstica; He puesto esto en forma manual al crear el puente en /etc/network/interfaces (la forma en que lo hace el libro para obtener el mejor rendimiento de redes, y lo estamos utilizando en los servidores de virtualización de nuestra compañía).

Esto, sin embargo, significa que NetworkManager ya no administra la interfaz eth0 y se niega a configurar conexiones VPN.

Eso no me habría molestado tanto si pudiera encontrar una aplicación para conectarme en lugar de NM. Pero, ¡ay, no pude encontrar nada! Había un paquete llamado kvpnc, descrito como una GUI para clientes VPN, pero seguía fallando. Por lo que pude ver, no había ninguna alternativa GUI VPN que funcionara.

Otras personas están teniendo problemas similares: puente de red - sin destruir el administrador de red pero ese tipo acaba volviendo a NM y configurando el enrutamiento en lugar de un puente en lugar de encontrar una alternativa Cliente VPN.

¿Algunas ideas?

Editar: olvidé mencionar que estoy usando PPTP en este momento y podría necesitar OpenVPN en el futuro.

4
jjakob

Bien, así es como resolví el problema :

1. Eliminar el administrador de red

Sudo apt-get remove network-manager

nota: lea el final de esta publicación para obtener un descargo de responsabilidad

2. Configure pptp en la línea de comando

Utilizaremos una herramienta útil llamada pptpsetup que configura todos los archivos de configuración necesarios para nosotros.

Correr:
Sudo pptpsetup --create $your-connection --server se.rv.er.ip --username $pptp-username --encrypt

reemplazar:
- $ your-connection con un nombre corto para la nueva conexión
- se.rv.er.ip con la IP del servidor al que desea conectarse
- $ pptp-username con el nombre de usuario del usuario que se conecta

Primero se le pedirá la contraseña de Sudo, luego pptpsetup le pedirá la contraseña para la conexión PPTP. Ingrese, luego presione enter. Ten cuidado, no los mezcles. Esto habrá creado todos los archivos de configuración necesarios. Si no desea utilizar la ruta predeterminada que le ha introducido el servidor, agregue una línea que diga nodefaultroute a /etc/ppp/peers/$connection-name.

3. Iniciar y detener la conexión manualmente

Sudo pon your-connection
para conectar, y

Sudo poff your-connection
para desconectar.

4. Si desea agregar y eliminar automáticamente rutas personalizadas:

Crea dos scripts, como este:
(colóquelos en algún lugar de su carpeta de inicio,/root también está bien si no olvida hacer una copia de seguridad)

pptp-on.sh:

#!/bin/bash
# This script connects us using pre-configured PPTP VPN,
# and then adds all the routes we specify here.

pon your-connection
a=$?

sleep 5

# add routes
if [ $a == 0 ]; then
        # whatever routes you need
        route add -net 192.168.1.0 netmask 255.255.255.0 dev ppp0
        echo "Connected"
fi

exit $a

pptp-off.sh:

#!/bin/bash

poff your-connection

a=$?

# delete routes
if [ $a == 0 ]; then
        #specify whatever routes you have here
        route del -net 192.168.1.0 netmask 255.255.255.0 dev ppp0
        echo "Disconnected"
fi

exit $a

Deben ser propiedad de root: Sudo chown root:root pptp-on.sh pptp-off.sh. Hazlos ejecutables: Sudo chmod +x pptp-on.sh pptp-off.sh
Nómbralos como mejor te convenga, para que sepas para qué son.

5. Crear lanzadores de escritorio

Quería tener lanzadores de escritorio en los que pueda hacer clic en lugar de ejecutar los scripts manualmente cada vez que me conecto y desconecto. Para hacer esto, creé dos lanzadores de escritorio que ejecutan gksudo /path/to/pptp-on.sh y gksudo /path/to/pptp-off.sh respectivamente. Usé Marian Lux-es Create Launcher disponible en el Centro de software de Ubuntu. Google para saber cómo hacer esto, no voy a escribir esto aquí (porque soy vago).

Eso es. Puede tener tantas conexiones diferentes como desee, todas encendidas y apagadas fácilmente con los lanzadores. Simplemente realice todos los pasos nuevamente para cada conexión adicional.

Pero cuidado, como se dijo, esto no es una solución, sino una solución. La solución será cuando NM obtenga soporte integrado para puentes de red, lo cual, si he leído correctamente, ya lo hice en 13.04. Esto solo está destinado a personas como yo, que planean conservar 12.04 todo el tiempo que puedan (he probado 12.10 pero tuve grandes problemas, como incompatibilidad con mi tarjeta gráfica ATI, muchos errores, etc.), o en menos hasta la próxima versión de LTS o mudarse al hardware nuevo/er.

4
jjakob