La Raspberry Pi es un dispositivo de bajo costo y consume poca energía. Se puede utilizar como un servidor web con tu internet en casa y tendrá total libertad para implementar ideas. Hoy en día los servicios populares en la nube tienen un coste elevado para las mismas especificaciones y recientemente han prohibido algunos sitios web por mostrar algunos términos legales. Este post te guiará como configurar y alojar un sitio web en tu dispositivo Raspberry Pi casero con la red doméstica de AT&T (Puede ser lo mismo para el router que tengas).
Hay proyectos o aplicaciones web que tengo alojadas en mi servidor casero con una Raspberry Pi 8GB con SSD externo, usualmente cuesta menos de $99 USD.
Requisitos
- Raspberry Pi
- Dominio público
- Cuenta gratuita de CloudFlare
Instalar el sistema operativo basado en Linux
Utiliza el software de imágenes para RaspberryPi y elija el sistema operativo basado en Linux.
Home Network Gateway
Acceso al Firewall
Habilita el puerto HTTP 80 para el dispositivo Raspberry pi.
Firewall HTTP/SSH
Habilita los puertos HTTP y SSH para el dispositivo Raspberry pi. SSH no es necesario, si no quieres acceder desde la red exterior.
Seguridad
Tienes que proteger tu servidor doméstico lo máximo posible.
Firewall UFW
Linux ofrece una herramienta de firewall llamada UFW (Uncomplicated Firwall) para monitorear y filtrar el tráfico de red entrante y saliente. Usando esto tu defines si permitir o bloquear tráfico específico.
Necesitas privilegios sudo para instalar UFW
Comprobar el estado del Firewall de Ubuntu
Desactivar el Firewall
Activar el Firewall
Habilitar Puertos
Habilita los puertos HTTP(80) y SSH(22) para el tráfico entrante. Si es necesario, habilita HTTPS(443) u otros puertos.
Fail2ban
Fail2ban es la herramienta más poderosa que protege de los atacantes. Puedes definir un conjunto de reglas para prohibir la dirección IP de los atacantes.
Instalación de Fail2ban
Comprobar el estado
Con el siguiente comando puedes verificar el estado.
El resultado se verá así:
Configuraciones
Puedes definir las reglas modificando el archivo /etc/fail2ban/jail.conf. Aquí un máximo de 3 reintentos de SSH prohíbe la dirección IP del atacante.
Desventajas
Los proveedores de red (AT&T, Telmex, Megacable [en México]) no permiten el PUERTO 25 o SMTP para todos los clientes para evitar los correos SPAM. En su lugar se puede utilizar la conexión externa SMTP PUERTO 435 o hay que convertir la cuenta en empresarial.