Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Actividad 6 Instalación y configuración de Apache D06 Valenciano Tadeo Jeremy Esau 218431076 JOSE DE JESUS SOTO SANCHEZ 31-03-2023 ADMINISTRACION DE SERVIDORES Introducción ¿Qué es un servidor web? Un servidor web es el lugar donde se almacenan y procesan los sitios web. Los servidores web tienen la capacidad de procesar solicitudes entrantes y enviar las respuestas a los navegadores de los usuarios. Los servidores web también son capaces de ejecutar diferentes tipos de software y servicios, como el procesamiento de lenguajes de programación y la gestión de bases de datos. Los servidores web son objetivos frecuentes de ataques maliciosos, por lo que es fundamental implementar medidas de seguridad adecuadas. Algunas de las mejores prácticas incluyen la implementación de certificados SSL, la configuración adecuada de permisos y contraseñas, y la monitorización de registros y actividad del servidor. ¿Qué es Apache y cuál es su importancia? Apache es un software que funciona como intermediario entre los sitios web o aplicaciones en línea y los usuarios que los acceden. Apache es como el guardián de la puerta que asegura que el tráfico web fluya de manera segura y ordenada entre los usuarios y los sitios web o aplicaciones. Además, también permite a los propietarios de sitios web personalizar y adaptar el comportamiento del servidor para satisfacer las necesidades específicas de sus proyectos en línea. Algunas de las características más destacadas de Apache incluyen la capacidad para gestionar el tráfico web de alta carga, soporte para múltiples lenguajes de programación, una amplia gama de módulos de extensión y una gran comunidad de desarrolladores y usuarios que pueden ayudar a resolver problemas y proporcionar soporte. Desarrollo del tema (Proceso de instalación de Apache) Instalaremos los paquetes necesarios, ejecutando: apt install apache2 Esperamos a que finalice la instalacion de apache. Editamos con nano el archivo de configuración principal con nano /etc/apache2/apache2.conf El archivo se vera como el siguiente: Al final del archivo agregar la llave ServerName, apuntando al nombre de dominio ó IP del servidor: ServerName IPServidorDebian Quedando el archivo /etc/apache2/apache2.conf con algo similar a esto, después guardaremos el archivo y salimos del editor. Después, debemos revisar los errores de sintaxis escribiendo: apache2ctl configtest Debe regresar: Syntax OK Reiniciamos Apache para implementar los cambios con el comando: /etc/init.d/apache2 restart Iniciamos el navegador firefox de Linux, apuntado al nombre del sitio Web, ejemplo: http://www.nombredominio Ahora procederemos a instalar el paquete Open SSL, con el cual se genera el certificado de seguridad, esto mediante el comando: apt install openssl como super usuario Para poder utilizar certificados TLS, se debe de activar mod_ssl, un módulo de Apache que permite el cifrado SSL, esto mediante el comando: a2enmod ssl Reiniciar Apache para activar el modulo con el comando: systemctl restart apache2 Para utilizar el cifrado, se debe generar un nuevo certificado TLS a través de la siguiente instrucción: openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt El cual generara un certificado autofirmado que durara 365 dias y sera de 2048 bits, -nodes: le dice a OpenSSL que omita la opción de asegurar nuestro certificado con una contraseña, al final se espefica la -keyout: ruta del archivo de clave privada generado y -out: Ruta del archivo de certificado generado Para la generación del certificado será necesario introducir la información que se Solicita como lo es CIUDAD, ESTADO,LOCALIDAD,ORGANIZACIÓN,NOMBRE_HOST,CORREO. Se comprueba que se hayan creado correctamente ambos archivos, mediante los comandos: ls -l /etc/ssl/private/apache-selfsigned.key ls -l /etc/ssl/certs/apache-selfsigned.crt Una vez que se ha obtenido el certificado autofirmado y la clave, es necesario actualizar la configuración de Apache para que los utilice. Para ello, se debe crear un nuevo archivo en la ruta /etc/apache2/sites-available con el nombre del dominio correspondiente. Para crear dicho archivo, se puede utilizar el editor de texto nano mediante el siguiente comando: nano /etc/apache2/sites-available/nombrededominio.conf Pondremos esta configuración dentro del archivo: <VirtualHost *:80> ServerName nombrededominio ServerAlias www.nombrededominio Redirect permanent / https://www.nombrededominio/ </VirtualHost> <VirtualHost *:443> ServerName nombrededominio DocumentRoot /var/www/nombrededominio SSLEngine on SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key </VirtualHost> Después debebmos guardar el archivo con Ctrl+O seguido de “Enter” y salimos del editor con Ctrl+X A continuación se crea la carpeta raíz para el servidor de dominio con : mkdir /var/www/nombrededominio y se copia el archivo index.html a dicha carpeta con el siguiente comando: cp /var/www/html/index.html /var/www/nombrededominio Habilitamos la configuración con el comando: a2ensite nombrededominio.conf y Verificamos que no existan errores de configuración con el comando: apache2ctl configtest Finalmente reiniciamos apache con: systemctl restart apache2 Para acceder al sitio web deseado desde un navegador de Linux, se debe ingresar en la barra de direcciones la URL correspondiente, por ejemplo: https://www.nombredominio. Al acceder por primera vez a un sitio que utiliza un certificado autofirmado en lugar de uno emitido por una entidad certificadora reconocida, es posible que el navegador muestre una advertencia de seguridad. Oprimimos el botón de “Aceptar el Riesgo y Continuar” Como podemos observar tambien podemos acceder a la pagina web con la dirreccion Ip desde nuestro sistema windows Como parte de un reto adicional de la practica se deberá de reemplazar la pagina de inicio por una diseñada por el alumno, la cual contenga imágenes, animaciones y por lo menos dos enlaces: 1) Un enlace a otra pagina adicional (2da Pagina) dentro del mismo servidor (Intranet) 2) Un enlace a un sito Web externo (Internet) Lo primero que haremos es instalar un editor de codigo en nuestro SO linux llamado VS code para editar nuestro index.html Ejecutaremos el siguiente comando para agregar snap: sudo apt install snapd Despues instalaremos VS code sudo snap install code --classic Despues nos dirigiremos al directorio donde se encuentra el index.html y lo editaremos con vs code con los siguientes comandos: cd /var/www/html/ code index.html Se abrira un archivo como este: Editaremos el archivo con el nuevo codigo html y guardaremos los cambios como super usuario Despues copiaremos el archivo index.html a /var/www/valencianotadeo.udg con el comando: cp /var/www/html/index.html /var/www/valencianotadeo.udg Posteriormente nos dirigiremos al directorio: /var/www/valencianotadeo.udg y crearemos un archivo llamado docs.html con touch. Editaremos el archivo docs.html con nano para insertar nuestro código html de la segunda página del servidor(intranet) Quedando algo así nuestro archivo docs.html Despues copiaremos el archivo docs.html a /var/www/html con el comando: cp /var/www/valencianotadeo.udg/docs.html var/www/html Finalmente reiniciamos apache con: systemctl restart apache2 Verificamos los cambios realizados en nuestro servidor web entrando al dominio previamente configurado.Y hacemos click al enlace interno para verificar que todo este en orden. Conclusión ¿Que aprendí? Durante la realización de esta práctica aprendí acerca del servicio Apache además de su instalación y configuración en un sistema operativo Linux, puedo decir que Apache Apache es especialmente importante debido a su fácil integración con el sistema operativo y la capacidad de personalizar la configuración del servidor para satisfacer las necesidades específicas de los usuarios. También aprendí acerca de el SSL el cual es un protocolo de seguridad que proporciona una conexión segura entre el servidor y el cliente en internet. SSL utiliza técnicas de cifrado para proteger la información confidencial transmitida en la red como contraseñas u otro tipo de datos importantes. Finalmente aprendí un poco acerca de los certificados autofirmados emitidos por el propio servidor web en lugar de una autoridad de certificación reconocida. Aunque los certificados SSL autofirmados son menos seguros que los emitidos por una autoridad de certificación reconocida, son una solución útil para redes privadas como lo fue el caso de la elaboración de esta práctica. Problemática: Durante la realización de la practica al momento de editar el documento index.html se me dificulto editarlo con nano debido a que desconocía de los comandos para seleccionar todo el documento. Soluciones: Se soluciono instalando un software especializado en la edición de archivos con código llamado Vs code, gracias a este editor pude agregar y eliminar código al archivo index.html.
Compartir