Stack LAMP: instalación en Ubuntu y CentOS

Uno de los usos principales de un servidor Linux reside en la posibilidad de hospedar sitios web, tanto estáticos como dinámicos. El primer caso no representa mayor dificultad, ya que solamente requiere de la operación de un servidor web (tal como Apache o Nginx). Sin embargo, los sitios dinámicos necesitan de la interacción con una base de datos, así como de un lenguaje del lado del servidor que se utilice (entre otras cosas) para comunicarse con la misma. A partir de este escenario es que nace el stack LAMP (Linux + Apache + MySQL / MariaDB + PHP). En este post veremos cómo instalarlo en un sistema Linux.

El stack LAMP
El stack LAMP

En vez de instalar MySQL (ahora propiedad de Oracle), también podemos utilizar MariaDB, un fork del mismo casi idéntico a fines prácticos. El nombre del paquete, tanto en Ubuntu como en CentOS, es mariadb-server.

Stack LAMP

Para instalar un stack LAMP en Linux, utilizaremos de entre los comandos siguientes el que corresponda a nuestra distribución.

En Ubuntu 16.04 o similares:

sudo aptitude update && sudo aptitude install apache2 mysql-server php libapache2-mod-php php-mcrypt php-mysql

Durante la instalación en Ubuntu se nos pedirá que elijamos y confirmemos la contraseña para el usuario root de MySQL, el cual tendrá privilegios administrativos sobre el servidor de bases de datos. Como en cualquier otro caso, tendremos que asegurarnos de que sea una contraseña fácil de recordar para nosotros, pero difícil de adivinar para otra persona, y que contenga letras mayúsculas, minúsculas, números, y caracteres especiales (!, @, #, por ejemplo) para mayor seguridad.

En CentOS 7:

yum update && yum install httpd mariadb-server php php-pear php-mysql

En este caso, tendremos que iniciar manualmente los servidores web y el de base de datos:

systemctl start {httpd,mariadb}
systemctl enable {httpd,mariadb}

En el próximo post explicaremos cómo asegurar en mayor profundidad nuestro servidor MySQL o MariaDB, y cómo establecer la contraseña de la cuenta de root en CentOS (la cual a diferencia de Ubuntu, no es configurada durante la instalación del paquete).

¡Nos leemos en breve!