Cómo configurar VPN

  
de igual a igual en Linux Una VPN tradicional (como OpenVPN, PPTP) consiste en un servidor VPN y uno o más clientes conectados a este servidor. Cuando dos clientes VPN se comunican entre sí, el servidor VPN debe retransmitir el tráfico de datos VPN entre ellos. El problema con tal topología de VPN de centro y radio es que los servidores VPN pueden convertirse fácilmente en un cuello de botella en el rendimiento cuando aumenta la cantidad de clientes conectados. En cierto sentido, un servidor VPN centralizado también es una fuente de un solo punto de falla, lo que significa que cuando un servidor VPN falla, ningún cliente VPN podrá acceder a la VPN completa. La VPN punto a punto (también conocida como VPN P2P) es otro modelo de VPN que resuelve estos problemas con las VPN basadas en modelos de cliente-cliente tradicionales. Ya no hay un servidor central de VPN en una VPN P2P, y cualquier nodo con una dirección IP pública puede dirigir otros nodos a la VPN. Cuando se conecta a una VPN, cada nodo puede comunicarse directamente con cualquier otro nodo en la VPN sin pasar por un nodo de servidor intermedio. Por supuesto, cuando un nodo falla, los nodos restantes en la VPN no se verán afectados. Los retrasos, el ancho de banda y la escalabilidad de VPN en los nodos se mejoran naturalmente en tales configuraciones, lo cual es ideal cuando se desea usar VPN para juegos de varios jugadores o compartir archivos con muchos amigos. Hay varias implementaciones de VPN P2P de código abierto, como Tinc, peerVPN y n2n. En este tutorial, te mostraré cómo configurar una VPN de igual a igual con n2n en Linux. N2n es un software de código abierto (GPLv3) que le permite crear una VPN de igual a igual de 2/3 de capa cifrada entre usuarios. La VPN construida por n2n es "NA amigable con NAT", es decir, dos usuarios detrás de diferentes enrutadores NAT pueden comunicarse directamente entre sí a través de VPN. N2n admite tipos NAT simétricos, que es el más restrictivo en NAT. Por lo tanto, el tráfico de datos VPN de n2n se encapsula en UDP. Una VPN n2n consta de dos tipos de nodos: un nodo de borde y un supernodo. Un nodo de borde es una computadora conectada a una VPN, que puede estar detrás de un enrutador NAT. Un supernodo es una computadora con una dirección IP de acceso público que ayudará a los nodos de borde detrás del NAT a comunicarse inicialmente. Para crear una VPN P2P entre los usuarios, necesitamos al menos un supernodo. Cómo prepararse
En este tutorial, crearé una VPN P2P con 3 nodos: un súper nodo y dos nodos de borde. El único requisito es que los nodos de borde deben poder hacer ping a la dirección IP del súper nodo, y no importa si están detrás del enrutador NAT. Instalación de n2n en Linux
Para construir una VPN P2P con n2n, debe instalar n2n en cada nodo, incluido el supernodo. Debido a sus dependencias muy magras, n2n puede compilarse fácilmente en la mayoría de las plataformas Linux. Instale n2n en un sistema basado en Debian:
 $ sudo apt-get install subversion build-essential libssl-dev $ svn co https://svn.ntop.org/svn/ntop/trunk/n2n $ cd n2n /n2n_v2 $ make $ sudo make install install n2n en un sistema basado en Red Hat: 
 $ sudo yum install subversion gcc-c ++ openssl-devel $ svn co https://svn.ntop.org/svn/ntop/trunk/n2n $ cd n2n /n2n_v2 $ make $ sudo make install Configure una VPN P2P con n2n 
Como se mencionó anteriormente, necesitamos al menos un supernodo, que actuará como un servidor de arranque inicial. Suponemos que la dirección IP de este supernodo es 1.1.1.1. Supernodo:
Ejecuta el siguiente comando en una computadora que actúa como un supernodo. Donde " -l < port > " especifica el puerto de escucha del supernodo. Ejecutar raíces no requiere privilegios de root.
 $ supernode -l 5000 Edge edge: 
En cada nodo edge, use el siguiente comando para conectarse a una VPN P2P. El demonio de borde se ejecutará en segundo plano. Nodo de borde # 1:
 $ sudo edge -d edge0 -a 10.0.0.10 -c mynetwork -u 1000 -g 1000 -k contraseña -l 1.1.1.1:5000 -m ae: e0: 4f: e7: 47: 5b edge node # 2: 
 $ sudo edge -d edge0 -a 10.0.0.11 -c mynetwork -u 1000 -g 1000 -k contraseña -l 1.1.1.1:5000 -m ae: e0: 4f: e7: 47 : 5c A continuación encontrará una explicación de la línea de comandos: La opción " -d < nombre de interfaz > " especifica el nombre de la interfaz TAP creada por el comando de borde. La opción " -a < dirección IP > " (estáticamente) especifica la dirección IP de la VPN asignada a la interfaz TAP. Si desea usar DHCP, debe configurar un servidor DHCP en uno de los nodos de borde y luego usar la opción " -a dhcp: 0.0.0.0 " La opción " -c < group > " especifica el nombre del grupo VPN (la longitud máxima es de 16 bytes). Esta opción se puede utilizar para crear múltiples VPN en el mismo conjunto de nodos. Las opciones " -u " y " -g " se usan para eliminar el privilegio de raíz después de crear una interfaz TAP. El demonio de borde se ejecutará como el ID de usuario /grupo especificado. La opción " -k < key > " especifica una clave cifrada por twofish. Si desea ocultar la clave de la línea de comandos, puede usar la variable de entorno N2N_KEY. La opción " -l < dirección IP: puerto > " especifica la dirección IP de escucha y el número de puerto del supernodo. Para la redundancia, puede especificar hasta dos supernodos diferentes (como -l < supernode A > -l < supernode B >). " -m " Asigna una dirección MAC estática a la interfaz TAP. Sin este parámetro, el comando de borde generará aleatoriamente una dirección MAC. De hecho, se recomienda encarecidamente forzar una dirección MAC estática para una interfaz VPN. De lo contrario, por ejemplo, cuando reinicia el demonio de borde en un nodo, las cachés ARP de otros nodos se verán contaminadas por la dirección MAC recién generada, no podrán enviar datos a este nodo hasta que el registro ARP contaminado Fue eliminado. 


En este punto, debería poder hacer ping a otro nodo de borde desde un nodo de borde con una dirección IP de VPN.
Solución de problemas

Se encontró el siguiente error al llamar al demonio de borde.

n2n [4405]: ERROR: ioctl () [Operación no permitida] [- 1]

Nota El demonio de borde requiere privilegios de superusuario para crear una interfaz TAP. Por lo tanto, debe asegurarse de ejecutar con privilegios de root o configurar el SUID para el comando de borde. Luego, puede usar las opciones " -u " y " -g " para denegar el privilegio de raíz.
Summary

n2n puede ser una solución VPN gratuita que es muy útil para usted. Puede configurar fácilmente un supernodo, ya sea utilizando su propia red doméstica o una instancia de VPS de acceso público de un proveedor de alojamiento en la nube. Ya no necesita poner credenciales y claves confidenciales en manos de proveedores de VPN de terceros. Con n2n, puede configurar su propia VPN P2P escalable de baja latencia, alto ancho de banda entre sus amigos.

Copyright © Conocimiento de Windows All Rights Reserved