Escrito por Iván Alonso el Lunes 28 de Septiembre de 2009

Tras ver unas cuantas características de las maravillas que se pueden hacer con este aparato, me he hecho con uno, un par de discos SATA, y… a ver qué conseguimos.

DNS-323_package

Conectándose al disco

Tras averiguar qué IP ha recibido el disco, la introducimos en nuestro navegador preferido, y nos aparece una pantalla de login… aunque ningún papel de los que vienen con el hardware nos indica usuario y contraseña. Tras buscar por internet he averiguado que el usuario por defecto es admin y la contraseña está vacía. Cuando conectéis por primera vez podéis utilizar el wizard que os aparece, cuyo primer paso será introducir una contraseña para este usuario administrador.

Formateo original

Es importante tener en cuenta que esto no es un sistema de “removable storage“, es decir, no debemos estar metiendo y sacando discos porque no está pensado para eso. Cada vez que introduzcamos un disco nuevo el sistema nos pedirá que lo formateemos para poder utilizarlo (lo que fastidió mi intención original de enchufarle un disco SATA lleno de información para empezar).

Iniciando aplicaciones desde el disco

Este disco viene de serie con alguna aplicación instalada (como un cliente BitTorrent), pero se hace más interesante por la posibilidad de iniciar las aplicaciones que nos interesen, gracias al Linux empotrado con el que cuenta como sistema operativo. Además, el sistema siempre intentará buscar un script llamado fun_plug en la raíz del disco duro, y ejecutará lo que encuentre en él (y es ésta la verdadera razón de que se esté vendiendo tan bien y exista una comunidad tan grande detrás de un aparato tan pequeño).

Aquí podemos añadir el código de las aplicaciones que necesitemos, así como las líneas necesarias para lanzarlas dentro de dicho script. Esto se puede hacer de modo complicado, compilando las aplicaciones que queramos para este procesador concreto y editando el script fun_plug por nuestra cuenta… o podemos instalar un paquete completo con una serie de aplicaciones interesantes, llamado fonz fun plug. Para hacer esto (con la versión actual 0.5 del pack):

  1. Nos descargamos de la página de fonz los archivos fun_plug y fun_plug.tgz.
  2. Los copiamos al directorio raíz del primer volumen del disco.
  3. Reiniciamos el aparato.
  4. Ya.

El archivo tgz se descomprime y se borra automáticamente, y quedan preparadas para utilizarse una serie de aplicaciones:

  • Lighttpd Web Server
  • OpenSSH Secure Shell
  • Mediatomb UPnP Media Server
  • NTP Network Time Daemon
  • RSync File Transfer Utility
  • Servidor de Telnet
  • Etc…

Unos segundos después del reinicio, podremos comprobar que funciona conectándonos mediante telnet al propio disco:

$ telnet <IP del disco>
Trying <IP del disco>...
Connected to <IP del disco>.
Escape character is '^]'.
/ # ls
bin          ffp          lost+found   sbin         var
default      home         mnt          sys          web
dev          image.cfs    proc         tmp          welcome.msg
etc          lib          root         usr
/ #

De todas las aplicaciones “instaladas” la única que se inicia por defecto es este servidor de telnet, y vemos que ahora podemos interactuar con el sistema de archivos en la RAM del aparato (cargado en el inicio desde una memoria flash interna). En el siguiente post veremos cómo activar/desactivar los nuevos servicios, cómo actualizarlos y cómo instalar cosas nuevas.

Más información, en la excelente Wiki de dns323.info, de donde he estado leyendo múltiples entradas para escribir estos posts, como Howto: fun_plug, Howto: ffp (fonz fun_plug), etc.

Anexo: Si tuviéramos que utilizar el servidor de FTP

Esto realmente no es necesario para hacer lo que nos interesa, pero empezando a trastear con el aparato estuve intentando varias cosas, entre ellas esto. Lo dejo apuntado como curiosidad.

Para poder subir archivos al disco, podemos utilizar el servidor FTP integrado dentro del mismo. Podríamos copiarlo sin más a la raíz del primer disco, pero debemos añadirle permiso de ejecución, algo que puede hacerse, por ejemplo, desde una sesión FTP. En el panel web del disco, vamos a Advanced/FTP Server, añadimos el usuario anónimo al servidor FTP, pulsando Add tras dejar las opciones del siguiente modo:

Anadir-usuario-anonimo

Por último activamos el servidor con el botón que se encuentra a final de página: Start FTP Server (una vez que hayamos realizado estas tareas no debemos olvidar desactivarlo y eliminar el usuario anónimo).

Con un editor de textos creamos un archivo llamado fun_plug (así se llamará el script que el disco buscará en su inicio para arrancar cualquier tipo de aplicación). Si lo hacéis desde Windows, usad un editor que os permita guardar el archivo en modo Unix (LF para nueva línea, no como en Windows, que es CR LF). Introducimos el siguiente contenido, para probar el sistema:

#!/bin/sh
dmesg > /mnt/HD_a2/dmesg.out

Ahora, utilizando un cliente de FTP de línea de comandos, realizamos lo siguiente:

$ ftp anonymous@<IP del disco>
Connected to <IP del disco>.
220---------- Welcome to Pure-FTPd [TLS] ----------
220-You are user number 1 of 10 allowed.
220-Local time is now 18:39. Server port: 21.
220 You will be disconnected after 2 minutes of inactivity.
230 Anonymous user logged in
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd Volume_1
250 OK. Current directory is /Volume_1
ftp> put fun_plug 
local: fun_plug remote: fun_plug
229 Extended Passive mode OK (|||2581|)
150 Accepted data connection
100% |***********************************|   519        1.64 MiB/s    00:00 ETA
226-File successfully transferred
226 0.081 seconds (measured here), 6.22 Kbytes per second
519 bytes sent in 00:00 (85.22 KiB/s)
ftp> chmod 777 fun_plug
200 Permissions changed on fun_plug
ftp> quit
221-Goodbye. You uploaded 1 and downloaded 0 kbytes.
221 Logout.

Hacemos login con nuestro usuario anónimo (anonymous), subimos nuestro archivo fun_plug, y le añadimos permisos de ejecución (chmod 777 fun_plug, leo en un tutorial que en el cliente FTP de Windows es literal site chmod 777 fun_plug, aunque no lo he comprobado). Tras esto, dado que ya le hemos asignado los permisos correctos, futuras ediciones del archivo pueden realizarse directamente desde el disco montado, con un editor trabajando en remoto, ya que los permisos no se modificarán. En otros sistemas, por ejemplo desde Mac o Linux, el disco de red se puede montar y podremos utilizar el comando chmod del sistema directamente sobre el archivo (en Mac se automontará en /Volumes/Volume_1).

Internamente los discos se identifican como (visto desde el lado trasero del aparato):

Bahía derecha = HD_a2 (Volume_1)
Bahía izquierda = HD_b2 (Volume_2)

Probamos a reiniciar después el disco en Tools/System/Restart. Tras volver a iniciarse, en la raíz del disco duro tendremos un nuevo archivo dmesg.out con información sobre el inicio del sistema.

Etiquetas: , ,

Esta entrada fue escrita el Lunes 28 de Septiembre de 2009 a las 9:22 pm y está archivada en la categoría Blog. Puedes seguir las respuestas y comentarios en el feed RSS 2.0. Puedes dejar un comentario, o dejar un trackback desde tu propia página.

Un comentario en “D-Link DNS-323: NAS de bajo coste (primeros pasos)”

  1. [...] En el anterior post vimos cómo instalar el pack de aplicaciones diseñado por fonz, y dejamos el sistema funcionando con un servidor telnet para facilitarnos la tarea de realizar futuras modificaciones. Aunque era algo sospechoso el hecho de que nos dejara conectarnos mediante telnet sin pedirnos ningún tipo de usuario ni contraseña. [...]

Deja tu comentario