Configuración completa de TrueNAS CORE para montar un servidor NAS

Configuración completa de TrueNAS CORE para montar un servidor NAS

Sergio De Luz

Si llevas años en el mundo de los servidores NAS, estamos seguros que conoces el sistema operativo FreeNAS, uno de los mejores sistemas operativos con todos los servicios necesarios para exprimir al máximo el hardware de tu servidor. Aunque existen fabricantes muy buenos y conocidos como QNAP, Synology o ASUSTOR, si quieres montarte tu propio NAS con el hardware que quieras, es muy recomendable contar con TrueNAS CORE (el nuevo nombre de FreeNAS) para montártelo por tu cuenta. ¿Quieres conocerlo todo sobre este sistema operativo orientado a NAS y cómo configurarlo desde cero?

En RedesZone os vamos a ofrecer una completa guía para configurar el servidor NAS desde cero, podrás ver configuraciones específicas de cómo tener el almacenamiento, cómo configurar TrueNAS CORE en una máquina virtual para realizar las pruebas, cómo configurar la red, los principales servicios como Samba, FTP, DLNA, SSH o BitTorrent, e incluso os enseñaremos cómo configurar un servidor OpenVPN en el servidor NAS. Uno de los aspectos más interesantes de TrueNAS CORE, es que está basado en FreeBSD, por tanto, podremos hacer uso del sistema de archivos ZFS, uno de los más avanzados y que nos aportarán la mejor integridad de datos posible.

Índice de contenidos:

Principales características

TrueNAS CORE es el nuevo nombre del popular sistema operativo orientado a NAS FreeNAS, un sistema operativo que está orientado específicamente para funcionar como un servidor NAS profesional de alto rendimiento. Este sistema operativo se puede instalar en cualquier plataforma x64 gracias a que el sistema operativo base es FreeBSD en su versión 12. TrueNAS incorpora una compatibilidad con una gran cantidad de hardware, ya sea placas base y tarjetas de red, que son los dos dispositivos que más problemas pueden dar. Las siglas de NAS significan «almacenamiento conectado en red», y TrueNAS facilita enormemente la utilización y la configuración de todos los servicios que debe tener un servidor NAS, como el servidor Samba, FTP, NFS, el almacenamiento con RAID, el acceso remoto vía OpenVPN y mucho más.

La característica más importante de TrueNAS CORE es la incorporación del sistema de archivos ZFS (OpenZFS), uno de los sistemas de archivos más avanzados, completos y rápidos que existen actualmente, gracias a ZFS, tendremos la mejor integridad posible en nuestros datos, además, podremos configurar diferentes niveles de RAID-Z para proteger la información de un posible problema de hardware en los discos. Por supuesto, podremos configurar el disco cifrado con AES-XTS, configurar el SMART para ver y detectar errores en el disco y estar advertidos de que existe un problema, y también podremos configurar reportes por email bajo demanda o cuando suceda algún evento.

TrueNAS Core incorpora una gran cantidad de servicios para exprimir al máximo el hardware del servidor, concretamente, tendremos los siguientes servicios:

  • Directorio Activo
  • LDAP
  • NIS
  • Kerberos
  • AFP
  • iSCSI
  • NFS
  • WebDAV
  • CIFS/SMB (Samba)
  • FTP (Proftpd)
  • Servidor DNS Dinámico
  • Cliente OpenVPN
  • Servidor OpenVPN
  • Rsync
  • S3
  • SNMP

Otras características extras de este sistema operativo, son las siguientes:

  • Plugins: podremos instalar una gran cantidad de software adicional de forma fácil y rápida
  • Jails: podremos crear jails para almacenar los diferentes plugins de forma segura y aislada del sistema operativo
  • Máquinas virtuales para instalar cualquier SO
  • Cliente BitTorrent con Transmission
  • Acceso a la consola para línea de comandos

También nos gustaría destacar que TrueNAS CORE permite la instalación de una gran cantidad de plugins de forma casi automática, no obstante, siempre vamos a poder instalar cualquier software de manera manual a través de SSH o por consola.

En cuanto al desarrollo de este sistema operativo y sus actualizaciones, uno de los principales aspectos que valoramos en RedesZone son las actualizaciones. En el caso de este sistema operativo, el proyecto está más vivo que nunca con el nuevo cambio de nombre, y gracias a la empresa IxSystems que es la que está detrás del desarrollo del sistema operativo. Por supuesto, debemos tener en cuenta que este SO está basado en FreeBSD, por tanto, todas las novedades y parches de seguridad incorporados en FreeBSD, también los tendremos en TrueNAS.

Instalación y puesta en marcha

Lo primero que tenemos que hacer es meternos en la web oficial de TrueNAS Core, e irnos a la sección de descargas. En este menú nos descargaremos una única imagen ISO para equipos x64 que nos permitirá instalarlo fácilmente vía DVD o USB booteable, un detalle muy importante son los requisitos recomendados de hardware, ya que es recomendable tener 8GB de memoria RAM como mínimo, ya que tendremos una gran cantidad de servicios funcionando, y el propio sistema de archivos ZFS consume mucha RAM si usamos deduplicación.

Una vez que lo hayamos descargado, podremos copiarlo a un DVD o a un USB booteable que será lo más normal, posteriormente ya solo faltaría arrancarlo y proceder con el asistente de configuración que tenemos disponible.

En RedesZone vamos a usar una máquina virtual con VMware donde añadiremos un total de 6 discos virtuales, para enseñaros cómo se configura el ZFS con diferentes discos. Abrimos el VMware o cualquier otro programa de virtualización como VirtualBox.

En el asistente de configuración de la máquina virtual, vamos a elegir la imagen ISO recién descargada, le damos un nombre a la máquina virtual, indicamos el tamaño del primer disco donde estará el sistema operativo (podemos poner 100GB, por ejemplo). Una vez que terminemos el asistente, es recomendable ajustar los parámetros de hardware, lo primero que debemos hacer es poner 8GB de memoria RAM, también sería recomendable poner varios núcleos de procesador para que funcione más rápido, y, por último, pondremos un total de 6 discos de 1TB de capacidad (virtual)

Cuando ya tengamos todo configurado, procedemos a arrancar el sistema operativo, y podremos ver el logo de TrueNAS y diferentes opciones, aquí no tenemos que tocar absolutamente nada, dejamos pasar unos segundos y arrancará automáticamente para proceder con la instalación del sistema operativo.

Cuando se inicie el asistente de configuración, debemos elegir la opción de «Install / Upgrade», y elegir el primer disco duro que hemos añadido a la máquina virtual, el de 100GB de capacidad que tenemos de forma predeterminada. Nos preguntará que, si queremos proceder con la instalación, todos los datos se borrarán, a continuación, tendremos que poner una contraseña de root para acceder al asistente, pero también podremos no ponerla. Una vez que lo hayamos configurado, debemos elegir si tenemos UEFI o BIOS, en nuestro caso elegimos BIOS, pero esto depende de la placa de cada servidor. Por último, nos preguntará si deseamos crear una partición de 16GB para swap en el dispositivo de arranque.

Una vez que esté instalado todo, nos indicará que ha terminado la instalación, y que reiniciemos el servidor. Pulsamos en OK, y salimos del menú de TrueNAS y procedemos a reiniciar el equipo normalmente. Una vez reiniciado, nos saldrá un listo de opciones de configuración básicas, pero también nos saldrán las direcciones IP para acceder a la administración vía web del sistema operativo, tanto con el protocolo HTTP (no seguro) como también el protocolo HTTPS (seguro).

En este menú básico por consola, podremos configurar la interfaz de red, la dirección IP, el Link Aggregation, si tenemos VLANs, la ruta por defecto, crear rutas estáticas, configurar los DNS, resetear la clave de root, resetear la configuración completa a valores de fábrica, ejecutar la consola para introducir comandos, reiniciar el servidor y también apagar el servidor NAS.

Una vez que ya tenemos instalado el sistema operativo, vamos a ver todas las opciones disponibles.

Opciones generales del sistema operativo

Cuando introducimos en nuestro navegador la URL de acceso al sistema operativo, tendremos que introducir el usuario y contraseña, el usuario es «root» y la contraseña la que nosotros hayamos fijado en el asistente de configuración.

Una vez dentro, podremos ver diferentes menús de configuración y de visualización de los diferentes parámetros. Por ejemplo, tendremos acceso a la información del sistema operativo, las características y el estado de la CPU, RAM y también de la interfaz de red. No obstante, cuando configuremos el almacenamiento también lo podremos ver, para administrarlo correctamente.

Principal

En el menú principal del sistema operativo podremos conectarnos a TrueCommand Cloud para monitorizar y administrar el NAS desde la nube, esto es algo opcional bastante interesante. En la parte superior derecha podremos ver el estado de todos los procesos y si está todo funcionando correctamente, las alertas que tengamos, menús para cambiar la contraseña, preferencias y las claves API, también podremos cerrar sesión, reiniciar el servidor NAS e incluso apagarlo fácilmente.

Cuentas

En la sección de «Accounts» podremos crear los diferentes usuarios y grupos, asignando diferentes grupos a un mismo usuario y, por supuesto, aplicarle diferentes permisos de acceso.

Sistema

En la sección de «Sistema» podremos configurar la interfaz gráfica de usuario con diferentes perfiles, también podremos cambiar el puerto de administración, los protocolos TLS a utilizar, el idioma de la interfaz gráfica de usuario y mucho más. Un detalle importante, es que, aunque tengamos el idioma en español, la traducción no está completa, por lo que veremos muchos menús y opciones de configuración en inglés.

En esta sección podremos configurar los servidores NTP, el arranque del sistema, opciones de acceso por consola y GUI y otros parámetros avanzados, configurar el servidor SMTP para el email, configurar el dataset del sistema (primero tenemos que crearlo), el reporting que tenemos, las configuraciones de alertas, las credenciales Cloud, las conexiones SSH, las claves SSH, e incluso las variables internas (Tuneables), por último, también tendremos una opción de «Actualización». A diferencia de otros sistemas operativos para NAS, la actualización de TrueNAS CORE es realmente fácil y rápida, además, podremos realizar una actualización manual.

Por último, también podremos configurar y crear nuevas CA (Autoridad de Certificación), los certificados digitales para el servidor/cliente VPN, configurar los DNS de ACME, acceso al soporte y también a la autenticación en dos factores que tenemos disponible.

Tareas

En la sección de «Tareas» es donde podremos programar el servidor NAS para realizar diferentes tareas programadas, podremos configurar trabajos en el Cron, podremos configurar scripts en el inicio y apagado del sistema, tareas a través de Rsync para sincronizar carpetas y archivos, tests programados de SMART para comprobar la salud de los discos, tareas para realizar snapshots de ZFS de manera periódica, las tareas de replicación y resilvering, asimismo también podremos programar tareas de scrubbing y tareas de sincronización Cloud.

Todas las tareas repetitivas las tendremos en este menú, con el objetivo de automatizar al máximo el servidor NAS.

Red

En la sección de «Red» es donde podremos configurar las diferentes interfaces de red, si es que tenemos varias, también podremos ver la ruta predeterminada y los DNS. También podremos configurar los DNS que nosotros queramos, e incluso configurar la puerta de enlace predeterminada. Por supuesto, si tenemos varias interfaces de red podremos hacer un Link Aggregation fácilmente, ajustar el MTU, y otras opciones avanzadas a nivel de red.

Almacenamiento

La parte de almacenamiento es la más importante de los servidores NAS, en esta ocasión tenemos el sistema de archivos ZFS (OpenZFS) con la última versión. Podremos crear diferentes vdev configurados como stripe, mirror, y diferentes niveles de RAID-Z, e incluso podremos configurar diferentes discos como caché para acelerar la lectura y escritura de los datos. Otras opciones que tenemos disponibles son la posibilidad de crear todos los pools que queramos, y todos los dataset en un determinado pool. Por último, no debemos olvidar que una de las opciones más interesantes de ZFS es la compresión en tiempo real, la deduplicación para ahorrar mucho espacio de almacenamiento (consume muchísima RAM), y también todas las opciones ACL disponibles y los Snapshots para protegernos de ataques de ransomware. Por último, también tendremos la posibilidad de configurar los discos cifrados, de esta forma, todos nuestros datos estarán encriptados.

En RedesZone os vamos a ofrecer un completo tutorial (más abajo) de cómo configurar el almacenamiento.

Directory Services

En la sección de servicios de directorio, podremos configurar el Active Directory si tenemos una red Windows, también podremos configurar el LDAP, NIS y Kerberos.

Sharing

En la sección de «Sharing» es donde podremos configurar en detalle los diferentes protocolos para compartir archivos y carpetas en red local, tenemos AFP, iSCSI, NFS, WebDAV y también SAMBA, ideal para entornos Windows.

Sin embargo, en esta sección no encontramos algo tan importante como el servidor FTP, esto se encuentra en «Servicios».

Servicios

En la sección de «Servicios» es donde vamos a poder activar o desactivar los diferentes servicios, y también configurar si queremos que se inicien junto con el servidor NAS. Por supuesto, si pinchamos en el lápiz de la derecha, accederemos directamente a su configuración. En esta sección podremos encontrar todos y cada uno de los servicios del NAS, como los de compartir archivos en red local e Internet, OpenVPN tanto cliente como servidor, el SMART, Rsync y mucho más.

Plugins y jails

Uno de los aspectos que más nos gusta de TrueNAS es la posibilidad de instalar plugins para aumentar las funcionalidades del equipo. ¿Quieres instalar un Nextcloud o un Plex Media Server? Podrás hacerlo de manera muy fácil y rápida, simplemente tienes que pinchar en el icono del plugin, seleccionar un pool donde instalar todo el software en un jail, y seguir el asistente de configuración.

Respecto a los jails, debemos recordar que FreeBSD hace uso de esto para almacenar el software compartimentado y que no influya en el resto del sistema operativo, es una implementación de virtualización a nivel de sistema operativo, como por ejemplo el popular Docker, pero es nativo de FreeBSD.

Reporting, Máquinas Virtuales, Procesos, Consola y Guía oficial

Otros menús que tenemos en este sistema operativo es la parte de Reporting donde veremos el estado de la CPU y RAM en detalle, la sección de máquinas virtuales, donde podremos instalar VM con sistemas operativos completos como Windows, posibilidad de ver los procesos de TrueNAS, y también acceder a la consola vía web del sistema y un enlace a la guía oficial de configuración de este sistema operativo.

Hasta aquí hemos llegado con nuestro repaso a los principales menús de TrueNAS, ahora vamos a configurar el almacenamiento y diferentes servicios.

Configuración del almacenamiento con ZFS

El sistema de archivos ZFS es uno de nuestros favoritos para los servidores NAS, está diseñado para proporcionarnos la mejor integridad de datos posible, y también un gran rendimiento y eficiencia, ya que tenemos compresión en tiempo real y deduplicación, por lo que ahorraremos un gran espacio de almacenamiento en nuestros discos. Otras características son que podremos crear múltiples pools y dataset, e incluso instantáneas de forma nativa, no como otros sistemas de archivos que se hace vía software, aquí en ZFS son nativas gracias a su esquema «Copy on Write».

Para configurar el almacenamiento, lo primero que tenemos que hacer es irnos a la sección de «Storage / Disks», y aquí veremos todos los discos que tenemos actualmente en el servidor. Lógicamente, nosotros vamos a usar todos los discos de 1000GB, ya que el disco de 100GB es el que se utiliza para el sistema operativo. Si desplegamos la información de los discos, podremos ver el tipo de disco, fabricante, el estado del SMART y otras opciones típicas. También podremos ejecutar un test anual, ver los resultados del SMART y también formatear los discos si es que tenían información.

Una vez que nos hayamos asegurado de que todos los discos los ha reconocido correctamente, vamos a crear los «pools» con los discos en diferentes configuraciones.

ZFS – Pools

En la sección de «Storage / Pools» pinchamos en «Add» y nos saldrá un pequeño asistente de configuración. En el siguiente menú tendremos que pinchar en «Create new pool» que es la opción predeterminada, ahora pinchamos en el botón «Create Pool» y nos saldrá el nombre del pool a crear, y también si queremos crearlo cifrado (encriptado), ideal para proteger toda la información interna.

Una vez que hayamos puesto un nombre, y si queremos o no que todo el pool esté cifrado, llega el momento de elegir uno o varios discos que tenemos disponibles.

Si pinchamos en el botón de «ADD VDEV» podremos crear un VDEV normal de datos, pero también de caché, log, hot spare, metadatos y dedup, lo más normal es crear un pool de datos, y posteriormente si queremos mejorar el rendimiento, crear diferentes pools de caché, log y más.

En el menú de «Available Disks» es donde tendremos que elegir los discos para posteriormente añadirlos al pool de dispositivos virtuales (Vdevs). Dependiendo del número de discos seleccionados, podremos elegir un modo de configuración en la sección de «Data Vdevs» justo debajo. Debemos recordar el funcionamiento de los diferentes niveles:

  • STRIPE: Es un RAID0 de los discos elegidos, la capacidad es la suma de todos los discos.
  • Espejo: es un RAID1 de los discos elegidos, pero podemos configurar más de 2 discos como espejo.
  • RAID-Z1: permite que falle un disco, es como un RAID 5. Si todos los discos tienen la misma capacidad, la capacidad total es la suma de todos los discos menos la capacidad de un disco.
  • RAID-Z2: permite que fallen dos discos, es como un RAID 6. Si todos los discos tienen la misma capacidad, la capacidad total es la suma de todos los discos menos la capacidad de dos discos.
  • RAID-Z3: permite que fallen tres discos.

Tal y como podéis ver, la configurabilidad es bastante amplia a la hora de crear diferentes niveles de RAID-Z.

Una vez que hayamos creado el pool, tendremos la posibilidad de agregar un dataset, un zvol, e incluso editar ciertas opciones, configurar cuotas de disco para usuarios y grupos, así como crear un snapshot bajo demanda.

ZFS – Datasets

Respecto a la creación de un dataset, debemos tener en cuenta que tenemos dos dataset diferentes, los «filesystem» que es el dataset por defecto y que permite almacenar archivos normales y directorios, pero también tenemos «zvol» que es un dispositivo por bloques, para usar discos virtuales para entornos virtualizados y otros usos. Una de las partes más importantes es habilitar la compresión por defecto, ya sea con lz4 o con el nuevo algoritmo de compresión zstd que nos permite configurar diferentes niveles de compresión, para tener un mayor ratio de compresión y que sea más lento, o que sea más rápido y tenga menor ratio de compresión.

También podremos configurar la sincronización de ZFS, así como configurar el atime, la deduplicación, el comportamiento de los snapshots y otras muchas opciones de configuración avanzadas, sobre todo a nivel de ACL (Listas de Control de Acceso).

En el caso de querer crear otro pool con otro dataset, podremos hacerlo fácilmente desde estos menús que os hemos enseñado, simplemente agregaremos uno nuevo con el nivel RAID-Z que nosotros deseemos y listo.

Antes de terminar con el almacenamiento ZFS, nuestra recomendación es que configuréis instantáneas diarias, debemos recordar que esta característica nativa de ZFS nos permitirá volver hacia atrás en caso de borrar los archivos por error o por un ransomware. En otros sistemas de archivos esto no es posible de forma nativa, por lo que se hace a través de software, en ZFS tenemos instantáneas casi ilimitadas, aprovéchalo.

Configuración de usuarios y grupos

La creación de usuarios y grupos en este servidor NAS con TrueNAS es muy fácil, en la sección de grupos podremos crear un nuevo grupo o varios, con el nombre que nosotros queramos, para posteriormente añadir a diferentes usuarios a este grupo recién creado. Lo más importante es si todos los usuarios que pertenezcan a este grupo queremos que tengan permisos sudo y también si se permite autenticación con samba para compartir archivos en red local.

En cuanto a las configuraciones de los usuarios, podremos configurar el nombre de usuario y también el grupo primario y secundarios a los que pertenece, por supuesto, podremos configurar la cuenta de correo electrónico, los directorios y permisos, la autenticación, los permisos de su home, e incluso si queremos permitir sudo y autenticación «cuenta microsoft» para utilizar Samba sin problemas desde sistemas Windows.

Podremos crear diferentes usuarios con diferentes permisos, cuando estamos creando usuarios, es muy importante controlar el tema de permisos de acceso a las diferentes carpetas.

Configuración del servidor Samba

Antes de configurar el servidor Samba, para que se conecten tanto los ordenadores con Windows, Linux o MacOS, deberemos asegurarnos de que el dataset tiene permisos «Passthrough», porque es posible que, sin querer, estemos impidiendo el acceso. También es muy importante crear un usuario con permisos de «cuenta microsoft» y permitir autenticación samba, tal y como podéis ver en las siguientes fotos. Por tanto, debería quedar que la cuenta Microsoft y autenticación samba en «True».

Una vez hecho esto, nos vamos a la sección de «Sharing» y «Windows Shares (SMB)». Aquí tendremos que añadir la ruta compartida, podremos seleccionar diferentes perfiles preconfigurados, en nuestro caso hemos elegido «Default Share Parameters», también debemos incorporar la ruta a un determinado dataset que nosotros hayamos creado, y, por supuesto, permitir o denegar el acceso como deseemos.

A nivel de configuración de Samba, este sistema operativo es realmente avanzado y tenemos cientos de opciones de configuración disponibles. Una vez configurado, tendremos que activar el servicio manualmente con los cambios ya realizados. Por supuesto, podremos configurar Samba con diferentes rutas para compartir los archivos.

Tal y como podéis ver, si accedemos vía Samba podremos ver todas las carpetas compartidas, y tendremos permisos para crear nuevas carpetas en nuestro propio home.

Configuración del servidor FTP

La configuración del servidor FTP es muy sencilla, pero nos debemos ir a la sección de «Services / FTP» y pinchar en «Edit» que lo tenemos en la derecha. Aquí podremos configurar el puerto FTP, número máximo de clientes, conexiones a la vez, intentos de login y timeout, además, si pinchamos en «Opciones avanzadas» se nos va a desplegar todas las opciones disponibles.

Podremos configurar en esta sección «avanzada» el chroot, si permitimos login como root, login anónimo permisos de archivos y directorios, e incluso activar TLS para usar FTPES. Por si todo esto fuera poco, también podremos limitar el ancho de banda, habilitar los puertos pasivos que queramos, el protocolo FXP e incluso podremos añadir parámetros auxiliares avanzados. Debemos recordar que TrueNAS hace uso de Proftpd, por tanto, tendremos todas las opciones a nuestro alcance.

Una vez configurado de forma básica el FTP, y arrancado el servicio, podremos acceder fácilmente, tal y como podéis ver:

Si habilitamos TLS, también podremos acceder de forma segura gracias al protocolo FTPES. En el caso de la configuración por defecto, usaremos RSA de 2048 bits y TLS 1.3, por tanto, tendremos la máxima seguridad en la transferencia de los archivos, haciendo uso de AES-256-GCM que es uno de los algoritmos de cifrado simétrico más seguros que existen hoy en día.

Tal y como habéis visto, configurar el servidor FTP en TrueNAS CORE es realmente fácil y rápido.

Configuración del servidor DLNA con Plex Media Server

El sistema operativo no incorpora un servidor DLNA, porque está orientado a entornos profesionales, pero podremos instalar el popular y potente Plex Media Server. Si nos metemos en la sección de «Plugins» podremos pinchar sobre el Plex Media Server o sobre la versión beta, una vez que pinchemos en él, podremos crear un Jail donde se almacenará todo lo necesario para su puesta en funcionamiento. Una vez que introduzcamos el nombre del Jail y la configuración a nivel de red, ya estaremos listo para instalarlo.

Automáticamente TrueNAS CORE descargará e instalará Plex, y una vez que lo haya descargado e instalado, podremos acceder vía web a su configuración habitual de siempre, donde tendremos que poner el origen del contenido multimedia.

Configuración del servidor SSH

Este sistema operativo hace uso de OpenSSH, por tanto, tendremos todas las opciones de configuración avanzadas de este potente servidor SSH. En la interfaz gráfica de usuario podremos configurar el puerto de acceso, si permitimos login como root, autenticación con clave, autenticación con Kerberos, e incluso hacer forwarding para túneles SSH. También podremos configurar el servidor SFTP, elegir cifrados no seguros para no usarlos nunca, y por supuesto, tendremos una sección de «parámetros auxiliares» donde podremos configurar OpenSSH en detalle.

Configuración del servidor OpenVPN

Uno de los servicios que más valoramos en un servidor NAS es la incorporación de un servidor VPN, en concreto, TrueNAS dispone de un completo servidor OpenVPN muy configurable. Esto nos permitirá acceder remotamente a la red, o acceder a los recursos compartidos del NAS de forma segura. En el menú de configuración del servidor OpenVPN podremos cargar el certificado del servidor y también de la CA, configurar la subred TUN que nosotros queramos, la topología de OpenVPN (subnet es lo habitual), habilitar los algoritmos de autenticación, cifrado y compresión, así como la posibilidad de configurar TLS Crypt e incluso parámetros adicionales.

En otras palabras, tenemos todo lo necesario para configurar de manera muy segura el servidor OpenVPN.

Lo primero que tenemos que hacer, es crear la CA y los certificados asociados, es necesario crear una nueva PKI (Infraestructura de Clave Pública). Nos vamos a la sección de «Sistema / CAs» y creamos una nueva con la configuración de RSA 2048 o superior, aunque es recomendable que sea 4096 o usar EC directamente. Nuestra recomendación es que uséis secp256k1 o brainpoolp256r1 en lugar de RSA.

Una vez creada la CA, deberemos crear un certificado de servidor y firmarlo con la CA, además, también deberíamos crear los certificados de los clientes VPN que se van a conectar. La configuración del tipo de clave debería ser la misma que la CA. Una vez que hayamos creado los certificados, nos aparecerá en el listado de certificados configurados. Si nos hemos equivocado, tendremos que borrar un certificado y volverlo a crear con los nuevos datos modificados.

Cuando ya tengamos los certificados, podremos elegirlos en el menú de configuración del servidor OpenVPN, tal y como podéis ver aquí:

Una vez configurado, podremos pinchar en guardar, e incluso podremos descargar la configuración del cliente, aunque nuestra recomendación es que sigáis nuestro tutorial de configuración de OpenVPN para hacer toda la PKI en Linux en detalle, y posteriormente importar los certificados necesarios en el TrueNAS, así tendréis la máxima seguridad posible.

Hasta aquí hemos llegado con este tutorial sobre TrueNAS CORE, uno de los mejores sistemas operativos para NAS que existen actualmente con ZFS.