Sirviendo información sobre Linux desde 1998

Instalación y configuración de OpenVPN

Imagen de linuxito

Una red privada virtual (VPN de las siglas en inglés de Virtual Private Network) es una tecnología de red que permite una extensión segura de la red local sobre una red pública o no controlada. Ejemplos comunes son la posibilidad de conectar dos o más sucursales de una empresa utilizando como vínculo Internet, permitir a los miembros del equipo de soporte técnico la conexión desde su casa al centro de cómputo, etc. Todo ello utilizando la infraestructura de Internet.
Este artículo detalla los pasos de instalación y configuración de OpenVPN sobre un servidor Debian 6 ó Ubuntu 12.04 (para este artículo ha sido probado en ambos), para dar acceso remoto desde Internet hasta una red privada de un centro de cómputos. OpenVPN es una solución VPN basada en SSL, liberada bajo la licencia GPL y es el estándar de facto para crear una VPN en GNU/Linux.

Escenario
Al construir una VPN, lo que sea desea es tener la posibilidad de acceder a una red local (protegida detrás de un firewall/gateway) desde Internet (o desde cualquier otra red insegura). El objetivo es que un cliente ubicado físicamente fuera de la red local (y posiblemente a kilómetros de distancia) parezca conectado de forma local. El servidor de VPN es el que posibilita la "extensión" y es quien provee una conexión segura entre el cliente y la red local a través de SSL (al utilizar certificados se obtiene autenticación mutua y confidencialidad).
El siguiente diagrama muestra el escenario planteado. En el ejemplo que se presenta en este artículo, la VPN no se realiza a través de Internet, sino a través de una red insegura 192.168.122.0/24. Se desea acceder a la red privada 10.9.0.0/24 a través de la VPN 10.8.0.0/24.

Instalación de OpenVPN
En Debian/Ubuntu es posible instalar OpenVPN desde los repositorios oficiales:

apt-get install openvpn

Luego de la instalación se deben copiar los scripts de configuración de ejemplo al directorio /etc/openvpn:

cd /usr/share/doc/openvpn/examples/easy-rsa
cp -a 2.0/ /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa

Estos scripts permiten la creación automática de una autoridad certificante (CA) autofirmada, lo cual simplifica mucho la instalación. Ya que OpenVPN está basado en SSL, se utiliza openssl para la autenticación mutua de clientes y servidores. La CA se utiliza para expedir certificados para el servidor de VPN y los clientes.
Antes de comenzar a crear la CA y los certificados se deben configurar algunas variables de entorno. Editar el archivo vars:

nano vars

Se deben configurar correctamente los parámetros KEY_COUNTRY, KEY_PROVINCE, KEY_CITY, KEY_ORG, y KEY_EMAIL.
En "Ubuntu 12.04.1 LTS" es necesario modificar el script whichopensslcnf para que funcione correctamente (no así en Debian 6, ya que detecta la versión de openssl correctamente):

nano whichopensslcnf

Eliminar todas las apariciones de la siguiente cadena (en la versión "OpenVPN 2.2.1 x86_64-linux-gnu" son 3 apariciones):
[[:alnum:]]
Luego de configurar el archivo vars es posible generar el certificado y clave para la Autoridad Certificante (CA):

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

El script build-ca crea el certificado de la CA utilizando los parámetros configurados en vars. Verificar que los parámetros entre corchetes estén correctos, modificar en caso contrario. Luego es posible generar el certificado y clave para el servidor de VPN:

./build-key-server server

El CN (Common Name) debe ser "server", responder 'y' dos veces para firmar y commit del certificado.
Generar los certificados para los clientes (es importante que los certificados de los clientes y del servidor estén firmados por la misma CA):

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

Nota: cada vez que se reinicia la sesión, se debe ejecutar ". ./var" para configurar las variables de entorno nuevamente.

Responder 'y' dos veces para firmar y commit del certificado.
Finalmente se deben generar los parámetros Diffie-Hellman:

./build-dh

Archivos de configuración para el servidor y clientes
Luego de construir nuestra PKI (Public Key Infrastructure), es decir nuestra infraestructura de autenticación y encriptación mediante clave pública, se deben copiar los archivos de configuración de ejemplo al directorio /etc/openvpn:

cp -a /usr/share/doc/openvpn/examples/sample-config-files/ /etc/openvpn/

Configuración del servidor
Descomprimir el archivo de configuración del servidor:

cd /etc/openvpn/sample-config-files/
gunzip server.conf.gz

Editar el archivo de configuración del servidor:

nano server.conf

Modificar las siguientes líneas:

proto tcp
;proto udp

ca easy-rsa/keys/ca.crt
cert easy-rsa/keys/server.crt
key easy-rsa/keys/server.key  # This file should be kept secret

dh easy-rsa/keys/dh1024.pem

server 10.8.0.0 255.255.255.0

De esta forma el servidor dará acceso a la red 10.8.0.0/24 y tomará la dirección IP 10.8.0.1 (los clientes tendrán una IP en el rango 10.8.0.2 a 10.8.0.254).
Si es necesario enviar reglas de ruteo a los clientes se debe agregar (por ejemplo para poder llegar a la red 10.9.0.0/24 que se encuentra detrás de la VPN):

push "route 10.9.0.0 255.255.255.0"

Por último copiar el archivo de configuración al directorio /etc/openvpn:

cp server.conf ../
cd /etc/openvpn

Configuración de los clientes
Editar el archivo de configuración de los clientes:

cd /etc/openvpn/sample-config-files
nano client.conf

Modificar las siguientes líneas:

proto tcp
;proto udp

remote 192.168.122.169 1194

En este ejemplo la dirección IP 192.168.122.169 es la dirección en la cual el servidor escucha pedidos de conexión a la VPN 10.8.0.0/24 en el puerto 1194 (puerto por defecto de OpenVPN).
Empaquetar el archivo de configuración junto con los certificados y clave:

cd /etc/openvpn
mkdir client1
cp sample-config-files/client.conf client1/
cp easy-rsa/keys/ca.crt client1/
cp easy-rsa/keys/client1.crt client1/client.crt
cp easy-rsa/keys/client1.key client1/client.key
zip -Z deflate -r client1.zip client1/*

Repetir el procedimiento para el resto de los clientes.

Iniciar el servidor para verificar la conectividad

Nota: antes de iniciar el servidor debe habilitarse IP forwarding para que funcione el ruteo de paquetes.

Habilitar IP forwarding:

echo 1 > /proc/sys/net/ipv4/ip_forward

Iniciar el servidor de VPN:

cd /etc/openvpn/
openvpn server.conf

Ejemplo:

root@ubuntu:/etc/openvpn# openvpn server.conf
Wed Nov 14 18:07:28 2012 OpenVPN 2.2.1 x86_64-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [eurephia] [MH] [PF_INET6] [IPv6 payload 20110424-2 (2.2RC2)] built on Mar 30 2012
Wed Nov 14 18:07:28 2012 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Wed Nov 14 18:07:28 2012 Diffie-Hellman initialized with 1024 bit key
Wed Nov 14 18:07:28 2012 TLS-Auth MTU parms [ L:1544 D:140 EF:40 EB:0 ET:0 EL:0 ]
Wed Nov 14 18:07:28 2012 Socket Buffers: R=[87380->131072] S=[16384->131072]
Wed Nov 14 18:07:28 2012 ROUTE default_gateway=192.168.122.1
Wed Nov 14 18:07:28 2012 TUN/TAP device tun0 opened
Wed Nov 14 18:07:28 2012 TUN/TAP TX queue length set to 100
Wed Nov 14 18:07:28 2012 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Wed Nov 14 18:07:28 2012 /sbin/ifconfig tun0 10.8.0.1 pointopoint 10.8.0.2 mtu 1500
Wed Nov 14 18:07:28 2012 /sbin/route add -net 10.8.0.0 netmask 255.255.255.0 gw 10.8.0.2
Wed Nov 14 18:07:28 2012 Data Channel MTU parms [ L:1544 D:1450 EF:44 EB:135 ET:0 EL:0 AF:3/1 ]
Wed Nov 14 18:07:28 2012 Listening for incoming TCP connection on [undef]
Wed Nov 14 18:07:28 2012 TCPv4_SERVER link local (bound): [undef]
Wed Nov 14 18:07:28 2012 TCPv4_SERVER link remote: [undef]
Wed Nov 14 18:07:28 2012 MULTI: multi_init called, r=256 v=256
Wed Nov 14 18:07:28 2012 IFCONFIG POOL: base=10.8.0.4 size=62, ipv6=0
Wed Nov 14 18:07:28 2012 IFCONFIG POOL LIST
Wed Nov 14 18:07:28 2012 MULTI: TCP INIT maxclients=1024 maxevents=1028
Wed Nov 14 18:07:28 2012 Initialization Sequence Completed

Luego de asegurarse que inicia correctamente es posible iniciar el servicio utilizando la herramienta service o desde /etc/init.d.

Clientes Windows
La instalación de OpenVPN para acceder a la VPN desde clientes Windows es extremadamente sencilla, se deben seguir los siguientes pasos:

  1. Descargar el cliente OpenVPN desde el siguiente enlace:http://swupdate.openvpn.org/community/releases/openvpn-2.2.2-install.exe
  2. Instalar el cliente con las opciones por defecto.
  3. Copiar el paquete zip que contiene los certificados, la clave y el archivo de configuración al cliente Windows.
  4. Descomprimir el contenido del zip dentro del directorio "C:\Program Files\OpenVPN\config":
  5. Renombrar el archivo "client.conf" a "client.ovpn".
  6. Iniciar el cliente desde el icono "OpenVPN GUI" que se encuentra en el escritorio de Windows.
  7. Una vez que inicia, clic derecho sobre el icono en la barra de tareas y ejecutar "Connect":En la barra de tareas notifica la conexión:Dirección IP asignada:Ruta agregada:
  8. Finalmente verificar la conexión con ping.

¿NAT o no NAT?
La pregunta si se desea realizar NAT (Network Address Translation) hacia la red privada, desde la red VPN, se debe a cuestiones de ruteo. En el ejemplo, si no se utiliza NAT, el gateway de la red privada (10.9.0.0/24) debe conocer la ruta hacia la red VPN (10.8.0.0/24) para que los clientes de la VPN puedan conectarse de forma exitosa a los hosts de la red privada. Si no es posible agregar la ruta a la red VPN en el gateway, o si directamente no hay gateway (por tratarse de una red aislada), todos los host de la red privada deben tener definida una ruta estática a la red VPN (10.8.0.0/24). Desde la red privada, el gateway para llegar a la red VPN es el servidor VPN.
Una alternativa más simple, que permite prescindir de un gateway y de rutas estáticas en los hosts, es utilizar NAT o IP masquerading. Con esta técnica, se enmascara todo el tráfico de la VPN como proveniente desde el servidor VPN. Como el servidor VPN tiene IP en la red privada, no es necesaria ninguna regla de ruteo.
NAT
En caso de utilizar NAT hacia redes detrás de la VPN (por ejemplo hacia la red 10.9.0.0/24), se debe habilitar IP forward y utilizar iptables en el servidor VPN:

# cat /etc/openvpn/iptables.sh                                                                                    
#!/bin/sh

# Habilitar reenvío de paquetes
echo 1 > /proc/sys/net/ipv4/ip_forward

# Habilitar NAT hacia la red 10.9.0.0/24
/sbin/iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -d 10.9.0.0/24 -j MASQUERADE

Editar el archivo /etc/rc.local para ejecutar el script al inicio del sistema. Agregar la linea:

/etc/openvpn/iptables.sh

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

¿Dónde puedo descargar la última versión de XRumer?

Hola a todos
XRumer 7.0.12 llegar a ser demasiado viejo
Esta versión del programa no es eficaz en el momento :(

¿Dónde puedo descargar la versión más reciente , real de XRumer?
¡Gracias!

P.S Por cierto , el precio de la XRumer después de 01/05/2013 crecerá hasta $ 650 ...
Por lo tanto , si alguien quiere vender este , escribeme a PM o Skype Mr.Marcuspet16

Instalando OpenVPN

Hola,primero felicitar por el manual de instalación de OpenVPN, para los que estamos comenzando dseguir las cosas paso a paso es una gran ayuda.

Tengo una pregunta: estoy en la parte de edición del archivo whichopensslcnf que dice: "Eliminar todas las apariciones de la siguiente cadena (en la versión "OpenVPN 2.2.1 x86_64-linux-gnu" son 3 apariciones):
[[:alnum:]]"

Lo que veo en el archivo es lo siguiente:
if [ "$OPENSSL" ]; then
if $OPENSSL version | grep -E "0\.9\.6[[:alnum:]]" > /dev/null; then
cnf="$1/openssl-0.9.6.cnf"
elif $OPENSSL version | grep -E "0\.9\.8[[:alnum:]]" > /dev/null; then
cnf="$1/openssl-0.9.8.cnf"
elif $OPENSSL version | grep -E "1\.0\.([[:digit:]][[:alnum:]])" > /dev/null; then
cnf="$1/openssl-1.0.0.cnf"
else
cnf="$1/openssl.cnf"
fi
fi

Pregunto:
que parte debo borrar?
Lo que está entrecomillado "0\.9\.6[[:alnum:]]" ??
o toda la linea: ; then
if $OPENSSL version | grep -E "0\.9\.6[[:alnum:]]" > /dev/null; then
??

Instalación Vpn en Ubuntu

Gran manual de instalación, lo he instalado perfectamente en mi Ubuntu 10.04.

Muchas gracias.

crashinghandler

chenmeinv

red bottoms
adidas shoes
chanel handbags
jordan 11
rolex watches outlet
canada goose jacket
abercrombie outlet
moncler outlet
coach cyber monday 2014
louis vuitton handbags
coach outlet store online
canada goose
coach factory store online
coach outlet
tory burch sale
burberry handbags
michael kors
givenchy
abercrombie kids
burberry outlet
michael kors outlet
timberland boots
ugg australia
true religion kids
holister outlet
timberland boots
celine outlet
timberland boots
burberry bags
cheap jordans
oakley sunglass
ray ban sunglass
timberland outlet
ralph lauren
adidas outlet
coach factory
true religion
louis vuitton outlet
ugg australia
hollister co
toms canada
christian louboutin
christian louboutin outlet
louis vuitton
coach outlet
james shoes
michael kors outlet online
michael kors
black timberland boots
coach factory outlet
cheap beats bydre
burberry outlet online
christian louboutin
mont blanc
burberry handbags
retro jordans
abercrombie & fitch
oakley sunglasses
oakley sunglasses cheap
abercrombie store
mont blanc mountain
christian louboutin outlet
air jordan 11
jordan retro
hollister jeans
louis vuitton handbags
chanel outlet
timberland uk
lebron shoes
louis vuitton
jordan 11 infrared low
burberry outlet
gucci shoes
abercrombie store
coach factory
kobe bryant shoes
gucci outlet online
tory burch outlet
louis vuitton
toms
oakley sunglasses
michael kors handbags
gucci outlet
canada goose jackets
louis vuitton handbags
coach factory outlet
abercrombie kids
celine outlet
oakley outlet
abercrombie outlet
chanel outlet
nike shoes
abercrombie
coach black friday 2014
christian louboutin
belstaff jackets
michael kors outlet online sale
mont blanc
timberland boots
true religion sale
chanel handbags
air jordan 6
coach cyber monday 2014
uggs australia
jordan 11s
burberry outlet
oakley sunglasses
the north face outlet
jordan 11 concord
rayban sunglasses
michael kors
burberry outlet
ugg boots
adidas outlet
oakley sunglasses
tods shoes
tory burch outlet online
coach outlet
white timberland boots
cheap oakleys
michael kors outlet
tory burch flats
christian louboutin sale
ugg australia
bottega veneta outlet
canada goose jackets
true religion sale
ghd hair strighteners
burberry outlet online
holister clothing
ray bans
hermes belts
tory burch outlet
black friday 2014
cheap nfl jerseys
ray ban wayfarer
beats headphones
timberland boots
toms shoes
hermes birkin
chi flat iron
abercrombie
polo ralph lauren
burberry outlet
canada goose outlet
holister clothing
christian louboutin
replica rolex watches
timberland outlet
canada goose
oakley sunglasses
dior handbags
hollister clothing store
concord 11
true religion
ralph lauren outlet
tod's shoes
true religion outlet
canada goose jacket
juicy couture
true religion
moncler jackets
ugg boots
ralph lauren
jordan retro
michael kors outlet
holister clothing
jordan 11 space jam
coach outlet store online
christian louboutin sale
michael kors outlet
coach factory outlet online
louis vuitton
red bottom christian louboutin
coach outlet store online
burberry bags
canada goose outlet
louis vuitton outlet
chanel handbags
michael kors
holister outlet
canada goose cyber monday 2014
abercrombie
moncler jackets
timberland outlet
black friday 2014
chanel outlet online
ferragamo
concords 11
kate spade outlet
tory burch outlet
burberry bags
www.louisvuitton.com
louis vuitton outlet
knockoff watches
canada goose jackets
insanity workout
polo ralph lauren
tods shoes
burberry outlet online
true religion
chanel outlet
michael kors handbags
christian louboutin outlet
jordan shoes
toms outlet
michael kors handbags
timberland pro
burberry outlet
louis vuitton
louis vuitton outlet
holister
fitflops outlet
coach cyber monday 2014
oakley sunglasses
fitflop shoes
coach outlet
replica watches
christian louboutin
ray bans
kate spade
the north face
polo ralph lauren home
louis vuitton
burberry handbags
michael kors handbags
ugg outlet
p90x workouts
burberry outlet online
north face outlet
fendi outlet
jordan retro 4
cheap uggs
hollister kids
gucci shoes
coach factory outlet
burberry outlet online
burberry outlet
canada goose cyber monday 2014
coach factory outlet
louis vuitton
christian louboutin
timberland boots
canada goose jackets
michael kors outlet online
oakley sunglasses wholesale
timberland canada
tod's shoes
gucci outlet
coach outlet
louis vuitton outlet
chanel outlet
versace outlet
oakley sunglasses
prada outlet
beats by dr dre
louis vuitton handbags
retro 11
ugg boots
christian louboutin sale
jimmy choo outlet
abercrombie fitch
cheap ray ban sunglasses
oakley sunglasses wholesale
chanel outlet
coach outlet store online
canada goose outlet
coach outlet
retro jordans
chanel bags
jordan retro 13
mont blanc
jeremy scott adidas
oakley outlet
michael kors outlet online
cheap louis vuitton handbags
adidas outlet
marc jacobs
hollister clothing store
gucci outlet
ray ban aviators
timberland outlet
black timberland boots
timberland boots
canada goose black friday 2014
oakley sunglass
ralph lauren outlet
mont blanc pens
rayban sunglasses
timberland uk
north face jackets
abercrombie
cheap ray bans
michael kors outlet online
canada goose
cheap uggs
burberry outlet
supra shoes
coach factory outlet
michael kors
ray ban clubmaster
jordan 8 bugs bunny
uggs on sale
north face outlet
ray ban sunglasses
louis vuitton handbags
burberry outlet
alexander wang
louis vuitton outlet
louis vuitton outlet stores
chanel handbags
burberry handbags
true religion
gucci belts
mont blanc pens
mulberry
imitation watches
black friday 2014
burberry handbags
true religion
red timberland boots
ray ban sunglass
cheap nfl jerseys
kevin durant basketball shoes
ugg boots sale
true religion outlet
abercrombie
true religion jeans
tods shoes
abercrombie store
christian louboutin
toms shoes
www.louisvuitton.com
kors outlet
canada goose jackets
louis vuitton handbags
toms shoes
cheap beats bydre
lululemon
hogan shoes
true religion outlet
burberry outlet
tory burch outlet
uggs outlet
canada goose
rayban sunglass
timberland boots
hollister clothing
chanel handbags
canada goose
toms shoes
michael kors uk
rayban outlet
canada goose
michael kors outlet online sale
timberland uk
oakley sunglasses
abercrombie and fitch
burberry outlet
ray ban sunglass
burberry outlet online
cheap jerseys
beats by dr dre
guess outlet
oakley vault
kors outlet
ugg boots on sale
michael kors outlet
holister
cheap jerseys
imitation watches
tory burch handbags
louis vuitton handbags
ugg slippers
michael kors outlet
canada goose outlet
timberland outlet
christian louboutin shoes
coach outlet stores
fitflops
toms shoes
louis vuitton outlet stores
michael kors outlet online
canada goose jacket
louis vuitton outlet
canada goose outlet
ralph lauren
burberry handbags
ray ban outlet
timberland uk
fake watches
jordan 3 powder blue
coach outlet store online
dolce gabbana
oakley sunglasses wholesale
burberry outlet
ugg outlet
burberry handbags
louis vuitton outlet online
gucci handbags
gucci bags
kobe shoes
louis vuitton
toms shoes
marc jacobs
michael kors uk
louis vuitton
adidas wings
hollister clothing