
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:
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 tun0push «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.keycipher 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)
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):
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):
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
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.