Cómo instalar y proteger Apache en Debian 11

11 set 2021 5 min di lettura
Cómo instalar y proteger Apache en Debian 11
Indice dei contenuti

Introducción

El servidor web Apache HTTP es uno de los servidores web más utilizados, especialmente en las distribuciones de Linux, que es una plataforma multiplataforma gratuita utilizada por una gran cantidad de sitios web en Internet. El servidor web Apache utiliza HTTP para procesar la solicitud y entretener la información web. Apache tiene toneladas de características útiles y su funcionalidad se puede mejorar con módulos adicionales. También permite a los programadores publicar su trabajo en Internet.

Entonces, en este artículo, discutiremos la instalación del servidor web Apache y cómo protegerlo después de instalarlo en Debian 11.

Requisitos

Antes de la instalación, debe iniciar sesión en el sistema Debian con acceso a todos los privilegios de sudo. También se recomienda que complete la configuración inicial del servidor en los sistemas Debian 11 recién instalados.

Instalar Apache en Debian

La última versión de los paquetes de Apache está disponible en el repositorio predeterminado de Debian 11. Entonces podemos instalarlo directamente usando el administrador de paquetes.

Después de iniciar sesión, abra la terminal y actualice la caché de apt con el comando que se indica a continuación:

sudo apt update 

Después de actualizar la caché de apt, ahora instale Apache2 en su Debian 11 Bullseye con el comando:

sudo apt install apache2 

Presione " y " para cualquier confirmación solicitada por el instalador.

Una vez que se completa el proceso de instalación. Verifique la versión de Apache instalada ejecutando el siguiente comando:

apache2 -v 
Server version: Apache/2.4.48 (Debian)
Server built:   2021-08-12T11:51:47

Otra forma de verificar la instalación de Apache es acceder a la página predeterminada de Apache2 utilizando la dirección IP o el nombre de host del servidor. Si no conoce su nombre de host, primero ejecute el siguiente comando:

hostname -I 

Ingrese el nombre de host o la dirección IP de su servidor en la barra de URL del navegador y presione Enter, se abrirá la página Apache2 Debian predeterminada.

Gestionar el servicio Apache

Una vez completada la instalación, el servicio Apache se puede administrar usando los comandos " systemctl ", ejecute el siguiente comando para verificar el estado del servidor:

sudo systemctl status apache2.service 

Presione "q" para salir. Algunos comandos para administrar el servicio Apache en Debian 11 son:

Para iniciar el servidor, use el comando:

sudo systemctl start apache2.service 

De manera similar, para detener el servicio, reemplace iniciar con una parada en el comando anterior:

sudo systemctl stop apache2.service 

El servicio se puede reiniciar usando:

sudo systemctl restart apache2.service 

Configure los ajustes del cortafuegos

Si su sistema tiene un firewall, deberá autorizar el acceso a ciertos puertos web para que los usuarios externos puedan usarlos. Ejecute el siguiente comando para permitir el puerto 80 (HTTP) y 443 (HTTPS) en la terminal Debian:

sudo ufw allow 80/tcp 
sudo ufw allow 443/tcp 

Ahora verifique comprobando el estado:

sudo ufw status 

Si no está activo, para habilitarlo para su uso:

sudo ufw enable 

Crea un host virtual en Apache

En Apache, los hosts virtuales le permiten administrar numerosos sitios web en un solo servidor. En el servidor web Apache, crearemos un host virtual. Para hacer esto, primero crearemos un sitio web llamado sample.com con el bloque de servidor que viene de serie con Apache.

Comencemos configurando el primer host virtual de su servidor Apache. Usaremos el dominio de ejemplo como "sample.com", pero puede nombrarlo según sus preferencias:

sudo mkdir -p /var/www/sample.com 

Ahora cambie los permisos y el propietario con el comando que se proporciona a continuación:

sudo chown -R www-data:www-data /var/www/sample.com 
sudo chmod -R 755 /var/www/sample.com 

Al ejecutar el comando que se indica a continuación, para probar nuestro sitio testdomain.info, ahora crearemos una página de índice de ejemplo. Para hacer esto, usaremos el editor nano para generar un archivo HTML similar a este:

sudo nano /var/www/sample.com/index.html 

Inserte el contenido que se muestra a continuación en la página de índice y presione Ctrl + O para guardar el archivo y Ctrl + X para salir del archivo y regresar a la terminal:

<html>
 <head>
   <title>Welcome to the page sample.com!</title>
 </head>
 <body>
   <h1>Congratulations! Your sample.com server succeeded!</h1>
 </body>
</html>

Al ejecutar el comando que se proporciona a continuación en una terminal, crearemos un archivo de hosts virtuales, que servirá el contenido del servidor:

sudo nano /etc/apache2/sites-available/sample.com.conf 

Se abrirá un archivo de texto, ingrese el siguiente contenido:

<VirtualHost *:80>
  ServerAdmin [email protected]
  ServerName sample.com
  ServerAlias www.sampe.com
  DocumentRoot /var/www/sample.com
  ErrorLog ${APACHE_LOG_DIR}/error.log
  CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Presione Ctrl + O para guardar el archivo y Ctrl + X para salir del archivo y regresar a la terminal.

Habilitar la configuración del dominio

Ejecute el siguiente comando para activar el archivo de host virtual:

sudo a2ensite sample.com.conf 

Deshabilite la configuración predeterminada de Apache ejecutando el comando que se indica a continuación:

sudo a2dissite 000-default.conf 

Los nuevos cambios en Apache se aplican al ejecutar el siguiente comando:

sudo systemctl restart apache2 

Resolver el error de nombre de host

Ahora, debemos verificar nuestra configuración en busca de errores de sintaxis, para probar la configuración, ejecute el comando que se indica a continuación:

sudo apache2ctl configtest 

Esto provocará un error, pero no se preocupe, lo solucionaremos. Cree una nueva configuración "servername.conf" y edítela en un editor de texto:

sudo nano /etc/apache2/conf-avaialable/servername.conf 

Ahora inserte el siguiente contenido en el archivo:

ServerName sample.com

Presione Ctrl + O para guardar el archivo y Ctrl + X para salir del archivo. Asegúrese de cambiar "sample.com" por su nombre de dominio real. Ahora, para habilitar el nombre del servidor conf, ejecute el comando que se indica a continuación:

sudo a2enconf servername 

Ahora ejecute el comando anterior nuevamente para probar la configuración:

sudo apache2ctl configtest 

Verá que el error de nombre de host se resuelve ahora.

Cómo proteger Apache2 en Debian 11

Para proteger el servidor Apache, edite el archivo "security.conf" , ejecute el siguiente comando para abrir el archivo:

sudo nano /etc/apache2/conf-enabled/security.conf 

Inserte o actualice el siguiente contenido en el archivo:

ServerTokens Prod
ServerSignature Off
TraceEnable Off
Header always append X-Frame-Options SAMEORIGIN
Header always set X-XSS-Protection: "1; mode=block"
Header always set X-Content-Type-Options: "nosniff"
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
Header always edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure

Guarde el archivo y ciérrelo.

Configure el protocolo SSLCipherSuite y SSL en el nivel del servidor para usar cifrados seguros para servir el sitio web editando el archivo ssl.conf:

sudo nano /etc/apache2/mods-enabled/ssl.conf 

Ahora inserte el contenido escrito a continuación en el archivo y presione Ctrl + O para guardar el archivo y Ctrl + X para salir del archivo:

SSLProtocol -all +TLSv1.2
SSLCipherSuite HIGH:!aNULL:!MD5

Ahora ejecute el comando de recarga de Apache para guardar la configuración:

sudo systemctl restart apache2.service 

Eso es todo. Ha instalado y asegurado correctamente el servidor Apache.

Conclusión

Apache Web Server es un servidor de código abierto utilizado por muchos sitios web en Internet y permite a los desarrolladores publicar su trabajo en Internet. Este servidor está disponible en todos los sistemas operativos, pero en este artículo discutimos su instalación en la última versión de Debian (sistema operativo Linux) y también explicamos cómo probarlo y asegurarlo después de una instalación exitosa. Podrá instalar Apache2 con éxito en Debian 11 Bullseye y configurar el servidor después de seguir esta guía.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.