Probablemente tengamos una computadora vieja guardada en algún lugar de nuestra casa o trabajo. ¿Por qué no darle un uso?

Uno de esos usos puede ser un NAS (Network Attached Storage, o Sistema de Almacenamiento de Red). En este artículo veremos cómo crear uno paso a paso.

 

 

 

 

 

Desde hace años, uno de mis pasatiempos favoritos es poner a punto servidores. No importa de lo que sean (HTTP, FTP, SMTP, POP, datos, CCTV, etcétera). Hoy les mostraré como crear un servidor NAS (de Network Attached Server), desde donde podremos almacenar archivos desde cualquier parte de una red LAN, e incluso, del mundo si éste tiene acceso a Internet.

Primeros acercamientos

En primer lugar, un servidor NAS se trata de una tecnología de almacenamiento dedicada a compartir la capacidad de almacenamiento de una computadora (a ésta la llamaremos servidor) con otras que formen parte de una red.

La propiedad de compartir archivos puede realizarse bajo una variedad de protocolos: FTP, NFS, TFTP e incluso administrarlos bajo protocolos TCP/IP. Esto nos da una serie de ventajas: podemos administrar un servidor de forma remota (es decir, el servidor no requerirá teclado, mouse, ni monitor).

Existen varios sistemas operativos orientados a sistemas NAS. Entre las propuestas gratuitas tenemos FreeNAS, Openfiler y NASLite, entre otros.

FreeNAS: Nuestro sistema operativo

He escogido FreeNAS principalmente porque

  • Es simple de configurar
  • Corre en equipos limitados (antiguos)
  • Está basado en FreeBSD, lo que lo hace extremadamente robusto y fiable.
  • Es completamente administrable remotamente por interfaz web.
  • Su interfaz web es completa e intuitiva.

Pueden descargar desde aquí.la versión 8.0 (la última  -Agosto 2011-). Sino, pueden descargar la última versión desde la página oficial

Está disponible para arquitecturas de procesadores de 32 bits y de 64 bits. Es muy recomendable que si se quiere armar un servidor NAS con una PC que tiene un procesador de 64 bits, instale la versión correspondiente, y no la de 32 bits.

 

La elección del Servidor

El servidor es importante tenerlo preparado para el tipo de trabajo que va a realizar:

  • Puede ser un servidor que esté encendido las 24 horas, o simplemente permanecer activo por periodos cortos (no más de 8 o 10 horas diarias).
  • La cantidad de datos que deberá almacenar, como así también la cantidad de usuarios que van a acceder a él.
  • Tomar las precauciones correspondientes, como por ejemplo refrigeración, limpieza, ubicación, alimentación eléctrica adecuada, interfaces de red suficientes para cubrir la demanda, etc.

Entonces si el servidor será accedido por 5 o 10 usuarios, probablemente con una interfaz de red baste. En cambio si hay que proveer servicio a más de 100 usuarios, o sólo 10 pero con alta transferencia de datos (por ejemplo para la edición multimedia), entonces deberemos pensar seriamente en agregar más interfaces de red, además de tener un sistema de almacenamiento en RAID.

En fin, la elección del servidor adecuado es objeto de análisis para el administrador.

Para este artículo, he seleccionado una PC antigua, ya que brindará servicio a pocas personas, y con pocas necesidades de ancho de banda. Se trata de un equipo compuesto por un Intel Celeron de 600 MHz, con 128 MB de RAM. Dos discos rígidos: uno de 3GB y otro de 20GB para almacenamiento de datos centralizado. Una placa de red de 100 Mbit

 

 

Manos a la obra: Instalación

Una vez descargada la imagen .iso (las .xz son complementos una vez que hayamos instalado FreeNAS en el servidor), procedemos a grabarlo en un CD o en una unidad USB y arrancamos el futuro servidor desde la unidad correspondiente. (omito todos estos pasos, ya que doy por entendido como se realiza).

Al momento de iniciar, nos encontraremos con pantallas como las que siguen:

 

 

Vamos a instalar el sistema

 

Selección de la unidad donde se instalará (puede ser una unidad USB inclusive)

 

Nos avisa que se borrará todo el contenido del disco seleccionado. Procedemos con la instalación.

 

El sistema instalándose.

 

La instalación ha finalizado.

 

Como hemos visto, la instalación no representa ningún problema. Es relativamente rápida y deja el sistema casi listo para utilizarlo. Una vez que se reinicia el equipo, nos encontraremos con el siguiente menú:

Donde (si es necesario) podremos modificar alguno de los aspectos básicos del sistema.

Llegados a este punto, lo primero que se debe hacer es ingresar con un navegador web desde otra PC a la IP que provee el servidor. Aquí pueden suceder dos cosas: funciona o no. En el caso que funcione, ya no será necesario volver a tocar el servidor físicamente.

En el caso de que no funcione, es casi seguro que debamos realizar alguna modificación manual de las interfaces de red. Particularmente el problema que me ha surgido es que la IP que le asignaba el router no era accesible, por lo cual le he dado asignado una IP estática. Eso se realiza de la siguiente manera:

Enter an option from 1-11: 1
1) sys0
Select an interface (q to quit): 1
Configure interface for DHCP? (y/n) n
Configure IPv4? (y/n) y
Interface name: (press enter as can be blank)
Several input formats are supported
Example 1 CIDR Notation:
192.168.1.1/24
Example 2 IP and Netmask seperate:
IP: 192.168.1.1
Netmask: 255.255.255.0, or /24 or 24
IPv4 Address: 192.168.1.10
Saving interface configuration: Ok
Configure IPv6? (y/n) n
Restarting network: ok
You may try the following URLs to access the web user interface:
http://192.168.1.10

De esta forma le he dado al sistema la IP 192.168.1.10. En rojo están marcados los parámetros que deben ser ingresados manualmente, obviamente teniendo en cuenta sus necesidades.

Ahora podremos ingresar desde el navegador.

 

Configuración

Esta etapa está compuesta de tres pasos:

  1. Crear la unidad de almacenamiento.
  2. Asignar a un usuario (o varios) para poder acceder al disco.
  3. Compartir la unidad creada en (1) para los distintos tipos de usuarios creados en (2).

 

[1]

Desde un navegador ingresamos a la IP provista por el servidor.

Por defecto el nombre de usuario y contraseña son:

  • Usuario: admin
  • Contraseña: freenas

En el menú de la izquierda, buscamos en Storage -> Volumes -> Create Volume.

 

Allí aparecerá una ventana donde tendremos que completar los datos para el nuevo volumen

 

En cuanto al sistema de archivos (UFS y ZFS) particularmente me gusta ZFS, pero recomiendo encarecidamente leer la documentación de cada uno de estos sistemas de archivo para que hagan una buena elección dependiendo el caso que deban manejar.

Esperamos que se complete la operación y habremos terminado con la creación de la unidad de almacenamiento.

 

[2]

Creamos un usuario (o grupo de usuarios) para poder acceder a los recursos compartidos.

Como primer paso, creamos un nuevo grupo. De esa forma tendremos un mejor orden en cuanto a los privilegios. Esto lo hacemos de esa forma porque no queremos (en lo posible) dejar nuestro sistema con vulnerabilidades que en el futuro puedan jugarnos una mala pasada.

Para crearlo, simplemente vamos hacia Account -> Groups -> Add Group

Le asignamos un nombre (por ejemplo "usuario") y aceptamos. Después agregaremos los usuarios en forma individual:

 

Si hay elementos, opciones o casillas que no entendemos, siempre se puede recurrir a la documentación de FreeNAS, que es muy útil y completa.

Básicamente:

User ID: Número para identificar a un determinado usuario 
Username: Nombre de usuario 
Primary Group: Nombre del grupo primario al que pertenece 
Home Directory: Directorio personal del usuario. Al contrario de lo que ven en la imagen, conviene que sea /noexistent
Shell:
Full Name: Nombre completo del usuario. Es para los registros.
Password & Password confirmation: Contraseña
Disable logins: Imposibilita al usuario loguearse (queda excluido del sistema)

Una vez creado el conjunto de usuarios, pasamos al paso número 3.

 

[3]

Para asignar una unidad compartida, volvemos a Volumes, pero esta vez para cambiar los permisos de la unidad que hemos creado

 

Donde:

Owner (user): Deberemos definir un usuario propietario de la unidad
Owner (group): Grupo que sera propietario de la unidad
Mode: Modo de compartir archivos. Está organizado en una matriz de Lectura, Escritura, Ejecución / Propietario, Grupo, Otros.
Set permission recursively: Aplicar estos cambios a archivos, directorios y subdirectorios. 

Bien. Entonces hasta aquí tenemos configurado los grupos y el usuario propietario de una determinada unidad. Ahora queda establecer para qué sistema operativo estará preparado el sistema pàra aceptar conexiones. Podemos hacerlo para Windows, Mac y Linux.

Para no hacer tan extenso el artículo, simplemente vamos a realizarlo para Windows, por dos razones principales:

  1. Tanto Linux como Mac soportan nativamente el sistema de archivos compartidos de Windows (mediante Samba, por ejemplo)
  2. Windows es el sistema más problemático para conectarse a termianles remotos.

Entonces, nos dirigimos a Sharing -> Windows shares -> Add Windows Share , y completamos los campos correspondientes:

Si hay dudas, ver la documentación

 

Finalmente, debemos activar el servicio.

Los servicios son, por decirlo de una manera muy simple, programas que corren bajo el Sistema Operativo sin que sepamos de ellos. Éstos son, por ejemplo los que nos mantienen conectados a la red, los que detectan cuando enchufamos una memoria en un puerto USB, o el que se encarga de detectar las actualizaciones de nuestro Sistema Operativo.

Pues bien, como un servidor NAS puede estar orientado sólo a servir a computadoras con Windows (por ejemplo), entonces no es necesario el servicio de compartir archivos para Linux o Mac. O incluso sólo puede ser accesible mediante FTP, pero no de forma nativa para ningún sistema. Podríamos activar un servidor SSH, entre otras muchas cosas. Por ello es necesario configurar manualmente los servicios que realmente vayamos a necesitar.

Para ello nos dirigimos a Services y activamos los servicios que necesitemos. Yo, por ejemplo he activado SSH y CIFS (el protocolo para compartie archivos de Windows)

Opciones de configuración de CIFS

 

Finalmente activamos los servicios deseados.

Conectarse al servidor NAS

Para conectarse, no podría ser má sencillo. Si toda la configuración se ha realizado correctamente, desde Windows, simplemente conectamos a la nueva unidad de red:

 

 

 

Y desde Linux, la historia no es muy distinta:

La única diferencia aquí es que posiblemente sea necesario agregar el nombre del grupo de trabajo (que la pueden cambiar desde las opciones en CIFS, o por defecto es FREENAS).

 

Como ven, puede ser un proceso un poco extenso, pero para nada complicado si se sabe qué es a lo que se quiere llegar. El proceso es muy lógico e intuitivo. Por eso he seleccionado a FreeNAS por sobre otras propuestas.

Así damos por finalizado el artículo. Cualquier duda o sugerencia, pueden hacerla a través de los comentarios.

Saludos!

 

Más información

 

 

una vista del espacio de trabajo con el servidor NAS. Noten como no es necesaria ninguna interfaz en él.