Servidor web Apache, instalación y conceptos para usarlo en Ubuntu 20.04

Una  vez más aquí. En esta ocasión vengo a dejar un post sobre algo que siempre hago en mis equipos cuando instalo una nueva versión de Ubuntu (hace unos días se publicó la versión 20.04 de Ubuntu). En las siguientes líneas vamos a ver cómo podemos instalar un servidor web Apache en Ubuntu 20.04. Como mucha gente sabe, el servidor HTTP Apache es el servidor web más utilizado en el mundo. Proporciona muchas funciones potentes, en las que se incluyen módulos que cargan de forma dinámica, soporte de medios robusto y una amplia integración con otro software popular.

Antes de comenzar esta guía, debemos disponer de un usuario regular (no root) con privilegios de sudo configurado en el equipo. Además, debemos habilitar un firewall básico para bloquear puertos no esenciales. Cuando tengamos la cuenta de usuario disponible, iniciaremos sesión como usuario no root para comenzar.

Instalar Apache en Ubuntu 20.04

Apache está disponible en los repositorios de software predeterminados de Ubuntu, por lo que es posible instalarlo utilizando herramientas de administración de paquetes convencionales.

Vamos a empezar actualizando el índice de paquetes disponibles:

Ahora ya podemos instalar el paquete apache2:

instalar el servidor web Apache

Finalizada la instalación podremos comprobar que versión de Apache acabamos de instalar escribiendo en la misma terminal:

versión de apache instalada en Ubuntu 20.04

Ajustes del cortafuegos

Antes de probar Apache, es necesario modificar la configuración del firewall para permitir el acceso externo a los puertos web predeterminados. Suponiendo que hemos seguido las instrucciones de los requisitos previos, debemos tener un firewall UFW configurado para restringir el acceso al servidor.

Durante la instalación, Apache se registra con UFW para proporcionar algunos perfiles de aplicación que se pueden usar para habilitar o deshabilitar el acceso a Apache a través del firewall.

Vamos a poder enumerar los perfiles de la aplicación ufw escribiendo en la terminal (Ctrl+Alt+T):

ufw app list

Como lo indica la salida, hay tres perfiles disponibles para Apache:

  • Apache → Este perfil solo abre el puerto 80 (tráfico web normal sin cifrar)
  • Apache Full → Este perfil abre tanto el puerto 80 (tráfico web normal sin cifrar) como el puerto 443 (tráfico cifrado TLS / SSL)
  • Apache Secure → Este perfil solo abre el puerto 443 (tráfico cifrado TLS / SSL)

Se recomienda habilitar el perfil más restrictivo que aún permitirá el tráfico que configuramos. Como todavía no hemos configurado SSL, solo vamos a permitir el tráfico en el puerto 80:

ufc allo apache

Podremos verificar el cambio escribiendo:

ufc status

Comprobar el servidor web

Al final del proceso de instalación, Ubuntu 20.04 inicia Apache. El servidor web ya debería estar en funcionamiento. Esto lo podremos verificar escribiendo:

Status del servidor web Apache

Según lo confirmado por este resultado, el servicio se ha iniciado con éxito. Sin embargo, la mejor manera de probar esto es solicitar una página de Apache. Podremos acceder a ella para confirmar que el software se ejecuta correctamente a través de su dirección IP. Si no conoces la dirección IP del equipo se puede obtener escribiendo en la terminal (Ctrl+Alt+T):

comando hostname -I

Este comando nos mostrará algunas direcciones locales separadas por espacios. Podemos probar cada uno en el navegador web para determinar si funcionan. Deberíamos ver la página web predeterminada de Ubuntu 20.04 Apache:

servidor web apache funcionando en local

Esta página también incluye información básica sobre archivos de Apache importantes y ubicaciones de directorios.

Gestionar Apache

Ahora que ya tenemos el servidor web en funcionamiento, veamos algunos comandos básicos de administración con systemctl.

Para detener el servidor web:

Iniciar el servidor web cuando está detenido:

Para detener e iniciar el servicio:

Si simplemente estamos haciendo cambios en la configuración, Apache a puede recargar sin perder las conexiones. Para hacer esto, usaremos el comando:

De forma predeterminada, Apache está configurado para iniciarse automáticamente cuando se inicia el servidor. Si esto no es lo que queremos lo podemos desactivarlo escribiendo:

Para volver a habilitar el servicio para que se inicie en el arranque:

Archivos importantes y directorios de Apache

Contenido

  • /var/www/html → El contenido web real, que por defecto solo consiste en la página Apache predeterminada. Esto se puede cambiar en los archivos de configuración de Apache.

Configuración del servidor

  • /etc/apache2 → Todos los archivos de configuración de Apache residen aquí.
  • /etc/apache2/apache2.conf → Se trata del archivo de configuración principal de Apache. Este archivo es responsable de cargar muchos de los otros archivos en el directorio de configuración.
  • /etc/apache2/ports.conf → Este archivo especifica los puertos en los que Apache escuchará. De forma predeterminada, Apache escucha en el puerto 80. Además escucha en el puerto 443 cuando se habilita un módulo que proporciona capacidades SSL.
  • /etc/apache2/sites-available/ → El directorio donde se pueden almacenar hosts virtuales por sitio. Apache no utilizará los archivos de configuración que se encuentran en este directorio a menos que estén vinculados al directorio habilitado para sitios. Por lo general, toda la configuración de bloqueo del servidor se realiza en este directorio y luego se habilita mediante la vinculación al otro directorio con el comando a2ensite.
  • /etc/apache2/sites-enabled/ → El directorio donde se almacenan los hosts virtuales habilitados por sitio. Por lo general, estos se crean al vincular a los archivos de configuración que se encuentran en el directorio de sitios disponibles con el a2ensite. Apache lee los archivos de configuración y los enlaces que se encuentran en este directorio cuando se inicia o vuelve a cargar para compilar una configuración completa.
  • /etc/apache2/conf-available/, /etc/apache2/conf-enabled/ → Estos directorios tienen la misma relación que los directorios sitios disponibles y sitios habilitados, pero se utilizan para almacenar fragmentos de configuración que no pertenecen a un anfitrión virtual.
  • /etc/apache2/mods-available/, /etc/apache2/mods-enabled/Estos directorios contienen los módulos disponibles y habilitados, respectivamente. Los archivos que terminan en .load contienen fragmentos para cargar módulos específicos, mientras que los archivos que terminan en .conf contienen la configuración de esos módulos.

Registros del servidor

  • /var/log/apache2/access.logCada solicitud al servidor web se registra en este archivo de registro a menos que Apache esté configurado para hacer lo contrario.
  • /var/log/apache2/error.log → De forma predeterminada, todos los errores se registran en este archivo.

Se puede encontrar más información acerca de este servidor en la página web del proyecto.







¿Qué te ha parecido este post?

¡Haz clic en una estrella para calificarla!

Puntuación media 5 / 5. Recuento de votos: 1

¡No hay votos hasta ahora! Sé el primero en calificar esta publicación.

No te pierdas otros artículos ...

¡Síguenos en las redes sociales!

¡Lamentamos que esta publicación no te haya sido útil!

¡Permítanos mejorar esta publicación!

¿Cuéntanos cómo podemos mejorar esta publicación?

Resumen
Servidor web Apache en Ubuntu 20.04, instalación y conceptos básicos
Nombre
Servidor web Apache en Ubuntu 20.04, instalación y conceptos básicos
Descripción
En este post vamos a ver cómo podemos instalar Apache en Ubuntu 20.04 y algunos conceptos básicos para poder utilizar este servidor web en nuestro equipo.
Autor
sapoclay
Nombre del editor
entreunosyceros
Logo del editor

entreunosyceros

@entreunosyceros

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.