Cómo instalar LEMP Stack en Ubuntu 22.04 LTS

En este tutorial, le mostraremos cómo instalar LEMP Stack en Ubuntu 22.04 LTS. Para aquellos de ustedes que no lo sabían, LEMP Stack es una combinación de software gratuito de código abierto. El acrónimo LEMP se refiere a las primeras letras de Linux (sistema operativo), servidor Nginx, MariaDB (software de base de datos) y componentes PHP para construir un servidor web de propósito general viable.

Este artículo asume que tiene al menos un conocimiento básico de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y se supone que está ejecutando en la cuenta raíz, si no, es posible que deba agregar ‘ sudo ‘ a los comandos para obtener privilegios de root. Le mostraré la instalación paso a paso de LEMP Stack en Ubuntu 22.04 (Jammy Jellyfish). Puede seguir las mismas instrucciones para Ubuntu 22.04 y cualquier otra distribución basada en Debian como Linux Mint, Elementary OS, Pop!_OS y más.

requisitos previos

  • Un servidor que ejecuta uno de los siguientes sistemas operativos: Ubuntu 22.04, 20.04 y cualquier otra distribución basada en Debian como Linux Mint.
  • Se recomienda que utilice una instalación de sistema operativo nueva para evitar posibles problemas.
  • Acceso SSH al servidor (o simplemente abra la Terminal si está en una computadora de escritorio).
  • A non-root sudo user o acceder a la root user . Recomendamos actuar como un non-root sudo user sin embargo, puede dañar su sistema si no tiene cuidado al actuar como root.

Instale LEMP Stack en Ubuntu 22.04 LTS Jammy Jellyfish

Paso 1. Primero, asegúrese de que todos los paquetes de su sistema estén actualizados ejecutando lo siguiente apt Comandos en la terminal.

                      sudo apt update
sudo apt upgrade
sudo apt install lsb-release ca-certificates apt-transport-https software-properties-common
                    

Paso 2. Instalar Nginx en Ubuntu 22.04.

De forma predeterminada, Nginx está disponible en el repositorio base de Ubuntu 22.04. Ahora ejecute el siguiente comando a continuación para instalar la última versión de Nginx en su sistema Ubuntu:

                      sudo apt install nginx
                    

Después de una instalación exitosa, habilite Nginx (para que se inicie automáticamente al iniciar el sistema), inicie y verifique el estado con los siguientes comandos:

                      sudo systemctl enable nginx
sudo systemctl start nginx
sudo systemctl status nginx
                    

Confirme la instalación y verifique la versión de compilación instalada de Nginx:

                      nginx -v
                    

Paso 3. Configure el cortafuegos.

Ubuntu 22.04 tiene ufw un cortafuegos que se ejecuta de forma predeterminada. Habilitar conexión a través de puertos 80 HTTP y 443 HTTPS:

                      sudo ufw allow 'Nginx FULL'
sudo ufw enable
sudo ufw status
                    

Paso 4. Acceso al servidor web Nginx.

Una vez que se haya instalado correctamente, abra un navegador web en su sistema y escriba la IP del servidor en la barra de direcciones. Obtendrá la página predeterminada del servidor Nginx:

Paso 5. Instalación de MariaDB en Ubuntu 22.04.

De forma predeterminada, MariaDB está disponible en el repositorio base de Ubuntu 22.04. Ahora ejecute el siguiente comando a continuación para instalar la última versión de MariaDB en su sistema Ubuntu:

                      sudo apt install mariadb-server mariadb-client
                    

Después de una instalación exitosa, habilite MariaDB (para que se inicie automáticamente al iniciar el sistema), inicie y verifique el estado con los siguientes comandos:

                      sudo systemctl enable mariadb
sudo systemctl start mariadb
sudo systemctl status mariadb
                    

Confirme la instalación y verifique la versión de compilación instalada de MariaDB:

                      mariadb --version
                    

Paso 6. Instalación segura de MariaDB.

De forma predeterminada, MariaDB no está reforzado. Puede asegurar MariaDB usando el mysql_secure_installation guion. debe leer y debajo de cada paso cuidadosamente, que establecerá una contraseña de root, eliminará usuarios anónimos, no permitirá el inicio de sesión de root remoto y eliminará la base de datos de prueba y accederá a MariaDB segura:

                      mysql_secure_installation
                    

Configúralo así:

                      - Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y
                    

Ahora puede conectarse al servidor MariaDB usando la nueva contraseña:

                      mysql -u root -p
                    

Producción:

                      Enter password:
Welcome to the MariaDB monitor. Commands end with ; or g.
Your MariaDB connection id is 46
Server version: 10.6.7-MariaDB-2ubuntu1 Ubuntu 22.04

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

MariaDB [(none)]>
                    

Paso 7. Instalación de PHP en Ubuntu 22.04.

De forma predeterminada, PHP no está disponible en el repositorio base de Ubuntu 22.04. Ahora ejecute el siguiente comando a continuación para agregar el PPA de Ondrej a su sistema:

                      sudo add-apt-repository ppa:ondrej/php
                    

Después de agregar el repositorio, actualice el índice APT y luego instale PHP 8.1 usando el siguiente comando a continuación:

                      sudo apt update
sudo apt install php8.1 php8.1-common libapache2-mod-php8.1 php8.1-cli php8.1-fpm php8.1-xml
                    

Confirme la instalación y verifique la versión de compilación instalada de PHP:

                      php --version
                    

Después de una instalación exitosa, habilite php-fpm (para que se inicie automáticamente al iniciar el sistema), inicie y verifique el estado con los siguientes comandos:

                      sudo systemctl enable php8.1-fpm
sudo systemctl start php8.1-fpm
sudo systemctl status php8.1-fpm
                    

Paso 8. Configuración de bloques de servidor Nginx.

Ahora cree un nuevo archivo de bloque de servidor en /etc/nginx/conf.d/ directorio:

                      nano /etc/nginx/conf.d/default.conf
                    

Agregue el siguiente archivo:

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

  location / {
    try_files $uri $uri/ /index.php;
  }

  location ~ .php$ {
    fastcgi_pass unix:/run/php/php8.1-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    include snippets/fastcgi-php.conf;
  }

 # A long browser cache lifetime can speed up repeat visits to your page
  location ~* .(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
       access_log        off;
       log_not_found     off;
       expires           360d;
  }

  # disable access to hidden files
  location ~ /.ht {
      access_log off;
      log_not_found off;
      deny all;
  }
}
                    

Guardar y close el archivo, luego reinicie el servidor web Nginx para que se aplique el cambio:

                      nginx -t
sudo systemctl start nginx
                    

Paso 9. Prueba PHP.

Para probar scripts PHP necesitamos agregar el info.php archivo en el documento:

                      nano /var/www/html/info.php
                    

Agregue lo siguiente al archivo:

                      <?php phpinfo(); ?>
                    

Asegurémonos de que el servidor muestre correctamente el contenido generado por el script PHP abriendo esta página en el navegador: https://your-IP-address/info.php

Instale LEMP Stack en Ubuntu 22.04 LTS Jammy Jellyfish

Paso 10. Asegure Nginx con Let’s Encrypt SSL.

Let’s Encrypt es una autoridad de certificación que proporciona certificados SSL gratuitos para sitios web. Let’s Encrypt admite la instalación automática de certificados en Nginx. Ahora ejecute el siguiente comando a continuación para instalarlo:

                      sudo apt install python3-certbot-nginx
                    

A continuación, ejecute el siguiente comando para iniciar la creación de su certificado:

                      sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d www.domain.com
                    

Después de eso, configuramos SSL de renovación automática porque Let’s Encrypt es válido solo por 90 días, por lo que debe renovarlos con frecuencia usando el siguiente comando:

                      sudo certbot renew --dry-run
                    

Paso 11. Prueba SSL.

Una vez completado con éxito Nginx seguro con Let’s Encrypt SSL, ahora ve a ssllabs.com/ssltest/ y ejecute una prueba de SSL en su dominio:

Instale LEMP Stack en Ubuntu 22.04 LTS Jammy Jellyfish

¡Felicidades! Ha instalado correctamente LEMP. Gracias por usar este tutorial para instalar LEMP Stack en Ubuntu 22.04 LTS Sistema Jammy Jellyfish. Para obtener ayuda adicional o información útil, le recomendamos que consulte el sitio web oficial de LEMP.

Related Posts