Too Cool for Internet Explorer

Instalar servidor SSH en Icy Box NAS-4220-B

Hora y Fecha: Junio 30, 2008 @ 12:34 am Autor: Moisés Maciá
Categorías:
58 views

Este es el primer post sobre hacks del Raidsonic Icy Box NAS-4220-B y en él voy a explicar cómo instalar un servidor SSH para conectarnos de forma segura a través de Internet o de una red inalambrica.

El primer paso es actualizar el firmware del aparato a la última versión disponible (en este momento es la 2.6.0.IB.1.RS.1). Esta actualización incluye acceso remoto mediante telnet que aprovecharemos para modificar ciertos parámetros del sistema.

El servidor SSH es un paquete oficial disponible en la pagina web del fabricante. Para instalarlo hay que conectarse al NAS mediante FTP/SMB/NFS con el usuario admin y dejar el archivo ssh-server.tgz en la ruta /public/applications/new_software.

Después de esto, reiniciamos la máquina y ella sola instala el software en los directorios correspondientes. Esta manera de instalar cosas me ha gustado mucho.

Ahora viene el problema: por lo visto alguien en Raidsonic con una mente preclara ha hardcodeado los paths de los binarios a /mnt/IDE1. Este es el punto de montaje de los discos, pero cambia en función de la cantidad y la configuración de los discos que tengas puestos (RAID0, RAID1, JBOD, etc.).

En mi caso el punto de montaje es /mnt/ide3 (en minúscula), con lo que el servidor SSH se instala pero nunca llega a ejecutarse porque no encuentra sus librerías ni sus archivos de configuración.

A mi todo esto me huele un poco mal. Vale que Raidsonic no es una multinacional del software, pero este es un error de bulto que está en la web desde hace tiempo en un paquete “oficial”. Me parece trabajo de becarios mal pagados, porque eso de poner las rutas en mayúsculas y hardcodeadas muy profesional no suena. Pero bueno, hay una solución sencilla.

Podemos hacer un enlace simbólico que apunte al punto de montaje correcto y todo funcionará como se espera. Para esto necesitamos una shell del sistema mediante telnet.

El acceso a traves de telnet no está habilitado por defecto, para activarlo hay que ir a la siguiente URL http://[ip del nas]/cgi/telnet/telnet.cgi y marcar el checkbox (curiosamente el acceso a telnet no sale en el interfaz web, está escondido).

Nos logeamos como root con la contraseña del usuario admin y ya tenemos shell.

En mi caso el enlace simbólico quedaría de la siguiente manera:

  1. ln -s /mnt/ide3/ /mnt/IDE1

Para comprobar que el servicio se inicia correctamente, vamos al directorio de la aplicación y ejecutamos el script de inicio:

  1. cd /mnt/ide3/public/applications/ssh-server/
  2. sh init

Finalmente, activamos el servidor SSH desde el interfaz web y probamos la conexión.

Debido a la combinación de memoria flash + partición en disco que utiliza el NAS para ejecutar el sistema, este enlace simbólico se pierde cada vez que reiniciamos la máquina.

Esto se soluciona instalando el paquete userscript (descarga) que permite ejecutar scripts personalizados durante el arranque del sistema, una especie de cron para que nos entendamos.

El comando para lanzar el servidor es el siguiente:

  1. mnt/IDE1/public/applications/ssh-server/bin/dropbear -d /mnt/IDE1/applications




« Anterior post: Descargad Firefox 3.0 malditos! | Próximo post: Google Media Server »

7 Comentarios para “Instalar servidor SSH en Icy Box NAS-4220-B”

Rawsock
10 de Julio de 2008 a las 11:46 am    

¿Y no puedes guardar los cambios a la flash? Busca información sobre el comando “flashfs”

Moisés Maciá
10 de Julio de 2008 a las 12:06 pm    

Hay una particion de 100MB en el disco duro para instalar software; pero los paths, enlaces simbolicos, variables de entorno, etc. se resetean cada vez que se reinicia el NAS lo cual es una soberana tocada de cojones.

Rawsock
10 de Julio de 2008 a las 12:38 pm    

Lo mismo pasaba en mi router ASUS Wl-500g, que también tira de firmware Linux. El problema es que los cambios que haces al sistema de ficheros flash no se escriben físicamente si no utilizas un comando específico.

En mi caso es “flashfs save && flashfs commit && flashfs enable”. Luego lo mejor es reiniciar a ver si funciona.

A veces hay que añadir los ficheros que quieres guardar a la flash en un fichero de texto que suele estar en “/usr/local/.files”.

Esto funciona en bastantes routers y aparatejos con Linux empotrado, échale un tiento a ver …

Gato77
27 de Julio de 2008 a las 9:55 pm    

Saludos

Tengo este disco duro y estoy intentando hacer esto pero me lo que no se como hacer es como acceder al shell una vez he activado el telnet

Gracias

Moises
28 de Julio de 2008 a las 8:47 am    

telnet ip-del-nas

Javier
8 de Noviembre de 2008 a las 1:29 am    

Hola he llegado a tu blog buscando informacion para el nas que tambien tengo, comentas que tienes instado y funcionando el mldonkey, lo tengo instalado pero se como acceder y ponerlo a funcionar, me podrias ayudar.Gracias

Moises
8 de Noviembre de 2008 a las 8:25 pm    

Puedes acceder a traves de la ip del nas, en el puerto 4080.
No se a que te refieres exactamente con “ponerlo a funcionar”.

Deja un comentario si te atreves

Al publicar de manera voluntaria un comentario mediante la herramientas que brinda esta página web, el autor del comentario autoriza expresamente al dueño de la página a eliminar, mantener, reproducir, almacenar y disponer del contenido del comentario como se considere apropiado. Los comentarios publicados expresan las opniones individuales de los individuos que contribuyen con ellos. Se entiende que al publicar un comenario, el autor del mismo acepta de buen grado estas condiciones.



Escribe estas palabras corréctamente, estarás ayudando a traducir libros y a dejar limpio de spam este blog.



Bad Behavior has blocked 525 access attempts in the last 7 days.