One place for hosting & domains

      inicio

      Cómo instalar la pila Linux, Apache, MySQL y PHP (LAMP) en Ubuntu 20.04 [Guía de inicio rápido]


      Introducción

      En esta guía de inicio rápido, instalaremos una pila LAMP en un servidor de Ubuntu 20.04.

      Para ver una versión más detallada de este tutorial, en la que se ofrezcan más explicaciones de cada paso, consulte Cómo instalar la pila Linux, Apache, MySQL y PHP (LAMP) en Ubuntu 20.04​​​.

      Requisitos previos

      Para completar esta guía, necesitará acceso a un servidor de Ubuntu 20.04 como usuario sudo.

      Paso 1: Instalar Apache

      Actualice la caché del administrador de paquetes e instale Apache con lo siguiente:

      • sudo apt update
      • sudo apt install apache2

      Una vez que la instalación se complete, deberá ajustar la configuración de su firewall para permitir tráfico HTTP en su servidor. Ejecute el siguiente comando para permitir el acceso externo en el puerto 80 (HTTP):

      • sudo ufw allow in "Apache"

      Una vez añadida la nueva regla de firewall, puede verificar si su servidor está activo accediendo a la dirección IP pública o al nombre del dominio de este desde su navegador web. Verá una página como la siguiente:

      Página predeterminada de Apache para Ubuntu 20.04

      Paso 2: Instalar MySQL

      Ahora instalaremos MySQL, un sistema de administración de base de datos popular que se utiliza en entornos PHP.

      Una vez más, utilice apt para adquirir e instalar este software:

      • sudo apt install mysql-server

      Cuando la instalación se complete, se recomienda ejecutar una secuencia de comandos de seguridad que viene preinstalada en MySQL Inicie la secuencia de comandos interactiva ejecutando lo siguiente:

      • sudo mysql_secure_installation

      Se le preguntará si desea configurar el VALIDATE PASSWORD PLUGIN. Elija Y para indicar que sí o cualquier otra respuesta para continuar sin la habilitación. Si responde “sí”, se le solicitará que seleccione un nivel de validación de contraseña.

      Luego, su servidor le solicitará seleccionar y confirmar una contraseña para el root user de MySQL. Si bien para el método de autenticación predeterminado del root user de MySQL no se requiere una contraseña, incluso si hay una establecida, deberá definir una contraseña segura en este punto como medida de seguridad adicional.

      Para el resto de las preguntas, presione Y y ENTER en cada mensaje.

      Nota: Al momento de la redacción de este artículo, la biblioteca PHP nativa de MySQL mysqlnd no admite caching_sha2_authentication, el método de autenticación predeterminado de MySQL 8. Por este motivo, al crear usuarios de bases de datos para aplicaciones PHP en MySQL 8, deberá asegurarse de que estén configurados para usar mysql_native_password en su lugar. Consulte el paso 6 de nuestra guía detallada de LAMP de Ubuntu 20.04 para aprender a hacerlo.

      Paso 3: Instalar PHP

      Para instalar PHP y sus dependencias, ejecute lo siguiente:

      • sudo apt install php libapache2-mod-php php-mysql

      Una vez que la instalación se complete, podrá ejecutar el siguiente comando para confirmar su versión de PHP:

      Output

      PHP 7.4.3 (cli) (built: Mar 26 2020 20:24:23) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies

      Paso 4: Crear un host virtual para su sitio web

      A través de esta guía, configurará un dominio llamado your_domain, pero deberá cambiar este nombre por el de su dominio propio.

      Ubuntu 20.04 tiene habilitado un bloque de servidor por defecto, que está configurado para proporcionar documentos del directorio /var/www/html. En lugar de modificar /var/www/html, crearemos una estructura de directorio dentro de /var/www para el sitio your_domain y dejaremos /var/www/html establecido como directorio predeterminado que se presentará si una solicitud de cliente no coincide con ningún otro sitio.

      Cree el directorio para your_domain de la siguiente manera:

      • sudo mkdir /var/www/your_domain

      A continuación, asigne la propiedad del directorio con la variable de entorno $USER, que hará referencia a su usuario de sistema actual:

      • sudo chown -R $USER:$USER /var/www/your_domain

      Luego, abra un nuevo archivo de configuración en el directorio sites-available de Apache utilizando el editor de línea de comandos que prefiera:

      • sudo nano /etc/apache2/sites-available/your_domain.conf

      De esta manera, se creará un nuevo archivo en blanco. Pegue la siguiente configuración básica:

      /etc/apache2/sites-available/your_domain.conf

      <VirtualHost *:80>
          ServerName your_domain
          ServerAlias www.your_domain
          ServerAdmin webmaster@localhost
          DocumentRoot /var/www/your_domain
          ErrorLog ${APACHE_LOG_DIR}/error.log
          CustomLog ${APACHE_LOG_DIR}/access.log combined
      </VirtualHost>
      

      Guarde y cierre el archivo cuando termine. Si utiliza nano, puede hacerlo presionando las teclas CTRL+X, Y y ENTER.

      Ahora, puede usar a2ensite para habilitar el nuevo host virtual:

      • sudo a2ensite your_domain

      Para deshabilitar el sitio web predeterminado de Apache, escriba lo siguiente:

      • sudo a2dissite 000-default

      Para asegurarse de que su archivo de configuración no contenga errores de sintaxis, ejecute lo siguiente:

      • sudo apache2ctl configtest

      Por último, vuelva a cargar Apache para que estos cambios surtan efecto:

      • sudo systemctl reload apache2

      Ahora, su nuevo sitio web está activo, pero el directorio root web /var/www/your_domain todavía está vacío. Cree un archivo index.html en esa ubicación para poder probar que el host virtual funcione según lo previsto:

      • nano /var/www/your_domain/index.html

      Incluya el siguiente contenido en este archivo:

      /var/www/your_domain/index.html

      <html>
        <head>
          <title>your_domain website</title>
        </head>
        <body>
          <h1>Hello World!</h1>
      
          <p>This is the landing page of <strong>your_domain</strong>.</p>
        </body>
      </html>
      

      Ahora, diríjase a su navegador y acceda al nombre de dominio o la dirección IP de su servidor una vez más:

      http://server_domain_or_IP
      

      Verá una página como la siguiente:

      Prueba de host virtual de Apache

      Paso 5: Probar PHP con Apache

      Ahora, crearemos una secuencia de comandos PHP de prueba para confirmar que Apache pueda gestionar y procesar las solicitudes de archivos PHP.

      Cree un archivo nuevo llamado info.php dentro de su carpeta root web personalizada:

      • nano /var/www/your_domain/info.php

      Con esto se abrirá un archivo vacío. Añada el siguiente contenido al archivo:

      /var/www/your_domain/info.php

      <?php
      phpinfo();
      

      Cuando termine, guarde y cierre el archivo.

      Diríjase a su navegador web y acceda al nombre de dominio o la dirección IP de su servidor, seguido del nombre de la secuencia de comandos, que en este caso es info.php:

      http://server_domain_or_IP/info.php
      

      Verá una página similar a la siguiente:

      Información de PHP de Ubuntu 20.04

      Tras comprobar la información pertinente sobre su servidor PHP a través de esa página, se le recomienda eliminar el archivo que creó, dado que contiene información confidencial sobre su entorno PHP y su servidor de Ubuntu. Puede usar rm para hacerlo:

      • sudo rm /var/www/your_domain/info.php

      Tutoriales relacionados

      A continuación, se ofrecen los enlaces a más guías detalladas relacionadas con este tutorial:



      Source link

      Cómo instalar Nginx en Ubuntu 20.04 [Guía de inicio rápido]


      Introducción

      Nginx es uno de los servidores web más populares del mundo y aloja algunos de los sitios más grandes y con mayor tráfico en Internet. Es más fácil de utilizar que Apache en la mayoría de los casos y puede emplearse como servidor web o proxy inverso.

      En esta guía, le explicaremos el procedimiento para instalar Nginx en su servidor de Ubuntu 20.04. Para acceder a una versión más detallada de este tutorial, consulte Cómo instalar Nginx en Ubuntu 20.04.

      Requisitos previos

      Antes de comenzar a aplicar esta guía, debe tener un usuario no root normal con privilegios sudo configurado en su servidor. Para obtener información sobre cómo configurar una cuenta de usuario regular, consulte nuestra Guía de configuración de servidores para Ubuntu 20.04.

      Cuando disponga de una cuenta, inicie sesión como usuario no root para comenzar.

      Paso 1: Instalar Nginx

      Debido aq ue Nginx está disponible en los repositorios predeterminados de Ubuntu, puede instalarlo utilizando el sistema de paquetes apt.

      Actualice su índice local de paquetes:

      Instale Nginx:

      Paso 2: Ajustar el firewall

      Si siguió el tutorial de configuración del servidor de los requisitos previos, tendrá habilitado el firewall UFW. Compruebe los perfiles de aplicaciones ufw disponibles con el siguiente comando:

      Output

      Available applications: Nginx Full Nginx HTTP Nginx HTTPS OpenSSH

      Habilitaremos el perfil más restrictivo, el cual de todas formas permitirá el tráfico que configuró y con ello el tráfico en el puerto 80:

      • sudo ufw allow 'Nginx HTTP'

      Verifique el cambio:

      Output

      Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere Nginx HTTP ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) Nginx HTTP (v6) ALLOW Anywhere (v6)

      Paso 3: Comprobar su servidor web

      Realice una verificación con el sistema init systemd para saber si se encuentra en ejecución el servicio escribiendo lo siguiente:

      Output

      nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset:> Active: active (running) since Mon 2020-05-04 22:45:26 UTC; 1min 17s ago Docs: man:nginx(8) Main PID: 13255 (nginx) Tasks: 2 (limit: 1137) Memory: 4.6M CGroup: /system.slice/nginx.service ├─13255 nginx: master process /usr/sbin/nginx -g daemon on; master> └─13256 nginx: worker process

      A través su dirección IP, acceda a la página de destino predeterminada de Nginx para confirmar que el software funcione de forma correcta:

      http://your_server_ip
      

      Debería obtener como resultado la página de inicio predeterminada de Nginx:

      Página predeterminada de Nginx

      Paso 4: Configurar bloques de servidor (recomendable)

      Al emplear el servidor web Nginx, se pueden utilizar bloques de servidor (similares a hosts virtuales de Apache) para encapsular los detalles de la configuración y alojar más de un dominio desde un único servidor. Configuraremos un dominio llamado your_domain, pero debería cambiarlo por su propio nombre de dominio. Para obtener más información sobre cómo configurar un nombre de dominio con DigitalOcean, consulte nuestra Introducción al DNS de DigitalOcean.

      Cree el directorio para <your_domain y utilice el indicador -p para crear cualquier directorio principal necesario:

      • sudo mkdir -p /var/www/your_domain/html

      Asigne la propiedad del directorio:

      • sudo chown -R $USER:$USER /var/www/your_domain/html

      Los permisos de sus root web deberían ser correctos si no modificó su valor umask, pero puede comprobarlo escribiendo lo siguiente:

      • sudo chmod -R 755 /var/www/your_domain

      Cree una página de ejemplo index.html utilizando nano o su editor favorito:

      • nano /var/www/your_domain/html/index.html

      Dentro de ella, agregue el siguiente ejemplo de HTML:

      /var/www/your_domain/html/index.html

      <html>
          <head>
              <title>Welcome to your_domain!</title>
          </head>
          <body>
              <h1>Success!  The your_domain server block is working!</h1>
          </body>
      </html>
      

      Guarde y cierre el archivo cuando termine.

      Cree un nuevo bloque de servidor en /etc/nginx/sites-available/your_domain:

      • sudo nano /etc/nginx/sites-available/your_domain

      Péguelo en el siguiente bloque de configuración, actualizado para nuestro nuevo directorio y nombre de dominio:

      /etc/nginx/sites-available/your_domain

      server {
              listen 80;
              listen [::]:80;
      
              root /var/www/your_domain/html;
              index index.html index.htm index.nginx-debian.html;
      
              server_name your_domain www.your_domain;
      
              location / {
                      try_files $uri $uri/ =404;
              }
      }
      

      Guarde y cierre el archivo cuando termine.

      Habilite el archivo creando un enlace entre él y el directorio sites-enabled:

      • sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/

      Con esto, quedarán habilitados y configurados dos bloques de servidor para responder a solicitudes según sus directivas listen y server_name:

      • your_domain: responderá a las solicitudes de your_domain y www.your_domain.
      • default: responderá a cualquier solicitud en el puerto 80 que no coincida con los otros dos bloques.

      Para evitar un problema de memoria de depósito de hash que pueda surgir al agregar nombres de servidor, es necesario aplicar ajustes a un valor en el archivo /etc/nginx/nginx.conf. Abra el archivo:

      • sudo nano /etc/nginx/nginx.conf

      Encuentre la directiva server_names_hash_bucket_size y elimine el símbolo # para quitar el comentario de la línea:

      /etc/nginx/nginx.conf

      ...
      http {
          ...
          server_names_hash_bucket_size 64;
          ...
      }
      ...
      

      Realice una prueba en busca de errores de sintaxis:

      Reinicie Nginx para habilitar sus cambios:

      • sudo systemctl restart nginx

      Con esto, Nginx debería proporcionar su nombre de dominio. Puede probarlo visitando http://your_domain, donde debería obtener algo como lo siguiente:

      Primer bloque de servidor de Nginx

      Conclusión

      Una vez instalado su servidor web, tiene muchas opciones respecto del tipo de contenido que ofrecerá y de las tecnologías que desee usar para crear una experiencia más completa.

      Si quiere compilar una pila de aplicación más completa, consulte este artículo sobre cómo configurar una pila LEMP en Ubuntu 20.04.



      Source link

      [Guía de inicio rápido] sobre cómo instalar y configurar Ansible en Ubuntu 18.04


      Introducción

      En esta guía, explicaremos cómo instalar y configurar Ansible en un servidor Ubuntu 18.04. Para obtener una versión más detallada de este tutorial, con más explicaciones de cada paso, consulte Cómo instalar y configurar Ansible en Ubuntu 18.04.

      Requisitos previos

      Para este tutorial, necesitará lo siguiente:

      • Un nodo de control de Ansible: un sistema Ubuntu 18.04 donde se instalará Ansible. Puede ser un servidor remoto o una máquina local.
      • Uno o más hosts de Ansible: uno o más servidores de Ubuntu 18.04 accesibles desde su nodo de control mediante SSH.

      Paso 1: Instalar Ansible

      Desde su nodo de control, ejecute el siguiente comando para incluir el PPA (archivo de paquetes personal) oficial del proyecto en la lista de fuentes de su sistema:

      • sudo apt-add-repository ppa:ansible/ansible

      Actualice el índice de paquetes de su sistema con lo siguiente:

      Después de esta actualización, podrá instalar el software Ansible con lo siguiente:

      Paso 2: Configurar el archivo de inventario

      Para editar el contenido de su inventario predeterminado de Ansible, abra el archivo /etc/ansible/hosts con el editor de texto que prefiera:

      • sudo nano /etc/ansible/hosts

      El archivo de inventario predeterminado proporcionado por la instalación de Ansible contiene varios ejemplos que puede utilizar como referencias para configurar su inventario. En el siguiente ejemplo se define un grupo llamado [servers] con tres servidores diferentes, cada uno identificado por un alias personalizado: server1, server2 y server3. Asegúrese de reemplazar las IP resaltadas por las direcciones IP de sus hosts de Ansible.

      /etc/ansible/hosts

      [servers]
      server1 ansible_host=203.0.113.111
      server2 ansible_host=203.0.113.112
      server3 ansible_host=203.0.113.113
      
      [all:vars]
      ansible_python_interpreter=/usr/bin/python3
      

      El subgrupo all:vars establece el parámetro de host ansible_python_interpreter, que será válido para todos los hosts de este inventario. Este parámetro garantiza que el servidor remoto utilice el ejecutable /usr/bin/python3 Python 3 en lugar de /usr/bin/python (Python 2.7), que no está presente en versiones recientes de Ubuntu.

      No olvide guardar y cerrar el archivo cuando termine.

      Paso 3: Probar la conexión

      Puede usar el argumento -u para especificar el usuario de sistema remoto. Cuando no se proporcione, Ansible intentará conectarse como su usuario de sistema actual en el nodo de control.

      Desde su nodo de control de Ansible, ejecute lo siguiente:

      • ansible all -m ping -u root

      El resultado deberá ser similar a este:

      Output

      server1 | SUCCESS => { "changed": false, "ping": "pong" } server2 | SUCCESS => { "changed": false, "ping": "pong" } server3 | SUCCESS => { "changed": false, "ping": "pong" }

      Si es la primera vez que se conecta a estos servidores a través de SSH, se le solicitará confirmar la autenticidad de los hosts a los que se conecte a través de Ansible. Cuando se le solicite, escriba yes y luego presione ENTER para confirmar.

      Una vez que reciba una respuesta “pong” de un host, estará listo para ejecutar comandos y playbooks de Ansible en el servidor en cuestión.

      Tutoriales relacionados

      A continuación, se ofrecen los enlaces a más guías detalladas relacionadas con este tutorial:



      Source link