OPENVPN en FONERA BRIDGE

HOla… quería dejar nota de esta configuración para poder recuperarla en cuanto la necesite, y para que la gente la tenga a su alcance.

Es una configuración BRIDGE, esto quiere decir que se conecta a la VPN, y una vez conectado se le asigna una IP del mismo rango que la red destino, y para todo funcionamiento lógico, es como que esté conectado con un cable muuuuy largo a su red privada. Pudiendo imprimir en sus impresoras, mirar sus discos de red o también jugar en red, desde cualquier parte del mundo como si estuviese conectado con un cable en su red de área local.

Se necesitan varias cosas:

Instalamos el OPENVPN:

Opkg update

Opkg install openvpn

Instalamos los manejadores de compresión:

opkg install liblzo

Creamos una llave para ser distribuida entre los clientes que deseen conectarse:

En este caso lo llamaremos “secret.key”:

Openvpn –genkey –secret secret.key

Y la ponemos en el directorio que corresponda… (Mirar la configuración del openvpn)

Creamos un iniciador del túnel, este archivo lo creamos en el directorio /etc/init.d con cualquier nombre por ejemplo openw


Vi /etc/init.d/openw

#!/bin/sh /etc/rc.common

START=98

STOP=15

start() {

/etc/openvpn/startupscript up

openvpn --daemon --config /etc/openvpn/server.ovpn

}

restart() {

$0 stop

sleep 3

$0 start

}

reload() {

killall -SIGHUP openvpn

}

stop() {

killall openvpn

/etc/openvpn/startupscript down

}

Ahora por ultimo crearemos una configuración para nuestro túnel (recordemos que todo lo que está detrás de “;” no aplica a la config es solo descripción:

vi /etc/openvpn/server.ovpn

port 5000 ; Puerto donde escuchara las conexiones nuestro túnel

proto udp ;protocolo que utilizara la transmisión

dev tap0 ;Interfaz que utilizaremos para recibir las conexiones clientes

keepalive 10 120 ;configuraciones de tiempo de vida de las sesiones cada 10 segundos pregunta si la conexión está viva y si muere ;espera 120 segundos para cortar la sesión.

comp-lzo ;compresión que utilizara la comunicación dentro del túnel

status /mnt/usb/log/status.log ;archivo de log, para guardar información de registro

verb 9 ;configuración de nivel de información del archivo de registro valores entre 3 y 9 siendo 9 el mayor detalle.

;mute 20 ;indica que cantidad de mensajes iguales deja pasar antes de dejar de presentar en logs.

secret /etc/secret.key ;llave de intercambio para utilizar de firma de conexión

Hay que verificar la posición de todo lo necesario… por ejemplo el archivo de logs y el secret.key tienen que estar en el camino correcto.

Por último lo que necesitamos es crear un script que inicie la interfaz de túnel, y que cree todo lo necesario para nuestro túnel.

Este archivo puede llamarse: “startupscript”

Lo creamos, y ponemos dentro lo siguiente:

#!/bin/sh
#/etc/openvpn/startupscript
# OpenVPN Bridge Config File
# Creates TAP devices for use by OpenVPN and bridges them into OpenWRT Bridge
# Taken from http://openvpn.net/bridge.html
# Define Bridge Interface
# Preexisting on OpenWRT
br="br0"
# Define list of TAP interfaces to be bridged,
# for example tap="tap0 tap1 tap2".
tap="tap0"
case "$1" in
        up)
                # Make sure module is loaded
                insmod tun
                # Build tap devices
                for t in $tap; do
                    openvpn --mktun --dev $t
                done
                # Add TAP interfaces to OpenWRT bridge
                for t in $tap; do
                    brctl addif $br $t
                done
                #Configure bridged interfaces
                for t in $tap; do
                    ifconfig $t 0.0.0.0 promisc up
                done
        ;;
        down)
                for t in $tap; do
                    ifconfig $t 0.0.0.0 down
                done
                for t in $tap; do
                    brctl delif $br $t
                done
                for t in $tap; do
                    openvpn --rmtun --dev $t
                done
                rmmod tun
        ;;
        *)
                echo "$0 {up|down}"
        ;;
esac

Son unas pocas líneas, porque he filtrado todo lo que no necesitamos.

Esto genera que cuando conectemos, verifica la firma digital del archivo secret.key y nos asigna una ip de la red privada.

Para poder conectarnos necesitaremos una configuración del cliente, y copiar previamente la forma digital al directorio config, de nuestra instalación (Windows/Linux)

La config de cliente será la siguiente:

dev tap

proto udp

# The hostname/IP and port of the server.

# You can have multiple remote entries

# to load balance between the servers.

remote "servidor donde queremos llegar, sin comillas" 5000

# Keep trying indefinitely to resolve the

# host name of the OpenVPN server. Very useful

# on machines which are not permanently connected

# to the internet such as laptops.

resolv-retry infinite

# Most clients don't need to bind to

# a specific local port number.

nobind

# Try to preserve some state across restarts.

;persist-key

;persist-tun

# Wireless networks often produce a lot

# of duplicate packets. Set this flag

# to silence duplicate packet warnings.

mute-replay-warnings

secret openvpn.key

# Enable compression on the VPN link.

# Don't enable this unless it is also

# enabled in the server config file.

comp-lzo

# Set log file verbosity.

verb 3

# Silence repeating messages

;mute 20

# Allow LAN IP to reply to client

;float

Listo ya podríamos conectarnos. Si necesitamos información extra, podemos ver el log del servidor con el comando “logread”. Y consultar la información en el link de OPENVPN http://openvpn.net/index.php/open-source/documentation/miscellaneous/88-1xhowto.html Saludos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

*

*

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Translator

Visitas

Mis FOTOS

Your Shopping Cart

Your cart is empty

Enlaces patrocinados

Calendario

agosto 2010
L M X J V S D
« jul   sep »
 1
2345678
9101112131415
16171819202122
23242526272829
3031