Añadir repositorios docker & elk (filebeat)
5 de octubre de 2023Recargar/redirigir automáticamente (iframes)
30 de diciembre de 2023Cómo instalar LAMP en Ubuntu 22.04: paso a paso
En los pasos que se describen a continuación, le explicaremos cómo instalar la pila LAMP en Ubuntu 22.04. Le mostraremos la instalación del servidor web Apache, el servidor de base de datos MariaDB y PHP. Además, probaremos cada uno de los componentes y comprobaremos si están funcionando como se espera.
Paso 1: instalar el servidor web Apache
Como primer paso, instalaremos el servidor web Apache. Para comenzar, inicie sesión en su instancia de servidor. El primer paso es actualizar la caché del administrador de paquetes y asegurarse de que el índice del paquete esté actualizado.
sudo apt update
Cuando se le solicite, proporcione su contraseña y presione ENTRAR.
A continuación, instale el servidor web Apache desde el repositorio predeterminado de Ubuntu utilizando el administrador de paquetes APT.
sudo apt install apache2 -y
El comando instala Apache junto con todas las bibliotecas y dependencias necesarias. De forma predeterminada, Apache se inicia automáticamente tras la instalación. Para confirmar esto, ejecute el comando:
sudo systemctl status apache2
Si tiene un firewall UFW habilitado, debe ajustar la configuración del firewall para permitir el tráfico HTTP. UFW, abreviatura de Uncomplicated Firewall, es la configuración de firewall predeterminada de Ubuntu.
Para permitir el tráfico HTTP, debe permitir conexiones en el puerto 80. Para lograr esto, ejecute el siguiente comando:
sudo ufw allow 80/tcp
Para aplicar los cambios, vuelva a cargar el firewall.
sudo ufw reload
Para confirmar el estado del firewall, ejecute el siguiente comando:
sudo ufw status
En el resultado, podemos ver que el puerto 80 está abierto en el firewall y que se permite el tráfico HTTP. Puede confirmar esto visitando la dirección IP del servidor.
http://server-ip-address
La página web predeterminada de Apache debería aparecer en su navegador.
Paso 2: Instale el servidor de base de datos MariaDB
En este paso, instalaremos el servidor de base de datos MariaDB en lugar de MySQL. MariaDB proporciona un rico conjunto de funciones y un rendimiento mejorado que lo convierte en un reemplazo perfecto para MySQL.
MariaDB está alojada en los repositorios de Ubuntu de forma predeterminada y puede instalarla de inmediato de la siguiente manera.
sudo apt install mariadb-server mariadb-client -y
Sin embargo, el repositorio de Ubuntu no proporciona la versión más reciente de MariaDB, que instala MariaDB 10.6. Para instalar la última versión, instálela desde los repositorios de MariaDB.
Para hacer esto, asegúrese de agregar la clave de firma GPG.
sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'
Con la clave GPG en su lugar, agregue el repositorio MariaDB al archivo sources list
.
sudo add-apt-repository 'deb [arch=amd64] http://mariadb.mirror.globo.tech/repo/10.11/ubuntu jammy
main'
Actualice el caché APT local como se muestra.
sudo apt update
Una vez que se actualice el índice del paquete, instale el servidor y el cliente MariaDB como se muestra.
sudo apt install mariadb-server mariadb-client -y
En este punto, el servidor MariaDB, junto con el cliente, se han instalado correctamente. Puede confirmar la versión instalada de la siguiente manera.
mariadb --version
Paso 3: Proteger el servidor de base de datos MariaDB
La instalación predeterminada de MariaDB viene con configuraciones débiles, que plantean riesgos potenciales para sus bases de datos. Por lo tanto, se recomienda encarecidamente realizar algunas operaciones de refuerzo para proteger su servidor de base de datos.
Para mejorar la seguridad de MariaDB, ejecute el script de seguridad, que se incluye como parte de la instalación de MariaDB.
sudo mysql_secure_installation
El guión le guía a través de un par de indicaciones.
El primer mensaje solicita la contraseña raíz de la base de datos. De forma predeterminada, MariaDB viene con una cuenta raíz de base de datos. Esta es una cuenta administrativa con privilegios absolutos sobre las bases de datos. Tenga en cuenta que esta cuenta es diferente de la cuenta raíz del sistema.
De forma predeterminada, la contraseña de root está en blanco ya que la instalación es nueva y no se han realizado cambios en la configuración. Entonces, presione ENTER
para continuar.
A continuación, se le pedirá que establezca la contraseña de root cambiando a la autenticación unix_socket
, que es la autenticación predeterminada para MariaDB. Permite a otros usuarios utilizar credenciales del sistema operativo al acceder a MariaDB utilizando el archivo de socket local de Unix. Esto puede suponer un riesgo de seguridad si uno de los usuarios se ve comprometido por un atacante o si los usuarios tienen contraseñas débiles. Para estar seguro, rechace presionando n
y presione ENTER.
A continuación, asegúrese de proporcionar una contraseña raíz segura para la base de datos y confírmela.
Como siguiente paso, presione ‘Y’ para las solicitudes restantes para aceptar las opciones predeterminadas, esto elimina un usuario anónimo predeterminado que permitiría a cualquiera iniciar sesión sin una cuenta de usuario, no permite el inicio de sesión remoto como root, elimina la base de datos de prueba y, finalmente, vuelve a cargar las tablas de privilegios para guardar los cambios.
Paso 4: instalar PHP y módulos PHP
El último componente de la pila LAMP es instalar PHP. Ubuntu 22.04 ya proporciona PHP 8.1 en su repositorio. Puede instalarlo de la siguiente manera.
sudo apt install php -y
Sin embargo, PHP 8.2 es la última versión estable de PHP al momento de escribir esta guía. Para tener esta versión, debe instalarla desde el PPA de Ondrej Sury. Es un repositorio que proporciona las últimas versiones de PHP, como la serie PHP 8.x.
De vuelta en la línea de comando, agregue el PPA de Ondrej como se muestra.
sudo add-apt-repository ppa:ondrej/php
Cuando se le solicite continuar, presione ENTRAR. El comando agrega el repositorio de OndreJ al directorio /etc/apt/sources.list.d
y la clave de firma GPG.
A continuación, instale PHP 8.2 usando el administrador de paquetes APT.
sudo apt install php8.2 -y
El comando instala PHP 8.2 junto con otros paquetes adicionales y extensiones de PHP como php8.2-cli
, una interfaz de línea de comandos para ejecutar scripts PHP desde la línea de comandos, y php8.2-common
, que incluye archivos comunes para paquetes PHP.
Para ver la versión de PHP instalada, ejecute el comando:
php --version
Utilice la sintaxis siguiente para instalar extensiones PHP adicionales.
sudo apt install php8.2-[extname]
Por ejemplo, para instalar las extensiones php-mbstring
, php-mysql
y php-zip
, ejecute el comando:
sudo apt install php8.2-{mbstring,mysql,zip} -y
Para enumerar todos los módulos PHP instalados, ejecute el comando:
php -m
Paso 5: Pruebe la instalación de PHP desde un navegador
Ya hemos visto cómo comprobar la versión de PHP instalada en la línea de comando. También puede verificar la instalación de PHP desde un navegador siguiendo los siguientes sencillos pasos.
Primero, cree un archivo info.php
que muestre detalles completos sobre la configuración PHP de su sitio.
sudo nano /var/www/html/info.php
A continuación, pegue las siguientes líneas.
<?php
phpinfo()
?>
phpinfo()
es una función que muestra la configuración PHP de su sitio, incluida la versión de PHP, el entorno del sistema operativo, la información del encabezado, etc.
Guarde los cambios y salga del archivo. A continuación, visite la URL del servidor.
http://server-ip/info.php
La página de configuración de PHP se mostrará en el navegador.
Paso 6: configurar el host virtual Apache [opcional]
El servidor web Apache proporciona un diseño modular que le permite alojar múltiples dominios o sitios web utilizando hosts virtuales. El alojamiento virtual es un concepto que le permite alojar varios sitios web en un solo servidor. Un archivo de host virtual es un archivo de configuración que define el dominio que se alojará en el servidor. También define la ruta de los archivos del sitio web del dominio y otros parámetros cruciales.
En esta sección configuraremos un Apache virtual para nuestro dominio.
Para comenzar, cree un directorio de sitio web para su dominio en la /var/www/
ruta.
sudo mkdir -p /var/www/domain.com
A continuación, asigne la siguiente propiedad del directorio.
sudo chown -R $USER:$USER /var/www/domain.com
El entorno $USER
especifica el usuario actualmente conectado. Esto implica que el directorio del sitio web será propiedad del usuario que inició sesión y no del root.
A continuación, asigne permisos de directorio.
sudo chmod -R 755 /var/www/domain.com
Continuando, cree un archivo html de muestra dentro del directorio del sitio web. Esto se utilizará para demostrar que el host virtual está funcionando. Entonces, cree un archivo index.html
usando su editor de texto preferido. En este caso, estamos usando nano editor.
sudo nano /var/www/domain.com/index.html
Pegue las siguientes líneas de código.
<!DOCTYPE html>
<html lang="en">
<head>
<title>Welcome to our sample domain!</title>
</head>
<body>
<h1>Success! The sample domain virtual host is working!</h1>
</body>
</html>
Guardar y salir. A continuación, cree un archivo de configuración de host virtual en el directorio /etc/apache2/sites-available/
.
sudo nano /etc/apache2/sites-available/domain.com.conf
Pegue las siguientes líneas de código y guarde los cambios.
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName domain.com
ServerAlias www.domain.com
DocumentRoot /var/www/domain.com
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Una vez hecho esto, guarde y cierre el archivo. A continuación, habilite el sitio de alojamiento virtual utilizando la herramienta a2ensite
.
sudo a2ensite domain.com.conf
A continuación, deshabilite el sitio predeterminado, 000-default.conf
, utilizando la a2dissite
herramienta de línea de comando.
sudo a2dissite 000-default.conf
Para asegurarse de que la configuración de Apache sea correcta, ejecute el comando:
sudo apache2ctl configtest
Finalmente, reinicia Apache para aplicar todos los cambios realizados.
sudo systemctl restart apache2
Ahora verifique que Apache proporcione su nombre de dominio visitando la URL de su dominio.
http://www.domain.com
Si todo va bien, debería aparecer la siguiente página web, una confirmación de que la configuración del host virtual está funcionando.
Fuente original del artículo:
https://www.cherryservers.com/blog/install-lamp-on-ubuntu-22-04
https://www.cherryservers.com/blog/how-to-configure-ubuntu-firewall-with-ufw
https://www.cherryservers.com/blog/how-to-install-php-ubuntu