Cómo montar un servidor web con Apache en Ubuntu

Montar tu propio servidor web es el mejor ejercicio práctico para aprender Linux, y con Apache en Ubuntu se hace en un cuarto de hora. Al final de esta guía tendrás un sitio sirviendo páginas con su dominio y su certificado SSL gratuito.
1. Instalar Apache
sudo apt update
sudo apt install apache2 -y
systemctl status apache2 # debe decir active (running)Abre http://IP-de-tu-servidor en el navegador: si ves la página «Apache2 Ubuntu Default Page», ya está sirviendo.
2. Abrir el firewall
sudo ufw allow 'Apache Full' # puertos 80 y 443
sudo ufw enable
sudo ufw status3. Crear tu primer sitio con VirtualHost
Los VirtualHosts permiten alojar varios sitios en el mismo servidor. Crea la carpeta del sitio y una página de prueba:
sudo mkdir -p /var/www/misitio.com/html
echo '<h1>Funciona</h1>' | sudo tee /var/www/misitio.com/html/index.html
sudo chown -R www-data:www-data /var/www/misitio.comAhora la configuración del VirtualHost:
sudo nano /etc/apache2/sites-available/misitio.com.conf<VirtualHost *:80>
ServerName misitio.com
ServerAlias www.misitio.com
DocumentRoot /var/www/misitio.com/html
ErrorLog ${APACHE_LOG_DIR}/misitio-error.log
CustomLog ${APACHE_LOG_DIR}/misitio-access.log combined
</VirtualHost>sudo a2ensite misitio.com.conf
sudo a2dissite 000-default.conf
sudo apache2ctl configtest # Syntax OK = todo bien
sudo systemctl reload apache24. SSL gratis con Let’s Encrypt
Con el dominio ya apuntando a la IP del servidor (registro A en tu DNS):
sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d misitio.com -d www.misitio.comCertbot configura HTTPS, redirige el tráfico HTTP y programa la renovación automática del certificado. Compruébala con sudo certbot renew --dry-run.
5. Dónde mirar cuando algo falla
sudo tail -f /var/log/apache2/error.log— el log de errores en vivo.sudo apache2ctl configtest— detecta errores de sintaxis antes de recargar.- ¿Página en blanco tras un cambio? Revisa permisos: el usuario
www-datadebe poder leer los archivos.
Conclusión
Con Apache instalado, el firewall abierto, un VirtualHost limpio y SSL automático, tienes una base de hosting profesional. El siguiente paso natural es instalar PHP y una base de datos — pero eso es otra guía.