Implementación de VPS en AWS Free Tier con Nginx y Cloudflare Tunnel
Introducción
En este tutorial, aprenderás a configurar un VPS en AWS Free Tier para alojar múltiples sitios web utilizando Nginx y Cloudflare Tunnel. Esta configuración es ideal para desarrolladores y pequeñas empresas que buscan una solución económica pero robusta para alojar sus sitios web.
Requisitos Previos
-
Una tarjeta de crédito para crear la cuenta AWS (no se realizarán cargos si nos mantenemos dentro del Free Tier).
-
Una cuenta de Cloudflare con tus dominios ya configurados.
-
Conocimientos básicos de línea de comandos Linux.
Índice
-
Configuración de AWS Free Tier
-
Creación y Configuración de la Instancia EC2
-
Instalación y Configuración del Software Base
-
Configuración de Nginx
-
Implementación de Cloudflare Tunnel
-
Optimizaciones y Seguridad
-
Mantenimiento y Monitoreo
1. Configuración de AWS Free Tier
1.1 Crear una Cuenta AWS
-
Visita aws.amazon.com.
-
Haz clic en "Crear una cuenta de AWS".
-
Completa el formulario con:
-
Email
-
Contraseña
-
Nombre de la cuenta AWS
-
-
Proporciona la información de contacto y facturación.
-
Verifica tu identidad mediante SMS o llamada.
-
Selecciona el plan gratuito (Basic Support - Free).
1.2 Configurar el Usuario IAM
-
Ve al servicio IAM.
-
Crea un nuevo usuario.
-
Asigna permisos
AdministratorAccess
. -
Guarda las credenciales de acceso.
-
Configura MFA para mayor seguridad.
2. Creación y Configuración de la Instancia EC2
2.1 Lanzar la Instancia
-
Ve a EC2 en la consola de AWS.
-
Haz clic en "Launch Instance".
-
Configura la instancia:
-
Name:
web-server-01
-
OS: Debian 12 (Bookworm) x86_64
-
Instance type:
t2.micro
(Free Tier eligible) -
Key pair: Crear nuevo
-
Network settings:
-
Allow SSH (port 22)
-
Allow HTTP (port 80)
-
Allow HTTPS (port 443)
-
-
Storage: 8 GB gp3 (Free Tier eligible)
-
2.2 Configurar Elastic IP (opcional)
-
Asigna una Elastic IP a tu instancia.
-
Asocia la IP con tu instancia.
-
Etiqueta la IP para mejor organización.
3. Instalación y Configuración del Software Base
3.1 Conectarse a la Instancia
3.2 Actualizar el Sistema
3.3 Instalar Software Necesario
4. Configuración de Nginx
4.1 Configuración Base
Editar el archivo: /etc/nginx/nginx.conf
4.2 Virtual Hosts
Crear enlace simbólico:
5. Implementación de Cloudflare Tunnel
5.1 Instalar Cloudflared
5.2 Autenticar Cloudflared
5.3 Crear y Configurar el Tunnel
Archivo /etc/cloudflared/config.yml
:
5.4 Ejecutar el Tunnel como Servicio
6. Optimizaciones y Seguridad
6.1 Configurar PHP-FPM
Editar /etc/php/8.2/fpm/pool.d/www.conf
:
6.2 Configurar Fail2ban
Editar /etc/fail2ban/jail.local
:
6.3 Configurar UFW
7. Mantenimiento y Monitoreo
7.1 Configurar Logrotate
Archivo /etc/logrotate.d/nginx
:
7.2 Monitoreo Básico
Conclusión
Has configurado exitosamente un VPS en AWS Free Tier con Nginx y Cloudflare Tunnel. Ahora puedes:
-
Alojar múltiples sitios web.
-
Proteger tu infraestructura con Cloudflare.
-
Optimizar el rendimiento con microcaching y compresión.
-
Monitorear y mantener el sistema activo y seguro.
Recursos Adicionales
Comentarios