Avisos
Tema Cerrado  
Tema : Crear VPN con OpenPlus  
Herramientas
  post #1  Jaloga está desconectado
Antiguo
13-Apr-2017, 11:30
Avatar de Jaloga
Jaloga
Mas información Mensaje Spam
Poder de Credibilidad: 60
Jaloga tiene una reputación que sobrepasa la famaJaloga tiene una reputación que sobrepasa la famaJaloga tiene una reputación que sobrepasa la famaJaloga tiene una reputación que sobrepasa la famaJaloga tiene una reputación que sobrepasa la famaJaloga tiene una reputación que sobrepasa la famaJaloga tiene una reputación que sobrepasa la famaJaloga tiene una reputación que sobrepasa la famaJaloga tiene una reputación que sobrepasa la famaJaloga tiene una reputación que sobrepasa la famaJaloga tiene una reputación que sobrepasa la fama
Fecha de Ingreso : 27-June-2011
Ubicación : En el Paraíso
Mensajes : 1.353
Predeterminado Crear VPN con OpenPlus

Que es y para que sirve
Una VPN (Virtual Private Network) te permite crear una conexión segura a otra red a través del Internet. Cuando conectas cualquier dispositivo a un VPN, este actúa como si estuviese en la misma red que la que tiene el VPN y todo el tráfico de datos se envía de forma segura, cifrado a través del VPN.
Red privada virtual - Wikipedia, la enciclopedia libre


En este manual vamos a explicar como crear una vpn utilizando nuestro decodificador de servidor. Y por ejemplo ver canales via streaming, conectar via FTP o Consola... Desde fuera de tu red local con la máxima seguridad.

Instalación openvpn
Nos dirigimos a botón azul menu de incio rapido red-servicios de red-openvpn



Pulsamos OK
Nos preguntará que si queremos instalar el complemento decimos que si.



*NOTA: Una vez instalado lo dejamos tal cual sin arrancarlo.

Generación de Certificados y Llaves

Ahora abrimos consola ya que casi todo lo demás lo haremos vía consola por comandos.
Procedemos a descargar los archivos necesarios...
Codigo


cd /tmp wget http://swupdate.openvpn.org/community/releases/openvpn-2.2.2.tar.gz tar -xvf openvpn-2.2.2.tar.gz cp -r /tmp/openvpn-2.2.2/easy-rsa/ /etc/openvpn/ cp /tmp/openvpn-2.2.2/sample-config-files/server.conf /etc/openvpn/ cp /tmp/openvpn-2.2.2/sample-config-files/client.conf /etc/openvpn/client.ovpn cd /etc/openvpn/easy-rsa/2.0/ chmod 777 *




Ahora podemos configurar el archivo vars que se encuentra en /etc/openvpn/easy-rsa/2.0
Para ello usaremos el editor en consola.
Codigo


cd /etc/openvpn/easy-rsa/2.0 vi vars
Cita

*NOTA: Desplazamos con el cursor hasta abajo y pulsamos letra "i" para editar. Al acabar "alt w" para guardar.
y finalmente (mayúsculas) "ZZ" para salir.
Buscamos:
Codigo


export KEY_COUNTRY="US" export KEY_PROVINCE="CA" export KEY_CITY="SanFrancisco" export KEY_ORG="Fort-Funston" export KEY_EMAIL="me@myhost.mydomain" export KEY_EMAIL=mail@host.domain export KEY_CN=changeme export KEY_NAME=changeme export KEY_OU=changeme export PKCS11_MODULE_PATH=changeme export PKCS11_PIN=1234
Remplazamos por nuestros datos...
Codigo


export KEY_COUNTRY="ES" # tu pais ejemplo ES export KEY_PROVINCE="GE" # tu provincia ejemplo GE de gerona export KEY_CITY="Gerona" # tu ciudad ejemplo Gerona export KEY_ORG="openplus" export KEY_EMAIL="vicente@open-plus.es" export KEY_EMAIL=tu@email export KEY_CN=openplus export KEY_NAME=openplus export KEY_OU=openplus export PKCS11_MODULE_PATH=openplus export PKCS11_PIN=1234
Generar las claves y certificados para cliente, servidor y Autoridad Certificadora CA
Codigo


source ./vars
Limpiaremos llaves antiguas y certificados con:
Codigo


./clean-all
Creamos el certificador autentificador con:
Codigo


./build-ca


*Nota: Este script nos pide varios datos los dejaremos en blanco, pulsar ENTER.
Pues para eso hemos modificado antes el archivo vars.




Generamos el Certificado para el Servidor:
Codigo


./build-key-server server
Nos pedirá los mismos datos que en el archivo vars, los dejaremos en blanco, pulsar ENTER.
Pues para eso hemos modificado antes el archivo vars.
Finalmente nos hará 2 preguntas en las cuales debemos decir que Si "y" y pulsar ENTER.



Generamos el Certificado para el Cliente:
En este paso crearemos tantos clientes como necesitemos client1,client2,client3 ect.... nosotros vamos a crear 2 clientes.
Codigo


./build-key client1 ./build-key client2


Nos pedirá los mismos datos que antes, vamos haciendo ENTER con cuidado, hasta llegar a Common Name. Ahí debemos ingresar el nombre de usuario que queramos poner a cada cliente (debe ser diferente en cada cliente) .
Finalmente nos pide una contraseña (challenge password) asignamos una para cada cliente. Luego nos hará 2 preguntas a las que debemos decir que Si "y" y pulsar ENTER.

Generamos los parámetros Diffie Hellman:
Este proceso es el mas duradero ya que compila los certificados y las keys.
Codigo


./build-dh


Una vez terminado, para mayor comodidad, movemos la carpeta keys que hemos a generado a la ruta /etc/openvpn.
Luego la usaremos para crear los clientes.
Codigo


mv keys /etc/openvpn/
Cofiguración de Servidor
Configuraremos los parámetros del Servidor:
Ahora es el momento de configurar nuestro servidor (server.conf) que se encuentra en /etc/openvpn/.
Codigo


cd /etc/openvpn vi server.conf
Localizaremos...
Codigo


# Which TCP/UDP port should OpenVPN listen on? # If you want to run multiple OpenVPN instances # on the same machine, use a different port # number for each one. You will need to # open up this port on your firewall. port 1194 # TCP or UDP server? ;proto tcp proto udp
Vemos que el puerto que tenemos puesto es el 1194 que seria el que deberiamos abrir en el router y el protocolo que usa es udp.
Pondremos el puerto que queramos y que debe ser el mismo que pondremos luego en client.opvn
Por lo tanto deberíamos abrir en el router el puerto 1194 protocolo udp.

Localizar los siguientes parámetros...
Codigo


ca ca.crt cert server.crt key server.key dh dh1024.pem
Sustituir por:
Codigo


ca /etc/openvpn/keys/ca.crt cert /etc/openvpn/keys/server.crt key /etc/openvpn/keys/server.key dh /etc/openvpn/keys/dh1024.pem
*NOTA: Ruta donde tenemos nuestra carpeta keys que en este caso estará en /etc/openvpn/keys.

Luego vamos a modificar la ruta de empuje.
Codigo


push "route 192.168.1.0 255.255.255.0"
Donde 192.168.1.0 debemos poner la del deco pero terminada en 0
ejemplo: si el deco es 192.168.0.90 pondríamos 192.168.0.0

Por último para el Log, usamos una unidad que tengamos montada, en mi caso...
Codigo


log /media/usb/openvpn.log
Ahora comprobaremos si el servidor está bien configurado ejecutamos vía consola, ponemos...
Codigo


tail -F /media/usb/openvpn.log
Finalmente, solo nos queda iniciar el openvpn en botón azul menu de incio rapido red-servicios de red-openvpn. Pulsamos verde para iniciar el openvpn.



Si todo funciona bien, deberías ver algo como esto en el registro de salida:
Cita


Salida:
Sun Mar 16 13:36:42 2014 TUN/TAP device tun0 opened
Sun Mar 16 13:36:42 2014 TUN/TAP TX queue length set to 100
Sun Mar 16 13:36:42 2014 /sbin/ifconfig tun0 10.8.0.1 pointopoint 10.8.0.2 mtu 1500
Sun Mar 16 13:36:42 2014 /sbin/route add -net 10.8.0.0 netmask 255.255.255.0 gw 10.8.0.2
Sun Mar 16 13:36:42 2014 Data Channel MTU parms [ L:1544 D:1450 EF:44 EB:135 ET:0 EL:0 AF:3/1 ]
Sun Mar 16 13:36:42 2014 GID set to nogroup
Sun Mar 16 13:36:42 2014 UID set to nobody
Sun Mar 16 13:36:42 2014 Listening for incoming TCP connection on [undef]:1150
Sun Mar 16 13:36:42 2014 TCPv4_SERVER link local (bound): [undef]:1150
Sun Mar 16 13:36:42 2014 TCPv4_SERVER link remote: [undef]
Sun Mar 16 13:36:42 2014 MULTI: multi_init called, r=256 v=256
Sun Mar 16 13:36:42 2014 IFCONFIG POOL: base=10.8.0.4 size=62
Sun Mar 16 13:36:42 2014 IFCONFIG POOL LIST
Sun Mar 16 13:36:42 2014 MULTI: TCP INIT maxclients=1024 maxevents=1028
Sun Mar 16 13:36:42 2014 Initialization Sequence Completed
Configuración Clientes

Modificamos los parámetros para los Clientes:
Primero editaremos vía consola el client.ovpn del servidor.
Codigo


cd /etc/openvpn vi client.ovpn
Ahí modificaremos, remote my-server-1 1194 y pondremos nuestra IP publica, o Dyndns...

*Nota: Puerto debe ser el mismo que pusimos en la configuración del Servidor.
Codigo


remote openplus.dyndns.net 1194
Y para clientes con 1 solo archivo, como haremos en este caso, debemos comentar estas lineas así:
Codigo


;ca ca.crt ;cert client.crt ;key client.key
Cita

Recordad:
Desplazamos con el cursor hasta abajo y pulsamos letra "i" para editar. Al acabar "alt w" para guardar.
y finalmente (mayúsculas) "ZZ" para salir.
Seguidamente creamos las carpeta clientes y pasamos llaves de cliente y certificados del mismo:
Tendremos en cuenta que hay que crear tantos como clientes hemos puesto antes en ./build-key client.
*NOTA: Nosotros como solo creemos 2 clientes utilizaremos para cliente1-android y para cliente2-linux.
Codigo


cd /etc/openvpn mkdir client1-android mkdir client2-linux cp client.ovpn client1-android/ cp client.ovpn client2-linux/
Codigo


cp keys/ca.crt client1-android cp keys/client1.crt client1-android/client.crt cp keys/client1.key client1-android/client.key cp keys/ca.crt client2-linux cp keys/client2.crt client2-linux/client.crt cp keys/client2.key client2-linux/client.key
*Nota esta operación es según los clientes que quieras usar, sería repetir la misma operación en cada cliente.

Posteriormente añadir los certificado y las llaves dentro del archivo client.ovpn
Ya que hay dispositivos como por ejemplo móviles que no admiten archivos múltiples.
Codigo


cd /etc/openvpn/client1-android/ echo -e "\n\n<ca>\n$(cat ca.crt)\n</ca>" >> client.ovpn echo -e "\n\n<cert>\n$(cat client.crt)\n</cert>" >> client.ovpn echo -e "\n\n<key>\n$(cat client.key)\n</key>" >> client.ovpn
Ya tenemos todo en un unico archivo cliente.ovpn en /etc/openvpn/client1-android
Podremos hacer lo mismo con el client2-linux para solo tenerlo en un unico archivo.
Codigo


cd /etc/openvpn/client2-linux/ echo -e "\n\n<ca>\n$(cat ca.crt)\n</ca>" >> client.ovpn echo -e "\n\n<cert>\n$(cat client.crt)\n</cert>" >> client.ovpn echo -e "\n\n<key>\n$(cat client.key)\n</key>" >> client.ovpn
Ahora como ya tenemos los certificados y las llaves en un único archivo que es el cliente.ovpn ya no es necesario los crt y key. Así que procedemos a borrarlos.
Codigo


cd /etc/openvpn/client1-android/ rm client.crt rm client.key rm ca.crt
Repetimos con el client2-linux si lo hemos creado en un único archivo.
Codigo


cd /etc/openvpn/client2-linux/ rm client.crt rm client.key rm ca.crt


Como podemos ver en los clientes nos queda todo en un único archivo llamado client.ovpn.


Ahora ya solo nos queda configurar los clientes, por ejemplo android, decodificador E2 o Pc Linux. (Siguiente Hilo)

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
En el primer caso vamos a utilizar un dispositivo android.
Nos descargamos e instalamos de Google Play OpenVPN Connect.

OpenVPN Connect – Applications Android sur Google Play



Una vez ya tenemos la aplicación instalada es el momento de pasar el cliente.ovpn. desde el deco al smartphone.
Recordamos que estaba en...
Codigo


/etc/openvpn/client1-android
Lo copiamos a nuestro dispositivo ejemplo a la ruta SD card.

Abrimos la aplicacion, pulsamos MENÚ después a IMPORT


Pulsamos en "Import profile from SD card".


Buscamos en la ruta de la SD card el client.ovpn
*NOTA: En este momento tendremos que asegurarnos de no estar conectados en el móvil a la red Wifi de casa donde esta el decodificador.

Después simplemente debemos pulsar a Connect.
Si todo ha ido bien, veremos algo como...


De esta forma ya estamos conectados con el decodificador de la forma más segura posible (sin abrir puertos). Como si estuviésemos en la red local de casa.
Y toda la información entre móvil y decodificador irá cifrada.


Configuración de los Clientes Enigma2.
En el segundo caso vamos a utilizar un dispositivo enigma2 con openplus.
El client.ovpn que nos ha proporcionado openvpn server, lo debemos colocar en nuestro decodificador cliente, en la ruta:
Codigo


/etc/openvpn
*NOTA: En /etc/openvpn solo debemos tener el cliente que acabamos de poner.

Vía FTP procedemos a renombrar el client.ovpn a:
Codigo


client.conf
Editamos el archivo client.conf y añadimos una linea para el LOG.
Codigo


log /etc/openvpn/openvpnclient.log
(Para así tener un log de la conexión y poder consultar cualquier posible fallo).

Procedemos a arrancar el openvpn.
Para iniciar el openvpn, vamos, botón azul menu de incio rapido red-servicios de red-openvpn. Pulsamos verde para iniciar el openvpn.


En la siguiente imagen veremos el log gracias a la linea que añadimos en el client.conf, podemos consultarlo via FTP en la ruta /etc/openvpn/openvpnclient.log.


*NOTA: Como podemos ver está marcada la ip del servidor.

En la siguiente imagen podemos ver que estamos conectados por terminal a un solo2 el cual tiene la IP 192.168.1.102 (local) y la IP 10.8.8.6 que nos ha asignado el server openvpn.


Ahora para conectarnos a la maquina del servidor realizaremos un ssh a la ip del servidor que como antes hemos visto en el log tenia la 10.8.8.1 lo realizaremos con el siguiente comando.
Codigo


ssh -l root 10.8.8.1


Una vez conectado podemos ver que si realizamos un ifconfig nos esta informando la ip local que tiene esa maquina y la ip del openvpn que seria la 10.8.8.1.


Autor: Team Open-plus

Últimos temas en esta categoría:


Todos Somos Maniacos

  Última edición por Jaloga; 13-Apr-2017 a las 11:34  
Los siguientes 6 usuarios agradecen a Jaloga por este mensaje:
Tema Cerrado
Ir al Foro Arriba
Normas de Publicación
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes
Los Códigos BB están Activado
Las Caritas están Activado
[IMG] está Activado
El Código HTML está Desactivado
 

Información del foro
Desarrollado por: vBulletin® Versión 3.8.9
Derechos de Autor ©2000 - 2024, Jelsoft Enterprises Ltd.
Recursos ahorrados en esta página: MySQL 0% Organización : 30 Junio 2006
La franja horaria es GMT +2. Ahora son las 17:02.
Aviso importante


Yukarý Fýrlat