Uno de los usos más comunes de un servidor es alojar contenido accesible desde un navegador web. Una combinación muy común es el servidor LAMP, la cual consiste en el servidor web Apache, la extensión para ejecutar scripts PHP y el gestor de bases de datos MySQL (o MariaDB en algunos casos).
Lo primero que necesitamos es una instalación limpia de Ubuntu 20.04 o Debian 10 e instalar el servidor web
sudo apt install apache2
Al introducir la dirección del servidor debería aparecernos algo así
Para instalar MariaDB haríamos lo siguiente
sudo apt install mariadb-server
Usaremos el siguiente comando para mejorar la seguridad del servicio MySQL
sudo mysql_secure_installation
Para instalar el soporte para PHP usaríamos los siguientes comandos
sudo apt install php libapache2-mod-php php-mysql
Algunos módulos recomendados
sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip
Para utilizar varios hosts en un mismo servidor creamos un archivo en el directorio “/etc/apache2/sites-enabled” con un nombre que nos permita identificarlo con facilidad
sudo nano /etc/apache2/sites-enabled/frank.asgardius.company.conf
El archivo de configuración sería parecido a este
<VirtualHost *:80>
DocumentRoot /var/www/html
ServerName frank.asgardius.company
<Directory /var/www/html>
Options -Indexes +FollowSymLinks
AllowOverride All
</Directory>
</VirtualHost>
Para obtener un certificado SSL gratuito con Let’s Encrypt necesitamos instalar los siguientes paquetes
sudo apt install certbot python3-certbot-apache
Una vez instalado solicitamos el certificado con el siguiente comando y seguimos las instrucciones
sudo certbot --apache