Cómo instalar y asegurar Apache en Ubuntu 20.04

Cómo instalar y asegurar Apache en Ubuntu 20.04

Este tutorial lo ayudará a instalar el servidor web Apache en Ubuntu 20.04 Sistema operativo LTS (Focal Fossa). También aprenderá cómo asegurar su dominio usando el certificado SSL de Let's Cifrypt. Este tutorial también funcionará en Ubuntu 18.04, Ubuntu 16.04 y Ubuntu 19.10 sistemas de Linux.

Antes que empecemos

Antes de comenzar su trabajo:

  • Corriendo ubuntu 20.04 Sistema con SUDO Privilegios Acceso de shell.
  • Instrucciones de configuración iniciales del servidor completa
  • Un nombre de dominio registrado y señalado a la dirección IP pública de su servidor. Para este tutorial, usamos webhost.tecadmin.net, que se apunta a nuestro servidor.

Paso 1 - Instalación de Apache

Los paquetes Apache están disponibles bajo los repositorios de software predeterminados en Ubunts. Puede instalarlo fácilmente utilizando la herramienta de administración de paquetes convencional.

En primer lugar, actualice el índice de paquetes locales para reflejar los últimos cambios ascendentes. Luego instale el servidor web apache2.

SUDO APT UPDATY SUDO APT INSTALL APACHE2 

Después de la confirmación, APT instalará Apache y otras dependencias requeridas en su sistema.

Paso 2: prueba tu servidor web

Una vez que terminó la instalación, Apache Service comenzará automáticamente en su sistema Ubuntu. Puede encontrar el estado del servicio Apache ejecutando el siguiente comando:

sudo systemctl status apache2 

Salida de muestra:

● Apache2.Servicio: el servidor Apache HTTP cargado: cargado (/lib/systemd/system/apache2.servicio; activado; Vendor Preset: habilitado) Activo: Activo (Running) desde el Sol 2020-04-26 05:28:08 UTC; Docios de hace 10 minutos: https: // httpd.apache.org/docs/2.4/ PID principal: 15464 (Apache2) Tareas: 55 (límite: 2283) Memoria: 6.9m cgroup: /sistema.Slice/Apache2.Servicio ├─15464/usr/sbin/apache2 -k start ├─18646/usr/sbin/apache2 -k inicio └─18647/usr/sbin/apache2 -k inicio 26 de abril 05:28:08 Tecadmin Systemd [1]: Inicio del servidor Apache HTTP ... 26 de abril 05:28:08 Tecadmin Systemd [1]: inició el servidor Apache HTTP. 

El estado del resultado como "Activo: activo (en ejecución)" significa que el servicio apache ha comenzado con éxito. Sin embargo, la mejor manera de probar el servidor web, solicite una página desde Apache en el navegador web.

Verá la página de destino de Apache predeterminada. Significa que el servidor web Apache se ejecuta correctamente en su sistema.

Paso 3: crear un host virtual

Con la ayuda de hosts virtuales, puede alojar más de un dominio de un solo servidor. Un host virtual encapsula la configuración de un dominio. Configuraremos un host virtual con un subdominio llamado webhost.téquico.net, pero debe reemplazar esto con su propio nombre de dominio.

Comencemos con un directorio para nuestro dominio de la siguiente manera:

sudo mkdir/var/www/webhost sudo chmod -r 755/var/www/webhost sudo chown -r www -data: www -data/var/www/webhost 

A continuación, cree un índice de muestra.página HTML para alojar en este subdominio. Edite este archivo en su editor de texto favorito como Vim o Nano:

nano/var/www/webroot/índice.html 

Agregue el siguiente contenido de HTML de muestra:

Bienvenido a Tecadmin.neto!

Éxito!!!

12345678 Bienvenido a Tecadmin.neto!

Éxito!!!

Guardar archivo y cerrarlo.

Con el servidor Apache recientemente instalado, verá un archivo de configuración de host virtual predeterminado ubicado en etc/apache2/sites disponible/000 default.confusión. Pero este es un buen habit para crear un archivo de configuración separado para cada host virtual. Así que cree un nuevo archivo de host virtual como/etc/apache2/sites-disponible/webhost.tecadmin.neto.conf:

sudo nano/etc/apache2/sites disponible/webhost.tecadmin.neto.confusión 

Agregue la siguiente configuración al archivo de host virtual. Asegúrese de cambiar la dirección de correo electrónico de serverAdmin, nombre de servidor a su nombre de dominio. También puede incluir Serveralias para agregar más dominio o subdominios. Luego establezca el documento correcto como se creó anteriormente.

ServerAdmin [email protected] ServerName webhost.tecadmin.net #Serveralias www.alojamiento web.tecadmin.net ## Uncomment it para usar documentroot/var/www/webhost DESLOCHOVERRIDE TODO ERRORLOG $ apache_log_dir/error.Log customLog $ apache_log_dir/access.registro combinado
1234567891011 ServerAdmin [email protected] ServerName webhost.tecadmin.net #Serveralias www.alojamiento web.tecadmin.net ## Uncomment It para usar documentroot/var/www/webhost Permateverride todo ErrorLog $ apache_log_dir/error.Log customLog $ apache_log_dir/access.registro combinado

Guardar archivo y cerrarlo.

Por defecto, Apache lee archivos de configuración del host virtual en el directorio/etc/apache2/sites disponible. Use la herramienta A2ensite para habilitar este host virtual:

sudo a2ensite webhost.tecadmin.neto.confusión 

El comando anterior creará un enlace simbólico webhost.tecadmin.neto.Archivo conf a los sitios directorio disponible.

Una vez hecho esto, ejecute el siguiente comando a continuación para verificar los archivos de configuración:

sudo apache2ctl configtest 

Debería ver la siguiente salida:

Sintaxis OK 

A continuación, reinicie el servicio Apache para aplicar sus cambios:

sudo systemctl reiniciar apache2 

Apache está listo para servir su contenido en su nombre de dominio configurado. Puede probar esto navegando a http: // webhost.tecadmin.neto,

Paso 4 - Configurar Let's Cifrypt SSL

Utilizamos el certificado SSL en cifrado para asegurar el sitio web en Apache Web Server. CERTBOT es la utilidad de la línea de comando para trabajar con los certificados Let's CiCrypt. Ejecute el siguiente comando para instalar certbot binary:

sudo apto install python3-certbot-apache 

Esto instalará todos los paquetes requeridos para el certbot.

Una vez que terminó el proceso de instalación. Ejecute el siguiente comando para solicitar la autoridad de certificado de encriptamiento para emitir certificado para nuestro dominio webhost.tecadmin.neto. Puede agregar múltiples dominios o subdominios utilizando parámetros "-d" separados.

certbot -d webhost.tecadmin.neto 

Wizard le pedirá a su dirección de correo electrónico que envíe sus actualizaciones. Luego acepte términos de servicio para continuar. A continuación se muestra los registros completos del comando:

Guardar registro de depuración en/var/log/letsencrypt/letsencrypt.complementos de registro seleccionados: autenticador apache, instalador apache ingrese la dirección de correo electrónico (utilizada para avisos de renovación y seguridad urgente) (ingrese 'c' para cancelar): [correo electrónico protegido] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Lea los términos de servicio en https: // Letsencrypt.org/Documents/LE-SA-V1.2 de noviembre-15-2017.pdf. Debe acordar para registrarse con el servidor ACME en https: // acme-v02.API.Letsencrypt.org/directorio - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (a) Gree/(C ) Ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ¿Estaría dispuesto a compartir su dirección de correo electrónico con Electronic Frontier Foundation, un socio fundador del Proyecto Let’s Let Cintpt y la organización sin fines de lucro que desarrolla CERTBOT? Nos gustaría enviarle un correo electrónico sobre nuestro trabajo en cifrado de la web, noticias de ef, campañas y formas de apoyar la libertad digital. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Sí No: Y Obtener un nuevo certificado que realiza los siguientes desafíos: HTTP-01 Desafío para Webhost.tecadmin.Net habilitado el módulo de reescritura de Apache esperando la verificación ... la limpieza de desafíos creó un SSL VHOST AT/ETC/APACHE2/Sites disponible/webhost.tecadmin.net-le-ssl.Conf Enablado Apache SOCACHE_SHMCB Módulo habilitado Módulo SSL Apache Certificado de implementación en VirtualHost/Etc/Apache2/Sites-Available/Webhost.tecadmin.net-le-ssl.Conf Enliging Sitio disponible:/etc/apache2/sites disponible/webhost.tecadmin.net-le-ssl.Conf. Elija si redirige o no el tráfico HTTP a HTTPS, eliminando el acceso HTTP. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: Sin redirección: no realice más cambios en la configuración del servidor web. 2: Redirección: haga que todas las solicitudes redirigan para asegurar el acceso HTTPS. Elija esto para nuevos sitios, o si está seguro de que su sitio funciona en HTTPS. Puede deshacer este cambio editando la configuración de su servidor web. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Seleccione el número apropiado [1-2] y luego [Enter] (presione 'C' para cancelar): 2 Módulo de reescritura de Apache habilitado Redireccionando VHOST en/etc/apache2/sites habilitado/webhost.tecadmin.neto.conf a SSL Vhost in/etc/ap Ache2/sites disponible/webhost.tecadmin.net-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Felicitaciones! Ha habilitado con éxito https: // webhost.tecadmin.NET debe probar su configuración en: https: // www.ssllabs.com/ssltest/analizar.html?d = webhost.tecadmin.NET - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Notas importantes: - Felicitaciones! Su certificado y cadena se han guardado en:/etc/Letsencrypt/Live/Webhost.tecadmin.net/fullchain.PEM Su archivo clave se ha guardado en:/etc/Letsencrypt/Live/Webhost.tecadmin.net/privkey.PEM Su certificado caducará el 2020-07-25. Para obtener una versión nueva o ajustada de este certificado en el futuro, simplemente ejecute CertBot nuevamente con la opción "Certonly". Para renovar no interactivamente * todos * de sus certificados, ejecute "CertBot Renew": las credenciales de su cuenta se han guardado en su directorio de configuración CERTBOT en /etc /Letsencrypt. Debe hacer una copia de seguridad segura de esta carpeta ahora. Este directorio de configuración también contendrá certificados y claves privadas obtenidas por CERTBOT, por lo que es ideal hacer copias de seguridad regulares de esta carpeta. - Si le gusta CERTBOT, considere apoyar nuestro trabajo: Donando a ISRG/Vamos en cifrado: https: // Letsencrypt.org/done donar a eft: https: // eff.org/donate-le 

Ha configurado con éxito su dominio con el certificado SSL. Ahora, puede acceder a su dominio sobre el protocolo HTTPS como se muestra en la captura de pantalla a continuación:

Paso 5 - Ajuste las reglas de firewall

Puede usar el nombre del servicio como "http" o "https" para permitir en firewalld. Para abrir el puerto HTTP y HTTPS en FireWalld Ejecute los siguientes comandos:

sudo firewall-cmd --Permanent --add-service = http sudo firewall-cmd --Permanent --add-service = https 

Una vez que agrega las reglas, recarga los cambios usando el siguiente comando.

sudo firewall-cmd--releir 

Paso 6 - Administrar el servicio Apache

Ahora, tiene su servidor web Apache en funcionamiento, vamos con los comandos de administración de servicios de Apache.

Para detener el servidor web Apache, escriba:

sudo systemctl stop apache2 

Para iniciar el servidor web Apache (si se detiene), escriba:

sudo systemctl iniciar apache2 

Para reiniciar (detener y luego comenzar) el servicio Apache, escriba:

sudo systemctl reiniciar apache2 

En lugar de detener, iniciar un servidor en ejecución, use la opción de recarga para aplicar los cambios de archivo de configuración sin dejar caer las conexiones actuales. Pero esto no leerá ningún archivo de configuración nuevo:

sudo systemctl recarga apache2 

Para deshabilitar el servicio Apache para inicio automático en el arranque del sistema, escriba:

sudo systemctl deshabilitar apache2 

Para habilitar el servicio Apache para iniciar automáticamente el arranque del sistema, escriba:

sudo systemCTL habilita apache2 

Conclusión

El servidor web Apache se está ejecutando en su Ubuntu 20.04 Sistema operativo LTS.