OpenVPN Server en NAS4Free: Manual de instalación y configuración para crear un servidor

OpenVPN Server en NAS4Free: Manual de instalación y configuración para crear un servidor

Sergio De Luz

Si tenemos instalado NAS4Free en un servidor o en un simple ordenador, habremos notado que tiene multitud de servicios (FTP, CIFS/SMB, DLNA y un largo etcétera), sin embargo, no incorpora una funcionalidad que consideramos esencial: la integración de un servidor OpenVPN para conectarnos de forma segura a nuestra red local y administrarla de forma remota, además también podremos gestionar el propio servidor NAS4Free como si estuviera en nuestra red local.

En este manual no vamos a hablar de cómo crear certificados, qué tipo de cifrados son los más seguros etc. Para ver más información tenemos un amplio manual de servidores OpenVPN gratuitos de diferentes países y sin restricciones.

Lo primero que tenemos que hacer para instalar OpenVPN en nuestro NAS4Free es instalar los tres paquetes necesarios. Podemos hacerlo vía consola o descargando los paquetes e instalándolos manualmente

  • Easy-rsa
  • Lzo2
  • OpenVPN

Nota: La configuración ha sido probada en NAS4Free 11 64 bits en un HP ProLiant MicroServer Gen8.

Para instalarlos, accedemos vía SSH al servidor NAS, y ponemos el siguiente comando:

pkg install lzo2 easy-rsa openvpn

Una vez que los hayamos descargado e instalado, debemos irnos a SISTEMA/PAQUETES y allí veremos todos los paquetes que hemos instalado:

paquetes_nas4free_openvpn

Ahora creamos una ruta para meter todos los archivos de claves y el archivo de configuración OpenVPN. Accedemos vía SSH en modo ROOT y tecleamos lo siguiente:

mkdir -p /usr/local/etc/openvpn

A continuación metemos todos los certificados y también el fichero de configuración. Nuestro archivo de configuración es el siguiente:

daemon
server 10.8.0.0 255.255.255.0
proto tcp-server
port 1194
dev tun0

push «dhcp-option DOMAIN WORKGROUP»
push «dhcp-option DNS 10.10.2.1»
push «dhcp-option DNS 8.8.8.8»
push «redirect-gateway def1»

push «route 10.10.2.0 255.255.255.0»

tls-auth /usr/local/etc/openvpn/static.key 0
ca /usr/local/etc/openvpn/ca.crt
dh /usr/local/etc/openvpn/dh.pem
cert /usr/local/etc/openvpn/server.crt
key /usr/local/etc/openvpn/server.key

cipher AES-256-CBC
ifconfig-pool-persist /usr/local/etc/openvpn/ipp.txt
comp-lzo adaptive
keepalive 15 60
verb 3
client-to-client
user root
group wheel
persist-key
persist-tun

Usaremos Tunneling en el rango 10.8.0.X, protocolo TCP y la interfaz de túnel ponemos tun0. A continuación, hacemos redirección de Internet para salir con la IP pública de nuestro hogar, y hacemos «push» para incorporarnos a la red local interna. El resto de opciones con las de seguridad, el usuario y el grupo que ejecuta (root y wheel en el caso de NAS4Free) y también la opción client-to-client para que el servidor pueda comunicarse con los clientes (comunicación bidireccional).

Una vez que tenemos todos los ficheros de configuración en su sitio, procedemos a ejecutar el siguiente comando:

openvpn /usr/local/etc/fichero_de_configuracion.conf

En la consola debe aparecer lo siguiente (la ruta recomendada es la que os puse anteriormente: /usr/local/etc/fichero_de_configuracion.conf)

openvpn_prueba

Si ponemos en consola «ifconfig» veremos la interfaz tun0 conectada. Si nos vamos a mirar el LOG del sistema en DIAGNÓSTICO/LOG veremos la incialización de OpenVPN y los posibles errores, finalmente debe poner el siguiente mensaje: servidor openvpn[1577]: Initialization Sequence Completed. Este mensaje significa que todo ha salido correctamente. Es posible que os salga algún WARNING con el tema de los certificados y los permisos, poned:

chmod 700 *

Para que sólo el propietario (root) tenga permisos y el resto no pueda hacer nada con ellos.

Una vez que hemos hecho esto, debemos irnos a SISTEMA/AVANZADO/RC.CONF y poner los valores de la siguiente captura de pantalla (recuadro rojo):

rc_conf_nas4free_openvpn

openvpn_configfile="/usr/local/etc/openvpn/openvpn.conf"
openvpn_enable="YES"
openvpn_if="tun"

Ahora nos vamos a sysctl.conf y ponemos los valores de la siguiente captura (recuadro rojo):

sysctl_conf_nas4free_openvpn

net.inet.ip.forwarding=1

Ahora nos debemos ir a la interfaz de configuración de nuestro router y hacer lo siguiente:

  • Abrir un puerto hacia la IP privada del servidor NAS4Free, el puerto que hemos usado nosotros es 1194 TCP, abrimos únicamente este.
  • Crear una ruta estática con los siguientes valores: 10.8.0.0 ; 255.255.255.0 ; IP_PRIVADA_SERVIDOR

fritz

Guardamos los cambios y reiniciamos el router, una vez que se haya reiniciado, procedemos a reiniciar el servidor NAS4Free y comprobamos si la secuencia de inicialización es correcta y a continuación, procedemos a conectarnos con un cliente.

5 Comentarios