El poder disponer hoy en día de mini-ordenadores como las Raspberrys, de bajo consumo y a un precio ridículo, es de lo mejor que le puede pasar a cualquier aficionado a la informática. Vale… hay que dedicarle algo de tiempo a aprender el uso de estas máquinas, pero para cualquier persona acostumbrada a cacharrear con aparatos no debería ser un gran quebradero de cabeza.
En este artículo os voy a contar el uso que le doy yo a mis cuatro Raspberrys, por si alguno de vosotros se atreve a realizar algo similar, o está pensando cómo aprovechar alguna que tenga perdida por un cajón. No se trata de un tutorial ni mucho menos (si interesa publicaré algún tutorial de cómo hacer todo esto en alguna otra entrada), sinó una guía para poder exprimir estos aparatos dándoles varios usos simultáneamente. Y ya os aviso que cada una de mis raspberrys hacen en mi casa un montón de cosas a la vez, por lo que vosotros también podéis hacer que la misma raspberry realice simultáneamente varios de estos puntos.
1) Servidor web: Raspbian sin entorno gráfico con apache-php-mysql
Como os he dicho antes las Raspberrys destacan por su bajísimo consumo energético. Por tanto si tenemos una raspberry encendida las 24 horas del día todos los días de la semana apenas se notará en el consumo eléctrico. Esto la hace ideal para montarse un pequeño servidor de páginas web, siempre y cuando no vayáis a tener muchísimo tráfico, pero… hablemos en serio: ¿De verdad que pretendes que me crea que tienes cientos de miles de visitas al día en tu blog personal? Si es así a lo mejor tienes que plantearte otra cosa, pero para páginas medianas con un rango de visitas de unas pocas miles al día una raspberry va más que sobrada. De hecho este humilde blog está colgado en una raspberry (sí… la página que estás viendo te la acaba de enviar una raspberry que está sobre mi escritorio). Y por supuesto podéis tener colgadas a la vez varias páginas con dominios diferentes en la misma raspberry. En mi caso, en la misma raspberry tengo tambien colgada una pequeña web curricular: https://matas.com.es
En todo caso os doy unos consejos si os animáis a montar vuestro propio servidor web:
- No lo montéis sobre la tarjeta SD de la raspberry. Va a haber tráfico leyendo y escribiendo en la tarjeta todo el rato, y eso va a estropearla, no lo dudes. Yo lo he aprendido a la cuarta tarjeta estropeada. Usad un disco duro conectado por USB como disco principal.
- Actualizaciones frecuentes: este será un equipo expuesto a internet, así que programad actualizaciones para que se realicen con una frecuencia suficiente.
- Usad la versión 7 de PHP. El renidimiento que consigue lo váis a agradecer.
- Si no tenéis un dominio comprado y lo que queréis es hacer un blog o proyecto personal en el que os queréis gastar el mínimo dinero posible, podéis tener un subdominio gratuíto en http://www.dnsexit.com (con una herramienta para actualizar la ip, por si no tienes ip fija). Si queréis un dominio de verdad (de pago), por tres euros al año podéis tener un dominio .com.es en dondominio, y además este hosting te proporciona también una herramienta para actualizar la IP variable de tu conexión a internet, de forma que el dominio siempre apunte a tu ip aunque ésta varíe.
- ¿Apache o nginx? ¿MySQL o MaríaDB? Pues eso ya es cuestión de gustos. Yo siempre he trabajado con Apache y MySQL y la verdad es que la típica configuración LAMP funciona bien en una raspberry, aunque es de suponer que nginx haga la carga algo más rápida.
- ¿Y el certificado para las páginas con https? Tampoco hay problema. Let’s Encrypt nos proporciona un certificado válido durante 3 meses y nos proporciona un script para que se autoactualice antes de vencer, así que podremos tener un certificado válido para toda la vida y gratis.
2) Servidor de correo: iRedMail
Ya que tenemos un servidor web… ¿Por qué no hacer que la raspberry sea nuestro propio servidor de correo electrónico y no tener que depender de gmail? Podremos tener todas las direcciones de correo que queramos dentro de nuestro propio dominio y con espacio “ilimitado” (más bien, limitado únicamente por la capacidad de almacenamiento de nuestro disco duro). Y además disfrutaremos de una navegación más rápida por webmail que con la horrorosa interfaz nueva que le han puesto a gmail. Si tenéis dudas acerca de si el servidor web y el de correo funcionarán lo suficientemente rápido en la misma raspberry, deciros que la raspberry que hace funcionar este blog también hace funcionar un servidor de correo, por lo que os confirmo que ni se despeina.
Configurar un servidor de correo se puede complicar un poco más que configurar un servidor web. Si no os queréis complicar en la instalación, podéis usar iRedMail. Es poco más que descargar e instalar. Os instalará todo lo relativo al servidor de correo, además de un sistema antispam, antivirus, Roundcube para ver el correo por webmail (por supuesto lo podemos usar también a través de pop, smtp e imap) y un panel de control para gestionar vuestras cuentas de forma más sencilla. El día que porten “mail-in-a-box” a procesadores ARM podremos hacer una fiesta (para mi el servidor de correo gratuíto más sencillo de instalar), pero como sólo funciona en procesadores X86, la solución más sencilla hoy por hoy para instalar un servidor de correo en una Raspberry es iRedMail sin ninguna duda.
Por cierto… supongo que no tenéis ip fija en vuestra casa. Si instaláis iRedMail e intentais enviar correos mediante una dirección IP dinámica, el correo va a quedar bloqueado en destino (por políticas anti-spam que suelen tener los servidores de correo). Ese problema es solventable normalmente realizando un relay al servidor de correo saliente de vuestro proveedor de internet (configuramos el servidor de correo saliente nuestro para que los mails los envíe por el servidor de nuestro proveedor de internet). Yo los envío por medio del servidor de mundo-r (que es mi proveedor de internet) y sin problemas desde hace un año. El correo que envío no se detecta nunca como SPAM y siempre llega a destino. Y por supuesto el correo entrante también llega puntual. Todo ventajas.
3) Servidor de archivos en la nube: Nextcloud
Tal vez tengáis problemas de espacio en vuestras cuentas de Dropbox, Google Drive, iCloud o similares y no queráis haceros una cuenta de pago en ninguno de estos servicios. O tal vez queráis tener una nube compartida entre varios compañeros de clase, trabajo o amigos con la que poder intercambiar ficheros al instante. O simplemente no queréis que lo que subáis a una de estas nubes lo puedan leer la NSA o el FBI y ser completamente propietarios de vuestros propios datos. En cualquiera de estos casos Nextcloud es una solución ideal. Tendréis una nube completa al estilo de Dropbox pero a lo grande, con multitud de opciones de compartición y trabajo colaborativo y con tanto espacio como espacio en disco dispongáis (si le enchufáis un disco grande a la Raspberry todo ese espacio será vuestro para toda la vida sin pagos anuales ni historias raras). Si habéis hecho el punto 1 ya tenéis medio sistema montado, porque esto puede usarse también en la misma Raspberry en la que se montaron las dos primeras ideas. Igualmente os digo que la Raspberry que carga este blog, tiene montado un servidor de Nextcloud y va perfecto. Unas cuantas notas sobre este sistema:
- Si lo que queréis es usar únicamente Nextcloud en la Raspberry, existe una distribución de Linux llamada Nextcloud Pi con todo preinstalado para que casi cualquier “manazas” pueda hacerla funcionar sin demasiadas complicaciones. No tendréis servidor de correo, pero toda la configuración para instalar NextCloud ya viene hecha por defecto, certificados de seguridad incluídos.
- Nextcloud es un sistema modular, por lo que puedes instalarle dentro aplicaciones que hagan otras cosas además de gestionar tus archivos. Por ejemplo, si instalas la aplicación de contactos y la de calendario, ya puedes prescindir de esos servicios en la nube de tu proveedor (Apple, Google o quién sea). Además tienes multitud de aplicaciones que puedes instalar para todo tipo de necesidades, y todas gratis.
Estas tres primeras opciones, como os he dicho, las tengo montadas a la vez en la Raspberry que tengo siempre conectada en mi escritorio. Podéis ver estadísticas de la misma (por si tenéis dudas de cómo se puede comportar) en esta página.
Por cierto… es importante que una Raspberry que esté funcionando todo el día esté bien ventilada. Os recomiendo ponerle una caja con ventilador incorporado de este estilo.
Por cierto… el ventilador que le puse hacía un poco de ruido de más, así que tuve que añadirle un potenciómetro para bajarle las revoluciones más o menos a la mitad. En todo caso si os fijáis en las estadísticas (desplegad en “graph” y poned “temperature”), la velocidad del ventilador es más que suficiente para que rara vez supere los 40 grados (que es una temperatura muy baja para una raspberry).
Todo lo que vimos hasta ahora está instalado bajo Raspbian en una única Raspberry Pi. De hecho esa raspberry no está conectada a ningún monitor ni a ningún teclado. Simplemente la tengo enchufada a la corriente (mediante un cargador de móvil), al router mediante un cable RJ45 y al disco duro externo.
Pero en mi casa tengo otra raspberry dedicada al entretenimiento, que se trata de esta:
Esa raspberry la conecto a la TV y en ella tengo varios sistemas operativos instalados a la vez en la misma tarjeta SD. Al encenderla elijo qué sistema arranca mediante este menú desplegable.
Vamos a ver cada uno de los sistemas operativos que arranca ese menú y qué consigo hacer con cada uno de ellos.
4) Ordenador para la televisión principal de la vivienda: Raspbian normal
Con una tarjeta con el sistema Raspbian podemos usar la raspberry como si fuera un ordenador normal que corre linux. Vale… no es un equipo potente, pero nos va a permitir navegar sin problemas y ejecutar algún que otro programa, como el paquete ofimático libreoffice. Esto es muy del interés de cualquier estudiante. Por ejemplo si se estropea el ordeandor de tu casa puedes resolver la papeleta usando la raspberry mientras se arregla el ordenador principal.
5) Cliente multimedia de Plex: RasPlex
Para mi es la forma ideal de transmitir vídeos y fotografías entre tu ordenador (u otra raspberry) y la televisión. A pesar de que el proyecto OpenPHT/Rasplex lleva un tiempo sin actualizarse en su página de Github, hay referencias de que están trabajando ya en una nueva actualización. No sólo te clasifica automáticamente todo el contenido multimedia que tengas en el ordenador (películas, música, etc…) sino que además te da información de cada uno de los archivos que tienes (en películas te dice director, actores, sinopsis, te muestra el cartel, etc..) y todo ello en una interfaz más que sencilla. Sin dudarlo ni un momento, para mi de lo mejor que hay para Raspberry.
6) Otro cliente multimedia: Kodi
Otra opción es instalar en la tarjeta el sistema operativo “LibreElec“. Es un sistema que nos permite arrancar una versión de Kodi, que se trata de otro reproductor multimedia muy famoso en entornos windows. Si bien Plex tiene un interface limpio y cuidado y nos permite reproducir de forma elegante contenido almacenado en otro ordenador, el punto fuerte de kodi es la disponibilidad de numerosos plugins que nos permitirán reproducir contenido de diversas fuentes (contenido en la SD de la raspberry o en una unidad usb, stream de cadenas de televisión, páginas web y mucho más). Vale… no es tan “bonito” como plex, pero tiene muchos otros puntos fuertes.
7) Consola de videojuegos antiguos: Recalbox.
Si ya peinas alguna cana seguro que te acuerdas de las consolas de videojuegos de los 80 y 90. Recalbox es un sistema operativo que te permitirá jugar a muchísimos juegos de consolas “Retro”, como la SuperNintendo o la Sega Megadrive. También te permite emular microordenadores como los MSX y jugar a sus juegos. Existe otro sistema operativo que permite hacer algo muy similar llamado “Retropie“. Elegir uno u otro es cuestion de gustos. A mi me da la impresión de que los juegos corren mejor bajo Recalbox, pero ya digo… para gustos colores. En todo caso es un lujo que en algo tan pequeño y supuestamente con tan poca potencia se pueda disfrutar de nuevo con esos juegos.
Así que como véis, en la segunda raspberry tengo instalados a la vez cuatro sistemas operativos: Raspbian, LibreElec, Plex y Recalbox. Cuando la arranco debo elegir cuál quiero que se ejecute.
8) Consola portátil de videojuegos
Sí… la verdad es que poco la uso (no me llegan las horas del día, de verdad), pero esto es un pequeño capricho que tenía muchas ganas de montar desde hace mucho tiempo. Y lo gracioso es que no lo monté yo, sinó mi hijo de 6 años. Un desatornillador, un poco de ayuda de papá, una tarde libre y entretenida, y un regalo que a mi hijo le volvió loco, tanto por la ilusión que le hizo por fabricarse él mismo su propia consola portátil de videojuegos como por los ratos que podía disfrutar con ella (fines de semana y tiempo muy limitado, eso sí). ¿Qué juegos puedo ponerle? Pues los mismos que hablamos en el apartado 7, puesto que el sistema es el mismo (recalbox).
9) Quitar la publicidad de la red doméstica con Pi-Hole
Este es uno de los grandes usos que se le puede dar a este cacharrito en un domicilio. instalarle Pi-Hole para que nos filtre toda la publicidad de los dispositivos de nuestra red wifi (tablets, smart TV’s, móviles, ordenadores…). De esta forma, si entramos en una página web que tenga publicidad, ésta desaparecerá de la web, al igual que nos impedirá la carga de páginas maliciosas. He colgado un manual de cómo usarlo en este artículo del blog. Y por cierto… la raspberry en la que está funcionando está haciendo también un montón de cosas a la vez. Os digo algunas a continuación.
10) Servidor VPN
Sí, una Raspberry también puede funcionar como servidor de VPN. La configuración es muy sencilla y los usos son muy interesantes: desde poder acceder a tus dispositivos desde fuera de tu hogar hasta filtrar la publicidad de tu móvil cuando te encuentres fuera de casa o poder acceder a determinadas páginas web desde redes wifi en las que internet está «capado» (con esto te saltas a la torera cualquier filtrado de contenido del lugar dónde estés). Además, como casi no consume recursos, puedes tenerlo funcionando en una raspberry que estés usando para alguna otra cosa. También he colgado un tutorial de cómo montarlo en este artículo.
11) Centro de descargas de aMule o de archivos .torrent
Al tener una Raspberry un consumo tan bajo, puedes tenerla encendida todo el día trabajando que casi no se va a notar en el consumo eléctrico. Por tanto, tener una rasbperry bajando cosas del eMule o archivos «.torrent» es mucho más energéticamente eficiente que hacerlo con un ordenador doméstico o un portátil. ¿Va a sufrir la raspberry por hacer estas cosas? En absoluto. Te puedes despreocupar de ella mientras la dejas hacer. También tienes un tutorial de cómo hacer esto con una raspberry en este artículo del blog.
12) Servidor multimedia: Plex Server
En el punto 5 vimos que una raspberry puede usarse como cliente multimedia (para reproducir contenido almacenado en otro equipo). Pero también puede servir como servidor multimedia (El servidor que alberga los archivos de vídeo que luego se retransmitirán a otros dispositivos). Con este sistema podéis almacenar vuestros archivos de vídeo en un disco conectado a la raspberry para luego verlos en otro dispositivo. También me ha ahorrado el tener un ordenador entero encendido haciendo esta tarea, con el ahorro de consumo eléctrico que conlleva.
Por cierto… los usos del 9 al 12 en mi casa los está haciendo una única raspberry todos a la vez.
Esto son un montón de proyectos interesantes que podéis hacer en vuestra casa, pero hay también un montón de usos a mayores para aprovechar estos aparatos. Uno que tengo ganas de probar es RasPBX (Algo así como una centralita para hacer llamadas a través de voz por IP). En todo caso hay multitud de usos diferentes para estos aparatos. ¿Qué has hecho tú con tu raspberry hasta ahora? Déjanoslo en los comentarios.
Contestando a tu pregunta, te diré que en una Pi3+, como servidor multimedia para ver en la Smart TV las películas que me descargo con Transmission, yo uso «miniDLNA». No es tan vistoso como Plex, pero apenas consume recursos y funciona muy bien. Además, en la misma Pi también está Transmission, Samba, AirDC++ y un server FTP para que se bajen cosas los amigos.
En otra Pi2 tengo un servidor de impresión (con CUPS) para imprimir desde cualquier máquina de la red local, OpenVPN y Pi-hole.
Por cierto, muy buen blog (lo he descubierto hace poco y me parece magnífico) y una gran idea tenerlo todo montado en tu propia casa en una RasPi.
Pues fíjate que el AirDC++ no lo conocía y la verdad es que me parece muy interesante. Le echaré un vistazo en cuanto tenga un poco de tiempo.
Sobre que el miniDLNA sea vistoso o no, eso para mi no es en absoluto importante. Lo importante es que lo que se instale sea cómo y funcional para uno. Cada sistema tiene sus puntos fuertes y débiles y si el que usas te va bien, que nadie te coma el coco para cambiarlo por otro más vistoso . Yo sólo indico cómo hice yo en mi caso.
Y me alegra que te guste mi pequeño blog. La verdad es que para un volumen modesto de visitas (mi récord son 600 al día y me sorprendería que fueran muchas más) una Raspberry es más que suficiente para moverlo.
Hola.
Dices: «No lo montéis sobre la tarjeta SD de la raspberry. Va a haber tráfico leyendo y escribiendo en la tarjeta todo el rato, y eso va a estropearla, no lo dudes. Yo lo he aprendido a la cuarta tarjeta estropeada. Usad un disco duro conectado por USB como disco principal.»
¿Cómo se usa Raspbian desde un HD? ¿Conoces un tutorial donde se explique cómo hacerlo? No encuentro ningún sitio donde se explique claramente cómo hacerlo y que funcione bien.
Gracias.
Hay dos formas de hacer que una raspberry arranque desde un dispositivo USB. La primera es configurar el chip de la raspberry para que arranque directamente el USB en lugar de la tarjeta SD. Supuestamente con este método no necesitarías ni siquiera tener una tarjeta SD colocada en la raspberry. Se explica en esta web
https://www.nociones.de/como-arrancar-la-raspberry-pi-3-desde-un-usb/
¿Problema? pues que a pesar de haberlo intentado de mil formas distintas, no he logrado arrancar la raspberry desde un Disco USB con este método (puede que sólo funcione con un pen drive y no con un disco, pero ya digo… algo hago mal y no sé qué es).
Otra forma sería decirle en la partición «boot» de la tarjeta SD, en el archivo cmdline.txt, que en lugar de arrancar la tarjeta SD debe arrancar el dispositivo USB (root=/dev/sda1).
https://www.tomshardware.co.uk/boot-raspberry-pi-from-usb,news-61081.html
Esta forma sí que me funciona y es la que uso en la raspberry que genera esta web. La tarjeta SD que tengo en esta raspberry es una porquería (por lo mala que es). Tiene sólo 2 gigas, me venía en un móvil que murió hace mucho tiempo y me sobra en ella espacio más que suficiente porque en ella sólo está la carpeta «boot» con los archivos básicos para decirle «arranca desde la unidad usb». Sólo se usa como lectura al arrancar, por lo que no hay movimiento en ella y no se estropea. Y si se estropea, tengo un par de tarjetas SD que son copias exactas de esa, pero en varios años aún no tuve que usar ninguna, así que no parece que vaya a estropearse por el momento.
En todo caso me has dado una idea para un tutoría nuevo. En cuanto acabe uno que estoy elaborando intentaré hacer uno sobre este tema.
Por cierto… me olvidaba… mira esta página
https://www.flopy.es/monitor/status.html
Ahí puedes ver estadísticas de este blog. Pero lo que te va a interesar es la parte que pone «SD Card». Si te fijas la partición «boot» ocupa la friolera de… 20 megas de un total de 40. Vamos… que la tarjeta más pequeña que encuentres podrá servir para esta partición.
La partición «/» ya es otra cosa. Esa es un disco SSD de 480 gigas. Pero no tiene relación con «Boot».
Sí, lo configurar el chip de la Raspberry para que arranque directamente el USB en lugar de la tarjeta SD a mí tampoco me ha funcionado. Con un pendrive SanDisk sí (pero con un Kingston no, se arrastra). Y en el caso del HD, nada de nada.
Así que voy a esperar a que hagas el tutorial, porque con la página de tomshardware me lío un poco en algunas partes, aparte de que mi inglés es muy malo.
Muchas gracias.
Bueno, al final me he animado a seguir las instrucciones del enlace de tomshardware que pusiste y me ha salido bien. He instalado Raspbian en un Pendrive de 64GB + tarjeta microSD de 8GB (la más pequeña que tenía) para el /boot.
Ya puestos, me he envalentonado y he montado un WordPress similar al tuyo en mi RasPi. Ha quedado muy bien, salvo lo de instalar el certificado de Let’s Encrypt, que no me aclaro cómo se hace. Si alguna vez tienes tiempo, me vendría fenomenal que hicieras un post explicando cómo hacerlo. Es lo único que me falta para que me quede todo perfecto y tener HTTPS en el blog de prueba que he montado.
Saludos cordiales.
Hola raspberros,
Tengo una duda, ¿se escribe algo en la tarjeta sd donde estan los SO de la raspberri o se puede poner la pestañita de «solo lectura»? Quiero hacer un home theater para mi sobrino de 8 años y subirle peliculas a un HDD y no quiero que pueda cambiar nada, si cambiar nada del SO ni borrar peliculas.
¿Puedo conceder diferentes permisos a segun que usuarios como si fuesen las cuentas de usuarios de guindows?
Alerta: nunca he usado Raspbian, y Linux solo he instalado minidistris a nivel de curiosidad, pero nunca he «trabajado» con ellas…
Larga Vida a Raspbian Pi y similares!
En la tarjeta SD está el sistema operativo. Linux es más benévolo que windows en cuestión de escrituras, pero yo no la pondría en «sólo lectura». Podrías instalarle sólo rasplex a la raspberry. Así por mucho que fedelle tu sobrino no saldrá de ese interface (no tiene nada similar a «Windows» que pueda toquetear).
Sobre los permisos… por supuesto… pero eso es en raspbian. Tendrás que instalar raspbian ahí (eso sí que es una especie de windows, para que nos entendamos).
Y otra pregunta, ¿cual es la velocidad de lectura y escritura del zócalo sd de la Raspberry Pi? ¿Conoceis algun programa para los SO de Raspberry tipo CrystalDiskMark o similar?
A traves de USB 3.0 de la Raspberry Pi 4 puedo usar tarjetas micro sd con velocidad V90 o pendrives USB que escriban a 200-300 MB por segundo, pero con ese zocalo no sé si habreis hecho pruebas…
Sabeis de alguna página para comprar dominios? Me han dicho que dominioslibre.net esta muy bien pero me gustaria saber más opiniones. Un saludo!
Bueh… He buscado como hacer un «descargador» de torrents y e2k en la raspberry y me encuentro con ésta web. Excelente.
Mi sueño es poder montar un servidor web con wordpress en la RPI3b+ que tengo. Lo he intentado con 100 tutos y siempre falla algo. Hasta he pensado en aprender Docker para ello.
Si tienes un tuto fiable, te lo agradecería.
Te recomiendo leer esto
https://www.flopy.es/servidores-de-correo-gratis-libres-y-sencillos-de-gestionar/
Yo lo he hecho con iredmail y cero problemas. Si lo quieres sencillo prueba yunohost o virtualmin