שירים להורדה לפלאפון מיוטיוב
ויאגרה 100
אפליקציה לתרגום שפות
брокеры бинарных опционов с бездепозитным бонусом
קמגרה
заказ на алиэкспресс

Tag Archives: openvpn

A la salida del tunel

Como dije en el post previo, ahora vamos a ver como crear y configurar todo lo necesario para el cliente del openvpn. Resumiendo, lo que vamos a hacer es acceder al servidor y crear el certificado, luego llevarlo (junto a un par de archivos que se crearon) al cliente y crear la configuración del mismo.Antes de esto, un poco de teoría informal y liviana.

¿Para qué quiero una vpn?
Porque resulta que tenés varias pcs que tienen internet pero no podés acceder directamente a ellas (por ej, su ip no es pública) y querés ingresar y usarlas como si estuvieses en una misma red pero además quisieras resguardar del ojo ajeno todo el tráfico que hay entre vos y ellas. Y bueno, esa es una posible cuestión, te armas un servidor openvpn al que todos las pcs se conectan y arman una especie de LAN, y vos desde tu amada máquina hacés lo mismo.

Crear certificado para el cliente
1- Estando en el servidor, ingresamos al directorio /etc/openvpn/easy-rsa/2.0/ y hacemos:

# source vars
# ./build-key nombre_cliente_vpn

Aceptar todos los valores por defecto y cuando aparece Common Name, ponemos nombre_cliente_vpn . Luego le damos todo enter y todo que sí. Terminado este proceso, tendremos adentro del directorio keys/ un conjunto de archivos nombre_cliente_vpn.* y ca.crt .

2- Con estos archivos hacemos un tar.gz que enviaremos a la pc cliente bajo /etc/openvpn.

tar -cvzf nombre_cliente_vpn.tar.gz nombre_cliente_vpn.crt nombre_cliente_vpn.csr nombre_cliente_vpn.key ca.crt

Configurar el cliente
1- Usando como base el archivo de ejemplo lo copiamos a /etc/openvpn/

#cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf .

2- Lo imprescindible es modificar la ruta de alguno de los archivos que se nos generaron para el certificado y la ip del servidor al que debe conectarse para armar la vpn y el tipo de cifrado (igual al que elegimos en el server). Sería:

# certificados
ca ca.crt
cert nombre_cliente_vpn.crt
key nombre_cliente_vpn.key

# servidor y puerto
remote www.miservidordevpn.com.ar 1194

#cifrado
cipher AES-128-CBC

3- Una vez hecho esto, iniciamos el openvpn y listo

#/etc/init.d/openvpn start

El lector aplicado entenderá que esto fue escrito al vuelo de pájaro, por ende se han omitido ciertos detalles que pueden ser observados en los archivos de configuración que se mencionaron. Por ejemplo, si la red es udp, o tcp, si se usan 1024 o 2048 bits para la encritación, así como un sin fin de particularidades.

De túneles y esas cuestiones

Acá voy a explicar muy brevemente cómo armar una VPN utilizando el OpenVPN.

Ahora, yo me pregunto ¿Qué es una VPN?
No es la gran cosa, en criollo es una red montada sobre otra red. ¿Que qué? Si, por ejemplo tenemos internet que es una red bastante grande y queremos hacer otra red sobre esta. Claro, además a esa red la vamos a poder ver solo quienes formemos parte de la misma, por ende los datos irán encriptados para que solo nosotros podamos hacer uso de ella. A estos datos que transferimos de manera transparente por un caño que solo deja ver lo de adentro a los miembros de la red privada se lo llama tunel: muy original!

Una vez hecha la intro, vamos a instalar y configurar tanto el cliente como el servidor. Vale la pena aclarar que una vez instalado (en sistemas debian o basados en debian) tendremos el directorio del OpenVPN vacío, dependiendo lo que pongamos ahi dentro funcionará como cliente o servidor o ambas cosas.

Instalación
Tanto en el cliente como el servidor la instalación es la misma:

aptitude install openvpn

Configuración del Servidor
1- Copiamos al directorio /etc/openvpn/ el directorio de /usr/share/doc/openvpn/examples/easy-rsa/ y luego descomprimimos el archivo openssl-0.9.6.cnf.gz

# cp -a /usr/share/doc/openvpn/examples/easy-rsa/ .
# gunzip openssl-0.9.6.cnf.gz

2- Editamos el archivo vars (adivinen que es cada cosa!)

export KEY_COUNTRY=AR
export KEY_PROVINCE=Santa-Fe
export KEY_CITY=Santa-Fe
export KEY_ORG=”NN”
export KEY_EMAIL=”emiliano.lopez@tu-dominio.com.ar”

3- Ejecutamos un par de comandos para generar los certificados de autoridad

#. vars
#./clean-all
#./build-ca

4- Creamos el certificado para el servidor, notar que cuando nos pida Common Name va la palabra server:

#./build-key-server server

.. le damos que si (y) a todo.

5- Nos queda generar los parámetros de Diffie Hellman, el algoritmo  utilizado para establecer de forma segura una clave común entre dos  extremos en un medio no amigable: internet.

#./build-dh

6- En todos los pasos previos hicimos lo necesrio para que nuestro servidor tenga con qué hacer una vpn, ahora falta configurarlo usando como base el archivo ubicado en los ejemplos del openvpn:

# zcat /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > server.conf

7- Ahora tenemos que modificar este archivo diciendole dónde estan los certificados, parámetros, etc;

ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server.crt
key /etc/openvpn/easy-rsa/keys/server.key
dh /etc/openvpn/easy-rsa/keys/dh1024.pem

8- Descomentamos el sistema de cifrado (en el cliente vamos a tener que usar el mismo) y el usuario y grupo con el que corre el demonio del openVPN:

cipher AES-128-CBC # AES
user nobody
group nogroup

El archivo de configuración habla por si solo, cada opción nos explica muy bien para qué sirve y qué hace. El tema es que voy a dejar para otro post todo lo necesario para la configuración del cliente.
Nos vemos a la salida del tunel!

Social Widgets powered by AB-WebLog.com.

Social Widgets powered by AB-WebLog.com.

Social Widgets powered by AB-WebLog.com.