Instalar LAMP en un VPS Linux te deja con la base que usan WordPress, Laravel, Moodle y casi cualquier aplicación escrita en PHP: Linux como sistema operativo, Apache como servidor web, MariaDB como base de datos y PHP como lenguaje. En esta guía lo montas en Debian 13 o Ubuntu 26.04 LTS en unos 30 minutos, y no te quedas en el «funciona»: sale con firewall, virtual host propio y HTTPS.

Respuesta rápida. Para instalar LAMP en Debian 13 o Ubuntu 26.04 actualiza el sistema, instala apache2, mariadb-server y php con libapache2-mod-php y php-mysql, ejecuta mariadb-secure-installation, abre los puertos 80 y 443 en el firewall, crea un virtual host para tu dominio y activa HTTPS con Certbot. Todo se hace por SSH con acceso root o sudo.

Actualizado en octubre de 2026. Los comandos están escritos para las distribuciones que se entregan en los VPS Linux de x5 servers: Debian 13, Ubuntu 26.04 LTS, AlmaLinux 10 y Rocky Linux 10.

Qué necesitas antes de instalar LAMP

Para instalar LAMP necesitas un servidor Linux con acceso root por SSH, un dominio apuntando a su IP si vas a activar HTTPS y unos 30 minutos. Sirve cualquier distribución actual: Debian 13 y Ubuntu 26.04 LTS usan los comandos de esta guía, y AlmaLinux 10 o Rocky Linux 10 tienen su propia sección más abajo.

  • Un VPS Linux con acceso root. Con 2 GB de RAM arranca un sitio pequeño; para WordPress con tráfico real o varias aplicaciones, 4 GB es un punto de partida más cómodo. Los VPS Linux con acceso root de X5 Servers traen 4 GB desde el plan de entrada.
  • Acceso por SSH como root o con un usuario que tenga sudo.
  • Un dominio con un registro A hacia la IP del servidor. Solo lo necesitas para el paso de HTTPS.
  • Algo de soltura en la terminal: copiar comandos y editar un archivo con nano.

Un detalle que conviene tener claro desde el principio: el VPS Linux de X5 es no administrado. Se entrega con el sistema operativo limpio y el soporte cubre la infraestructura, es decir caídas del servidor, conectividad y disponibilidad. Lo que instalas adentro, incluido este stack, corre por tu cuenta. Los respaldos no vienen activados y se contratan como servicio adicional. Si todavía estás eligiendo distribución, en las características principales de Debian 13 tienes un resumen de lo que trae esta versión.

Paso 1. Actualiza el sistema y crea un usuario con sudo

Antes de instalar LAMP, actualiza todos los paquetes del sistema y crea un usuario propio con permisos de sudo. Así arrancas con los parches de seguridad al día y dejas de trabajar como root, que es la forma más rápida de romper un servidor con un comando mal escrito. Conéctate por SSH y actualiza:

ssh root@IP_DE_TU_VPS

apt update && apt upgrade -y

Trabajar siempre como root es mala costumbre. Crea un usuario propio y dale permisos de sudo:

adduser admin_web

usermod -aG sudo admin_web

Desde aquí entras con ese usuario y antepones sudo a los comandos. En los ejemplos que siguen ya va incluido.

Paso 2. Instala Apache y abre el firewall

Al instalar LAMP, Apache es la primera pieza: el servidor web que recibe las visitas y entrega las páginas al navegador. En Debian y Ubuntu se instala con el paquete apache2 y queda activo como servicio. Según W3Techs, en octubre de 2026 Apache atiende el 21,4% de los sitios web cuyo servidor se conoce:

sudo apt install apache2 -y

sudo systemctl enable --now apache2

Debian no trae reglas de firewall activas y Ubuntu trae UFW instalado pero apagado, así que en los dos casos lo activas tú:

sudo apt install ufw -y

sudo ufw allow 22/tcp

sudo ufw allow 80/tcp

sudo ufw allow 443/tcp

sudo ufw enable

Abre el puerto de SSH antes de activar el firewall. Si te saltas esa línea, te quedas fuera de tu propio servidor (y si cambiaste el puerto de SSH, usa el tuyo en lugar del 22). Después abre http://IP_DE_TU_VPS en el navegador: si ves la página por defecto de Apache, este paso quedó listo.

Paso 3. Instala MariaDB y protege la base de datos

La base de datos es la tercera pieza al instalar LAMP. MariaDB está en los repositorios oficiales de las dos distros y es compatible con las aplicaciones escritas para MySQL. Si dudas cuál usar, revisa las diferencias entre MariaDB y MySQL. Se instala en un minuto; lo que importa es protegerla y crear un usuario por aplicación.

sudo apt install mariadb-server -y

sudo systemctl enable --now mariadb

sudo mariadb-secure-installation

El script hace varias preguntas. Para un servidor en producción, lo seguro es mantener la autenticación unix_socket para root, eliminar los usuarios anónimos, bloquear el acceso remoto de root y borrar la base de datos de prueba. Con unix_socket, el root de MariaDB solo entra desde la consola del servidor con sudo, que es justo lo que quieres.

Ninguna aplicación debería conectarse como root. Crea una base de datos y un usuario propio para cada sitio:

sudo mariadb

CREATE DATABASE mi_sitio;

CREATE USER 'mi_sitio_user'@'localhost' IDENTIFIED BY 'UnaClaveLargaYUnica';

GRANT ALL PRIVILEGES ON mi_sitio.* TO 'mi_sitio_user'@'localhost';

FLUSH PRIVILEGES;

EXIT;

Paso 4. Instala PHP y sus extensiones

Para instalar LAMP completo solo falta el lenguaje. PHP ejecuta el código de tu aplicación y se conecta a Apache con el módulo libapache2-mod-php. Además del paquete base necesitas extensiones: php-mysql para hablar con MariaDB y otras como curl, gd o mbstring, que piden WordPress y la mayoría de CMS:

sudo apt install php libapache2-mod-php php-mysql php-cli php-curl php-gd php-mbstring php-xml php-zip php-intl -y

php -v

Cada distro instala la versión de PHP de su repositorio oficial, y php -v te dice cuál quedó. Si una aplicación exige una versión concreta, revisa sus requisitos antes de seguir.

Paso 5. Crea el virtual host de tu dominio

Un virtual host le dice a Apache qué carpeta servir para cada dominio. Después de instalar LAMP, la carpeta /var/www/html sirve para probar, pero cada sitio debería tener su propia carpeta y su virtual host. Así alojas más de un dominio en el mismo VPS sin mezclar archivos ni logs.

sudo mkdir -p /var/www/midominio.com/public

sudo chown -R www-data:www-data /var/www/midominio.com

sudo nano /etc/apache2/sites-available/midominio.com.conf

Pega esta configuración y cambia el dominio por el tuyo:

<VirtualHost *:80>

ServerName midominio.com

ServerAlias www.midominio.com

DocumentRoot /var/www/midominio.com/public

<Directory /var/www/midominio.com/public>

AllowOverride All

Require all granted

</Directory>

ErrorLog ${APACHE_LOG_DIR}/midominio.com-error.log

CustomLog ${APACHE_LOG_DIR}/midominio.com-access.log combined

</VirtualHost>

Activa el sitio y el módulo rewrite (lo usan los enlaces permanentes de WordPress), desactiva el sitio por defecto y recarga Apache:

sudo a2ensite midominio.com.conf

sudo a2enmod rewrite

sudo a2dissite 000-default.conf

sudo apache2ctl configtest

sudo systemctl reload apache2

El configtest tiene que responder «Syntax OK». Si encuentra un error, te dice el archivo y la línea exacta.

Paso 6. Prueba que PHP se conecta a MariaDB

Un phpinfo() solo demuestra que PHP corre. Esta prueba confirma que Apache, PHP y la base de datos trabajan juntos, que es lo que de verdad va a necesitar tu aplicación. Si el script muestra el mensaje de éxito, el stack está listo para recibir una aplicación. Crea el archivo:

sudo nano /var/www/midominio.com/public/prueba.php

Y pega este contenido con los datos del paso 3:

<?php

$db = new mysqli('localhost', 'mi_sitio_user', 'UnaClaveLargaYUnica', 'mi_sitio');

echo $db->connect_error ? 'Error: ' . $db->connect_error : 'LAMP funcionando, PHP conectado a MariaDB';

Abre http://midominio.com/prueba.php. Si aparece el mensaje de éxito, terminaste de instalar LAMP. Borra el archivo apenas lo compruebes, porque deja a la vista datos de conexión:

sudo rm /var/www/midominio.com/public/prueba.php

Paso 7. Activa HTTPS con Let’s Encrypt

Con el dominio ya apuntando a la IP del VPS, Certbot pide un certificado gratuito a Let’s Encrypt, ajusta el virtual host para servir el sitio por HTTPS y deja programada la renovación. Son tres comandos y no necesitas tocar la configuración de Apache a mano:

sudo apt install certbot python3-certbot-apache -y

sudo certbot --apache -d midominio.com -d www.midominio.com

sudo certbot renew --dry-run

Instalar LAMP sin HTTPS deja el sitio a medias, porque los navegadores marcan como no seguro cualquier formulario sin cifrar. El último comando simula la renovación. Los certificados de Let’s Encrypt son de corta duración y el paquete deja programada la renovación automática; el dry run confirma que va a funcionar cuando toque.

Cómo instalar LAMP en AlmaLinux 10 o Rocky Linux 10

Los pasos para instalar LAMP son los mismos en AlmaLinux 10 y Rocky Linux 10, porque las dos son compatibles con Red Hat Enterprise Linux. Lo que cambia son los nombres de los paquetes, el firewall, el usuario de Apache y algunas rutas. Esta tabla resume las diferencias:

Elemento Debian 13 y Ubuntu 26.04 AlmaLinux 10 y Rocky Linux 10
Gestor de paquetes apt dnf
Paquete y servicio de Apache apache2 httpd
Firewall UFW firewalld
Configuración de sitios /etc/apache2/sites-available/ /etc/httpd/conf.d/
Logs de Apache /var/log/apache2/ /var/log/httpd/
Usuario de Apache www-data apache
PHP con Apache libapache2-mod-php php-fpm
Certbot Repositorio oficial Repositorio EPEL

Los comandos base en AlmaLinux o Rocky quedan así:

sudo dnf install httpd mariadb-server php php-mysqlnd php-gd php-mbstring php-xml php-intl -y

sudo systemctl enable --now httpd mariadb php-fpm

sudo firewall-cmd --permanent --add-service=http --add-service=https

sudo firewall-cmd --reload

sudo dnf install epel-release -y

sudo dnf install certbot python3-certbot-apache -y

Ojo con SELinux, que viene activo en las dos. Si pones el sitio en una carpeta fuera de /var/www, Apache no la va a leer hasta que le asignes el contexto correcto con semanage y restorecon. Es una causa muy común de errores 403 cuando los permisos parecen estar bien.

Errores comunes después de instalar LAMP

Estos son los fallos que más aparecen la primera vez que alguien termina de instalar LAMP. Casi todos se diagnostican con dos herramientas: apache2ctl configtest para la sintaxis y journalctl para el detalle del servicio. Cada uno lleva su causa probable y la solución directa:

Apache no arranca

Corre sudo apache2ctl configtest para ver errores de sintaxis y sudo journalctl -u apache2 -n 50 para el detalle. Casi siempre es un virtual host mal cerrado o el puerto 80 ocupado por otro servicio.

El navegador descarga el archivo PHP en lugar de ejecutarlo

Apache no tiene cargado el módulo de PHP. Instala libapache2-mod-php y reinicia con sudo systemctl restart apache2.

Error 403 Forbidden

Revisa que el DocumentRoot del virtual host coincida con la carpeta real, que exista un index.php o index.html y que el usuario de Apache pueda leer los archivos. En AlmaLinux y Rocky, revisa también SELinux.

Access denied for user al conectar con la base de datos

El usuario, la clave o el host no coinciden con lo que creaste en el paso 3. Verifica que el GRANT se hizo sobre ‘localhost’ y que la aplicación usa ese mismo valor.

La aplicación no envía correos

En los VPS Linux de X5 el puerto 25 de salida está cerrado por defecto. Configura la aplicación para enviar por un relay SMTP autenticado en lugar de usar el correo local del servidor.

¿Instalarlo tú o que te lo dejemos listo?

Si llegaste hasta aquí con todo funcionando, el VPS no administrado te va a servir bien. Pero instalar LAMP es la parte fácil. Lo que consume tiempo viene después: parches de seguridad, renovaciones, ajustes cuando el sitio crece y averiguar qué pasó cuando algo se cae de madrugada.

Qué toca hacer Tú en el VPS Linux Con administración de servidores X5
Instalar Apache, MariaDB y PHP Tú, con esta guía Lo instalamos nosotros
Firewall y accesos Tú Lo dejamos configurado
Certificado SSL Tú Instalado con renovación automática
Bases de datos Tú Instalación, optimización y respaldo
Parches del sistema Tú Aplicados de forma periódica
Soporte de X5 Infraestructura: caídas, red y disponibilidad Infraestructura y sistema

¿Prefieres no hacerlo tú? Con el servicio de administración de servidores Linux nos encargamos de instalar LAMP en tu VPS y lo dejamos con firewall y HTTPS. Cuéntanos qué vas a alojar en el formulario de contacto y te respondemos con la propuesta.

Y si tu proyecto ya no cabe en un VPS, el paso siguiente es un servidor dedicado Linux con todo el hardware para ti.

Preguntas frecuentes sobre LAMP en un VPS

Estas son las dudas que más se repiten antes y después de instalar LAMP en un VPS, desde cuánta memoria hace falta hasta qué cubre el soporte del servidor. Las respuestas aplican a Debian 13, Ubuntu 26.04 LTS, AlmaLinux 10 y Rocky Linux 10.

¿Cuánto tiempo toma instalar LAMP?

En un VPS recién entregado, instalar LAMP con estos pasos toma unos 30 minutos. Si el dominio todavía no apunta a la IP, deja el paso de HTTPS para cuando la propagación DNS termine.

¿Cuánta RAM necesita un servidor LAMP?

Para instalar LAMP y correr un sitio pequeño, 2 GB alcanzan. Un WordPress con tienda, varios sitios o tráfico constante trabajan más holgados desde 4 GB, sobre todo porque MariaDB usa la memoria como caché.

¿Debian 13 o Ubuntu 26.04 para LAMP?

Las dos sirven. Debian 13 tiene soporte completo hasta el 9 de agosto de 2028 y soporte LTS hasta el 30 de junio de 2030, según Debian. Ubuntu 26.04 LTS tiene soporte de seguridad estándar hasta mayo de 2031, según Canonical. Si buscas el ciclo más largo, Ubuntu; si prefieres paquetes más conservadores, Debian.

¿Es mejor MariaDB o MySQL para LAMP?

Para la mayoría de aplicaciones PHP da lo mismo. MariaDB es compatible con MySQL y es la opción por defecto en Debian, AlmaLinux y Rocky. En Ubuntu tienes los dos en el repositorio.

¿LAMP o LEMP?

LEMP cambia Apache por Nginx, que según W3Techs ya atiende el 30,3% de los sitios web frente al 21,4% de Apache (octubre de 2026). Apache gana en compatibilidad con los archivos .htaccess que usan WordPress y muchos CMS; Nginx consume menos memoria con muchas conexiones simultáneas. Si quieres comparar, aquí explicamos qué es Nginx y cómo funciona.

¿Puedo instalar WordPress sobre este LAMP?

Sí. Después de instalar LAMP, con la base de datos y el usuario del paso 3 y el virtual host del paso 5, solo descargas WordPress en la carpeta public y completas el instalador web.

¿El soporte de X5 me ayuda a instalar LAMP?

El soporte del VPS Linux cubre la infraestructura: caídas del servidor, conectividad y disponibilidad. La tarea de instalar LAMP y configurar el software es tuya, o la puedes contratar con el servicio de administración de servidores.

¿El VPS incluye respaldos?

No vienen activados por defecto y se contratan como servicio adicional. Antes de poner un sitio en producción, define cómo vas a respaldar los archivos y la base de datos.

Documentación oficial consultada para esta guía: Apache HTTP Server 2.4, MariaDB, Certbot y Debian 13.

Ver tambien