[Actualizado] He cambiado el punto de montaje del disco externo para ahorrar espacio en la tarjeta de memoria. Ahora funciona mejor.
El objetivo de este post es explicar el modo de utilizar un Raspberry Pi como servidor dedicado a las descargas debido al alto precio de un PC clásico para este cometido. En esta primera parte, veremos cómo instalar y preparar la configuración básica. Si estás intentando usarlo como un centro multimedia de salón no es necesario nada de esto. Sigue los pasos indicados en esta entrada.
Lo primero que hay que hacer es conseguir una distribución para instalar en la tarjeta SD. Yo he escogido una ya adaptada a este hardware llamada Raspbian, además es una versión especial de Debian Wheezy, mi sistema operativo preferido con mucha diferencia. Se puede bajar de aquí.
Una vez en nuestro poder, se decomprime el archivo tar.gz para conseguir un archivo de imagen con extensión .img. Ahora introduce la tarjeta SD (2 GB como mínimo) en el lector y copia todo el contenido de la imagen en ella. Es una imagen, de modo que restaurará completamente las particiones necesarias con sus sistemas de archivos correspondientes. Por eso no se trata de copiar el archivo directamente; para restaurar la imagen escribe en un terminal de root:
dd if=/ruta.archivo.de.imagen/imagen.img of=/dev/sdx
donde sdx es el dispositivo de la tarjeta. Si no sabes cuál es el dispositivo, en el mismo terminal de root
fdisk -l
y busca la partición de la tarjeta SD. Recuerda, no debes instalar la imagen en la partición sino en el dispositivo, de modo que si la tarjeta aparece como /dev/sdb1 el comando de instalación es
dd if=/ruta.archivo.de.imagen/imagen.img of=/dev/sdb.
Ya tenemos Debian Wheezy instalado en la tarjeta. Incluye el escritorio LXDE y aplicaciones varias, pero se las podemos quitar todas. En mi caso, con una tarjeta SD de 2 GB, en muy poco tiempo dejó de funcionar porque el sistema de archivos se llenó por completo. Si tienes una tarjeta de 4 GB no te preocupes por nada. Si no, a desinstalar elementos superfluos; pero eso lo explicaré más adelante.
Ahora lo que hay que hacer es montar el sistema completo; es decir, coge tu Raspberry Pi, insértale la tarjeta SD, conéctale un cable de red, el almacenamiento externo que vayas a utilizar (recuerda que no puede con los discos autoalimentados de 2,5”, así que búscate una caja con alimentación para tu disco) y, finalmente, enchufa la fuente de alimentación al puerto micro-USB. Yo he usado un cargador de iPod, que como normalmente ya se carga cuando se enchufa al ordenador, pues no le daba mucha utilidad. Recuerda que se recomienda que dé, como mínimo, 1 amperio, que es lo que da el alimentador de Apple. Un cargador de móvil también sirve si proporciona esa intensidad. Estos datos están siempre en una pegatina o serigrafiados en el propio cargador.
Conecta el cable de red al router o al plc, lo que sea que te conecte a internet, y la fuente de alimentación al enchufe más cercano. Espera unos segundos a que arranque y vete a otro ordenador que también esté conectado al router. OPCIÓN: Si puedes conectar un teclado USB y un monitor HDMI (o DVI con adaptador) a tu Raspberry, no es necesario que hagas las cosas a través de ssh, pero el objetivo es un sistema barato, compacto y discreto que podamos situar detrás de una librería, en una estantería o en un cajón, por lo que la mejor opción será la conexión remota. Si tienes monitor y teclado, con el comando “startx” después del arranque iniciarás una sesión de LXDE. Pero es algo que nunca he probado. A partir de aquí puedes seguir haciéndolo todo en local y en modo gráfico. Yo sigo en “modo conexión remota”.
Ya estamos en otro ordenador de la red, el portátil o el de sobremesa, cualquier otro ordenador de la casa. Averigua la IP que ha adquirido el Raspberry Pi conectándote al router a través de un navegador. En el apartado “Users” o “Active Connections” o algo por el estilo podrás ver la IP del equipo que estás usando y también la del Raspberry. Toma nota de la dirección y cierra el navegador.
Ahora abre una consola y teclea
ssh -P22 pi@IP
El sistema te pide una contraseña: es la contraseña del RPi, por defecto es “raspberry”. Introdúcela y verás que cambia la línea del prompt. Ya estás conectado al pequeño Raspberry.
Lo primero que hay que hacer, ya que es un ordenador al que nos vamos a conectar constantemente a través de la red del hogar, es definir una IP fija. Para ello escoge una que te venga bien. Por ejemplo, la que has escrito en el comando anterior o una más sencilla de recordar, siempre dentro del rango que permita tu router. Por lo general, están entre 192.168.0.10 y 192.168.0.255; consulta el manual para asegurarte. En mi caso tengo configuradas las direcciones así: 10 para un equipo, 20 para otro, 30 para el siguiente, etc. Escoge una, anótala y abre el siguiente archivo /etc/network/interfaces escribiendo:
sudo nano /etc/network/interfaces
y haz, lo primerito, una copia de seguridad por si las moscas. Aprieta Ctrl+O y añade “.copia” al nombre del archivo. Acepta con “Y” cierra el editor con Ctrl+X. Vuelve a abrir el archivo original de nuevo repitiendo la orden anterior. Desplázate hasta donde pone
iface eth0 inet dhcp
y cambia “dhcp” por “static” (sin las comillas). Añade una línea y escribe:
address IP
netmask 255.255.255.0
gateway 192.168.0.1
donde IP es la dirección que has escogido antes y “gateway” es la IP de tu router. Lo de “netmask” escríbelo así, tal cual. Reinicio de la conexión con el comando
/etc/init.d/networking restart
Ahora debería estar conectado de nuevo con la IP fija. Escribe “ifconfig” y comprueba que la IP es la correcta. Se se ha cortado la conexión ssh entre ambos ordenadores vuelve a establecerla, pero esta vez escribiedo la nueva IP.
Otra cosa muy importante, en un equipo que va a estar conectado las 24 horas sin supervisión, es aumentar la seguridad del usuario “pi” y del servidor ssh. Para ello, hay que editar un archivo de configuración como superusuario. El usuario “pi” tiene acceso a sudo, por lo que no hay más que escribir en la línea de comando:
sudo nano /etc/ssh/sshd_config
En este archivo hay opciones que debemos cambiar para aumentar la seguridad. Para empezar, cambiar el puerto de conexión, que es el 22 por defecto. En la línea que pone “Port 22″ cambia el 22 por otro número, como 4321, por ejemplo. Eso cambia el puerto que escucha el servido ssh. Dado que hay multitud de ataques al puerto 22 buscando conexiones abiertas, es el primer cambio que hay que hacer.
Hay más cambios posibles, pero os dejo un post interesante al respecto del tristemente abandonado blog “Entre tuxes y pepinos”. Es este.
Lo siguiente es cambiar la contraseña del usuario, la que hemos escrito para establecer la conexión al principio (“raspberry” por defecto), para que conexiones no autorizadas no tengan la contraseña tan fácil de adivinar. Escribe:
sudo raspi-config
y, en el menú que surge, escoge la opción de cambio de contraseña y sigue las instrucciones.
Llegados a este punto, te recomendaría un reinicio para comprobar que todo está bien puesto en su sitio y una copia del sistema. Para ello, en la misma consola escribe
sudo reboot
y el Raspberry Pi se reiniciará. Durante el proceso, obviamente, se cortará la conexión y desaparecerá el prompt del Pi, volviendo a ver el nombre del usuario local. Espera un momento y vuelve a conectarte, usando la nueva IP, el mismo nombre de usuario (pi) y la nueva contraseña. Si todo ha ido bien, apaga el sistema con “sudo halt”, saca la tarjeta SD, conéctala a un ordenador con lector de tarjetas o a un adaptador USB y haz una imagen de seguridad. Para hacerlo, teclea como superusuario (con “sudo” o en una consola de root):
dd if=/dev/sdc of=/home/usuario/ruta/Raspbian.que.funciona.img
donde /dev/sdc es el dispositivo de la tarjeta SD, puedes identificarlo con el comando “sudo fdisk -l”. /home/usuario/ruta/ es la ruta donde vas a guardar el archivo de imagen (.img). Asegúrate de que dispone de tanto espacio libre como ocupe la tarjeta SD (2 GB libres para una tarjeta de 2 GB, etc). En realidad, si te fijas, es exactamente lo mismo que hicimos al principio de todo, pero al revés. Le llevará un ratito y, una vez que termine, desmonta la tarjeta y vuelta con ella al pequeño Raspberry. Ahora disponemos de una copia del sistema de archivos. Si hacemos algo mal y el sistema falla, podemos volver a este punto las veces que haga falta sin tener que volver a configurar todo de nuevo desde el principio.
Vuelve a encender el Raspberry Pi y conéctate otra vez. Ya tenemos un sistema funcionando con unas condiciones mínimas de seguridad. Pero no tenemos más almacenamiento que la tarjeta SD y el disco duro externo, que si está conectado, estará montado en la carpeta /media.
Lo que queremos es que el disco duro forme parte del sistema y no haya problemas de montaje/desmontaje de unidades por ejemplo, tras un corte de corriente. Nosotros lo usaremos como parte de la carpeta de usuario. Antes de modificar nada necesitamos conocer la identificación del disco, para lo que teclearemos:
sudo ls -l /dev/disk/by-uuid
Al final de cada línea está el nombre de la partición (/dev/sdb1, por ejemplo). Antes hay una cifra larguísima en hexadecimal que es la UUID o identificación única de cada dispositivo. Cópiala. Ahora editaremos el archivo correspondiente con:
sudo nano /etc/fstab
y al final del archivo añadiremos una línea que contenga lo siguiente:
UUID=03171775-580a-4227-04b2-8cefd00f2c9a /home/pi/ ext4 defaults 0 0
por supuesto con la UUID del disco que has copiado antes. Esto quiere decir que el disco formateado en ext4 con esa identificación se montará con las opciones por defecto, al inicio, en la carpeta del usuario “pi”. Guarda con Ctrl+O y sal con Ctrl+X.
Y reinicio al canto: sudo reboot.
Ahora, al iniciar, debería estar todo el contenido del disco en la carpeta /home/pi. Lo que hemos hecho es tener un sistema Debian completito en un Raspberry Pi pero sin ninguna configuración particular, salvo la seguridad de ssh y el disco duro externo como parte del sistema. Si ves que todo funciona bien, no estaría de más repetir el procedimiento de copia de seguridad haciendo una imagen del sistema de archivos de la tarjeta SD en otro volumen.
Ahora solo hay que instalar los programas que uno desee y configurarlos al gusto. Si sabes cómo, no hay problema; si no, atento al próximo post para instalar y configurar un servidor de aMule.
Espero que os haya gustado y le saquéis provecho.

0 Respuestas a “Convierte tu Raspbery pi en un servidor de descargas. El proceso básico.”