LINUX

Cómo instalar LEMP Stack en Debian 9 Stretch

pila lemp debian 9En este artículo, lo guiaremos para instalar la pila LEMP en el nuevo Debian GNU / Linux 9 Stretch. LEMP significa Linux, Nginx (como en Engine X), MySQL y PHP. Desde Debian 9, Mariadb es el servidor mysql predeterminado. Pero también puede elegir mysql para la instalación.

Es la contraparte de la pila LAMP más popular, excepto que en lugar de Apache httpd usamos nginx. Anteriormente, probamos la pila LEMP en Ubuntu y el contenedor de la ventana acoplable. Esta vez podemos probar el sabor Debian.

Instalación de Nginx, Mariadb y PHP

Empezaremos instalando todos los paquetes que necesitemos. Nginx, MariaDB y PHP se instalan con este comando

apt install nginx mysql-server mysql-client php-fpm php-mysql libfcgi0ldbl

Ahora podemos iniciar todos los servicios necesarios con systemd

systemctl start php7.0-fpm nginx mysql

Y luego habilítelos para que comiencen en el arranque

systemctl enable php7.0-fpm nginx mysql

Configuración de LEMP Stack

Así que ahora tenemos la pila LEMP en funcionamiento, y necesitamos configurarla para que sirva a alguna página.

Lo primero que debe hacer es ejecutar el script mysql_secure_installation.

mysql_secure_installation

Responde aquí todo con y y agrega una nueva contraseña para root. A continuación, debe vincular el socket para fastcgi

cgi-fcgi -bind -connect /run/php/php7.0-fpm.sock

Luego vamos a configurar los sitios disponibles en la carpeta de configuración de nginx. Primero movemos la configuración predeterminada como respaldo

mv /etc/nginx/sites-available/default /etc/nginx/sites-available/df.bk

A continuación, hacemos un nuevo archivo vacío.

nano /etc/nginx/sites-available/default

Allí realizamos nueva configuración. Puedes pegar esto

 server {
        listen 80 default_server;
        listen [::]:80 default_server;
        root /var/www/html;
        index index.php index.html index.htm index.nginx-debian.html;

        server_name _;
        location / {
                try_files $uri $uri/ =404;
        }

        location ~ .php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
        }
}

Y finalmente hacemos una página de prueba que nos mostrará información sobre este servidor:

echo "<?php phpinfo(); ?>" > /var/www/html/index.php

Crearemos un archivo php más que hará la conexión a la base de datos.

nano /var/www/html/db.php
<?php
$dbh = mysqli_connect('localhost', 'linoxide', 'password');
if (!$dbh) {
die('Could not connect: ' . mysqli_error());
}
echo 'Connected successfully to Linoxide test database';
mysqli_close($dbh);
?>

Para poder conectarnos a la base de datos, necesitamos agregar un usuario de linóxido con contraseña. Esto se hará con los siguientes comandos

mysql -u root -e "CREATE USER 'linoxide'@'%' IDENTIFIED BY 'password';"

mysql -u root -e "GRANT ALL PRIVILEGES ON *.* TO 'linoxide'@'%' WITH GRANT OPTION"

Probándolo

Para probar esto, reiniciemos todos los servicios:

systemctl restart php7.0-fpm nginx mysql

A continuación, abra su navegador, navegue hasta la ip de su servidor y debería encontrar algo como esto:

Si va a la misma URL pero agrega /db.php, obtendrá la página de conexión de la base de datos

Asegurar el servidor

Usaremos un cortafuegos sencillo para asegurar el servidor Debian 9. Este comando lo instalará:

apto instalar ufw

Seguro que necesitamos acceso ssh, así que abramos el puerto TCP 22.

ufw allow 22/tcp

A continuación, podemos habilitar el firewall:

ufw enable

A continuación, no podemos permitir puertos mysql, http y https

ufw allow 3306/tcp
ufw allow 80/tcp
ufw allow 443/tcp (allow if you use https)

Después de esto, puede volver a realizar los pasos de prueba.

Hemos instalado y asegurado con éxito la pila LEMP en el nuevo Debian 9. Debian es un sistema operativo universal que se puede utilizar como servidor o escritorio. LEMP es la mejor pila para alojamiento y puede instalar WordPress fácilmente desde CLI. Gracias por leer y háganos saber si tiene algún comentario.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar