¿Quieres saber cómo tengo configurado el servidor NAS en mi red? Conoce todos los detalles

Hoy en día una gran cantidad de hogares disponen de un servidor NAS donde centralizar todos sus archivos. Estos servidores NAS tienen un precio desde los 150 euros hasta más de 600 euros para entornos domésticos. Hoy os voy a enseñar qué servidor NAS tengo yo en mi hogar, y cómo lo tengo configurado.

Anteriormente en RedesZone os he explicado cómo tengo configurada mi red local doméstica, es tal vez algo más avanzada que una red doméstica corriente, ya que necesito unos requisitos específicos debido a mi trabajo y a los ISP con los que tengo cobertura. En el siguiente artículo podéis ver todos los detalles:

Muchos de vosotros me habéis pedido cómo tengo configurados los diferentes routers y equipos en mi red local, en este artículo que publiqué ayer podéis ver en detalle cómo tengo configurado el corazón de mi red, el ASUS RT-AC88U.

Hoy os voy a explicar qué servidor NAS tengo en mi hogar, qué sistema operativo tengo actualmente y cómo lo tengo configurado.

Este es mi servidor NAS: HP ProLiant MicroServer Gen 8

El servidor NAS que utilizo en mi hogar es el HP ProLiant MicroServer Gen 8, un equipo que cuando yo tuve la oportunidad de analizar en RedesZone costaba alrededor de 350 euros aproximadamente. Ahora este fantástico servidor está por menos de 200 euros en Amazon, una auténtica ganga.

HP ProLiant MicroServer Gen8

Este servidor NAS tiene varias versiones con diferentes procesadores (incluyendo Intel Xeon), mi versión es la más básica pero con algunos cambios. El procesador que tengo es el Intel® Celeron®G1610T, tiene dos núcleos para gestionar 2 hilos simultáneamente, la velocidad de reloj es de 2.3GHz y es un procesador de bajo consumo, tiene un TDP máximo de 35W. La memoria RAM DDR3 ECC por defecto era de 4GB, pero recientemente he ampliado la RAM a lo máximo (16GB de capacidad) con dos unidades de Kingston ValueRAM DDR3 1600 PC3-12800 8GB ECC y funciona perfectamente, reconociendo la RAM inmediatamente. En Internet hay diferentes guías para instalar a este servidor un procesador Intel Xeon, aunque el consumo será mayor y también el calor disipado.

Este servidor NAS tiene dos puertos Gigabit Ethernet para la LAN, por lo que si el sistema operativo lo soporta, se puede hacer Link Aggregation y tener una velocidad de hasta 2Gbps. Además, también incorpora HP iLO para administrar el servidor como si estuvieras físicamente delante de él. Otras características muy interesantes es que tiene una ranura para tarjetas micro SD donde podremos cargar el sistema operativo, también tiene un puerto USB 2.0 en su interior para instalar el SO en un pendrive.

En este servidor NAS tengo una gran cantidad de servicios, Samba, FTP, DLNA, monitorización del SAI, servidor OpenVPN (el primario) etc.

HP iLO

Esta característica del servidor para mí es fundamental, me permite monitorizar todas las temperaturas del NAS y también reiniciarlo de manera remota e incluso apagarlo. Si el sistema operativo principal tiene un fallo crítico, puedo entrar a través del iLO para reiniciar el sistema entero. La interfaz es web y también permite administración por SSH, pero únicamente tengo habilitada la administración web a través de HTTPS únicamente, además, solo puedo acceder a esta administración a través de la red local doméstica, y no desde Internet.

Con esta configuración me aseguro que nadie de fuera de la red local pueda tener acceso a esta interfaz, en caso de que el sistema operativo principal se bloquee y no esté en mi casa, accederé vía OpenVPN contra el servidor del router, y a continuación al iLO del servidor. Por este motivo tengo dos servidores OpenVPN ubicados en sitios distintos.

hp_ilo_1

En la pantalla principal del HP iLO tenemos toda la información del sistema, podremos ver qué procesador tenemos instalado, la memoria RAM (fijaos cómo tengo 16GB), y también si hay una tarjeta micro SD presente en el servidor.

Otra característica muy importante es que nos permite acceder de manera remota con interfaz gráfica contra el sistema operativo, como si conectásemos el servidor vía VGA a un monitor, podremos interactuar con él fácilmente, y todo ello gracias al HP iLO. Por último, también podemos ver un mapa de calor con las temperaturas del servidor que nos muestran los sensores.

La dirección IP de este HP iLO es diferente del sistema operativo principal, es como si conectara otro host a mi red local. Una vez que habéis visto cómo es el HP iLO, paso a describir mi sistema operativo principal.

Sistema operativo principal: NAS4Free 11

El sistema operativo que utilizo en este servidor HP es NAS4Free 11. Este sistema operativo está basado en FreeBSD 11 y nació como un fork del conocido FreeNAS, llevo usándolo desde la versión NAS4Free 9 y la verdad que estoy encantado con el rendimiento y la estabilidad, aunque en el pasado he tenido problemillas que solo me afectaban a mí con la configuración que tenía realizada. Este problemilla es porque en el NAS tengo conectados dos cables de red con Link Aggregation, NAS4Free 11 lo soporta sin problemas y funciona, pero por alguna extraña razón en determinadas circunstancias (aplico cambios o reinicio un servicio del NAS) tengo un kernel panic, algo que con NAS4Free 9 no ocurría nunca.

hp_nas4free_1

El sistema operativo lo tengo instalado en una tarjeta micro SD de 16GB de capacidad de marca Samsung, no es nada del otro mundo en cuanto a especificaciones, pero es suficiente para mi uso del sistema. Esta tarjeta micro SD va directamente conectada a la ranura para tarjetas micro SD del propio servidor. Por último, el único puerto USB que tengo ocupado es un USB 2.0 con el SAI Salicru que tengo en mi hogar, de esta manera, el NAS monitoriza el estado del SAI y me envía notificaciones por e-mail si hay un corte en el suministro eléctrico.

hp_nas4free_2

A nivel de configuración global, únicamente permito administración vía web a través de HTTPS, nada de HTTP en mi hogar. También tengo habilitada la administración vía SSH a través de la red local doméstica únicamente. Si necesito acceder a mi NAS desde Internet uso OpenVPN, ya sea contra el propio servidor NAS o contra el servidor del router. Por supuesto el usuario por defecto «admin» está cambiado, así como la contraseña de acceso.

La conexión HTTPS es TLS 1.2, el certificado es el autogenerado por NAS4Free que es RSA de 2048 bits y con SHA256 como firma.

hp_nas4free_3

Monitorización y red local

Una de las novedades de NAS4Free 11 es la auto-monitorización de la CPU, discos, consumo de RAM y un largo etcétera, gracias a su configuración y a sus gráficos podremos tener todo bajo control. Toda la configuración es realmente fácil y rápida, seleccionar lo que quieres monitorizar, aplicar cambios y ver todas las gráficas en otro menú.

A nivel de red, tengo el Link Aggregation con DHCP IPv4, aunque siempre me proporciona la misma IP debido a que tengo Static DHCP en el router principal. Si os fijáis, tengo un MTU de 9K, Jumbo Frames, igual que el switch HP, el router ASUS y el resto de PC de sobremesa de mi hogar. IPv6 lo tengo desactivado por el momento, si algo no lo uso, lo desactivo.

hp_nas4free_5

Almacenamiento

En este servidor NAS tengo actualmente tres discos WD Red de 4TB cada uno de ellos, uno de ellos es el de última generación, los otros dos son de primera generación. Llevan más de 2 años y medio online permanentemente, uno de ellos ya tiene un sector que falla y es probable que lo tenga que sustituir pronto.

El sistema de archivos que uso en todos los discos es ZFS, el sistema de archivos más avanzado que existe en la actualidad y cuyo rendimiento e integridad de los datos es excelente. Para mí un servidor NAS debe ser confiable, es decir, guardar todas las copias de seguridad y que nunca se pierdan por corrupción de datos, un disco duro estropeado o un fallo del sistema.

hp_nas4free_6

Por este motivo, el Pool ZFS que tengo está en modo MIRROR, es decir, automáticamente el sistema crea un espejo con estos 3 discos. Es como un RAID 1 pero con 3 discos en un pool, todos los discos tienen exactamente los mismos datos. De esta forma, pueden romperse hasta 2 discos a la vez sin tener pérdida de datos.

Hasta hace una semana tenía un MIRROR con únicamente 2 discos, pero el S.M.A.R.T ya me avisó que uno de ellos tenía un error en un sector, así que tuve que comprar un disco adicional y meterlo en el pool y «curarme en salud».

hp_nas4free_7

El sistema ZFS cuanta más RAM tengamos, mayor rendimiento tendremos, sin embargo, para que no consuma toda la RAM de mi sistema y pueda virtualizar SO, la tengo limitada a como máximo 5GB de consumo.

La temperatura de los discos está en torno a los 32ºC actualmente, en verano la temperatura suele subir hasta los 35ºC. La refrigeración de este servidor podría ser mejor, ya que únicamente hay un ventilador extrayendo aire de su interior, de hecho el procesador tiene un disipador pasivo, pero es mucho mejor que la de servidores NAS de fabricantes como Synology por ejemplo.

hp_nas4free_22

Usuarios en el sistema

En NAS4Free tengo varios usuarios dados de alta, para cada uno de los miembros de la familia, con diferentes permisos y asignados a diferentes grupos. Esto es como cualquier sistema Linux, añades una ruta «home» y luego los añades como grupo secundario a diferentes grupos. Tal y como podéis ver, el primero de ellos es el mío y tiene permisos para gestionar diferentes servicios, e incluso conectarme vía SSH al equipo (bash) y a la interfaz gráfica de usuario. El resto únicamente tiene permisos en Samba/FTP de su propio usuario.

hp_nas4free_9

Servicios

Los servicios que tengo en mi NAS son bastante básicos la verdad, no tengo unos requisitos nada del otro mundo. Un servidor Samba para que todos los equipos de la red local accedan fácilmente, configurado para optimizar al máximo el rendimiento y la compatibilidad con diferentes SO incluyendo los móviles. Cada usuario se enjaula directamente en su «home», excepto el mío de administrador que puede acceder a todos ellos. Por supuesto, nada de acceder al Samba con usuarios invitados o sin login en el sistema.

El FTP sí lo tengo más personalizado ya que doy servicios al exterior, desde Internet puedo conectarme vía FTP al NAS y descargar o subir archivos. Uso un puerto que no es el por defecto, limito el número de clientes a la vez pero no el de conexiones simultáneas para que descarguen lo más rápido posible, también limito el número de intentos de login e incluso baneo a las IP que lo intentan durante 4 horas y no lo consiguen.

Solo permito usuarios autenticados, uso FXP para transferir de FTP a FTP sin pasar por un equipo, y el resto de opciones las podéis ver en las capturas.

Algo que sí me gustaría detallar es que utilizo también FTPES, utilizo TLS para la comunicación cifrada y segura de manera opcional para las conexiones FTP. En el siguiente artículo tenéis un completo manual de cómo configurarlo y cómo crear los certificados.

El certificado lo renové hace poco, es un RSA de 4096 bits y SHA256 para firma. La sesión va cifrada con AES-256-CBC para tener la máxima seguridad posible.

Otro detalle importante es que al estar detrás de la NAT, utilizo una IP Masquerade personalizada, si la IP de origen no es interna, irá por la IP Masquerade, de lo contrario directamente por el direccionamiento interno. De esta forma, puedo acceder desde la red local doméstica e Internet con la máxima velocidad posible en ambos casos. Este detalle es importante porque si pongo IP Masquerade globalmente, la velocidad de la LAN será la misma que mi conexión a Internet, hace un pequeño bucle por el NAT Loopback del router.

En la pestaña de módulos tengo activados un par de ellos para proteger el servicio FTP, todo ello se hace vía web, nada de comandos.

El servidor SSH es otra parte fundamental del servidor NAS, uso un puerto que no es por defecto y una configuración personalizada para aumentar un poco más la seguridad y no dejar nada al azar. Solo permito que un determinado usuario dado de alta en el sistema se conecte, root por supuesto deshabilitado. Debería usar claves SSH pero a este servidor SSH únicamente se puede acceder a través de la LAN, si quiero acceder desde fuera me conecto por OpenVPN que es el punto de entrada a mi red local, y aquí sí que uso claves criptográficas.

hp_nas4free_15

Otro servicio que utilizo continuamente es el servidor de medios DLNA, NAS4Free 11 incorpora Fuppes y también el conocido miniDLNA. Yo personalmente uso Fuppes porque es el que usaba en NAS4Free 9, y me funciona perfectamente en la TV y demás equipos, si algo va bien no lo toco.

hp_nas4free_16

Además del DNS Dinámico del router, también tengo otro adicional en este servidor NAS:

hp_nas4free_17

Tampoco puede faltar en un NAS el servicio BitTorrent, utilizo Transmission última versión, con la configuración por defecto, de hecho, la administración es vía HTTP, aunque con autenticación eso sí. A esta administración solo se accede en la LAN, por lo que si necesito ver el estado de algún Torrent desde Internet, me conecto vía OpenVPN.

hp_nas4free_19

Otros servicios

Otro servicio muy importante es NUT, monitorizo el sistema de alimentación ininterrumpido (SAI) de mi hogar, permitiendo enviarme e-mails en caso de fallo o problema eléctrico. Por supuesto, el servidor está configurado para que si se corta el suministro eléctrico se apague automáticamente pasados 30 minutos, de esta forma, aún quedaría batería para alimentar los routers (VoIP).

Los dos ordenadores de sobremesa están configurados en modo «cliente» para preguntar el servidor NAS si hay un corte de luz, y en caso de que lo haya y estén encendidos, apagarse a los 3 minutos para ahorrar batería del SAI.

hp_nas4free_18

En este NAS también utilizo un Windows 10 virtualizado con VirtualBox, esto es básicamente para pruebas y siempre la máquina está apagada. La instalación y puesta en marcha de VirtualBox es realmente fácil y rápida.

hp_nas4free_20

Por último, algo que echo mucho de menos en un sistema operativo como NAS4Free es OpenVPN. No concibo un servidor NAS sin la posibilidad de tener un servidor VPN y acceder a la red local. Gracias a FreeBSD, he instalado OpenVPN manualmente, poniendo los ficheros de configuración necesarios y configurándolo para que este servicio OpenVPN se inicie con el sistema.

hp_nas4free_23

En este manual tenéis todos los detalles de cómo instalar OpenVPN en NAS4Free, aunque os recomiendo hacerlo con el propio comando «pkg install paquete» en lugar de subirlos vía GUI.

Hasta aquí he llegado explicando cómo es mi servidor NAS y cómo lo tengo configurado, espero que os haya gustado. No tengo ni la mitad de los servicios de NAS4Free activados, únicamente los que necesito, siempre hay que adaptarse a las necesidades de cada uno.