Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Manual técnico Procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre. Galicia Muñoz Alexia Guadalupe Hernández Reyna Janeth Montserrat Rodríguez Bustamante Bryan Jared Orduña Altamirano Maria de los Angeles Instituto tecnológico de México Campus Pachuca Hgo Ingeniería en sistemas computacionales. 1 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Índice Contenido Índice ______________________________________________________________ 2 Tabla de ilustraciones __________________________________________________ 3 Introducción __________________________________________________________ 4 Términos y definiciones ________________________________________________ 5 ¿Qué es un servidor web? ______________________________________________ 5 ¿Cuáles son las características de un servidor web?________________________ 5 A nivel de software _________________________________________________ 5 A nivel de hardware ________________________________________________ 7 ¿Qué es apache? _____________________________________________________ 7 Cómo funciona un servidor Apache _____________________________________ 8 Instalación DE SERVIDOR WEB APACHE CON UBUNTU 18.04 LTS _______________ 9 Instalación del servidor APACHE ________________________________________ 14 Conclusiones _________________________________________________________ 15 Referencias ___________________________________________________________ 17 2 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Tabla de ilustraciones Ilustración 1 login __________________________________________________________________ 9 Ilustración 2 Comando CD ____________________________________________________________ 9 Ilustración 3 Instalación ____________________________________________________________ 10 Ilustración 4 Listado _______________________________________________________________ 10 Ilustración 5 Puerto 80 _____________________________________________________________ 10 Ilustración 6 Estatus _______________________________________________________________ 10 Ilustración 7 Verificación ___________________________________________________________ 11 Ilustración 8 Directorio _____________________________________________________________ 11 Ilustración 9 $USER ________________________________________________________________ 11 Ilustración 10 Aseguración __________________________________________________________ 11 Ilustración 11 Pagina _______________________________________________________________ 12 Ilustración 12 Cuerpo ______________________________________________________________ 12 Ilustración 13 Comando ls __________________________________________________________ 12 Ilustración 14 Alojamiento __________________________________________________________ 12 Ilustración 15 SWAP.conf ___________________________________________________________ 13 Ilustración 16 Archivo habilitado _____________________________________________________ 13 Ilustración 17 Reinicio _____________________________________________________________ 13 Ilustración 18 Archivo deshabilitado __________________________________________________ 13 Ilustración 19 Sin errores ___________________________________________________________ 13 Ilustración 20 Reinicio _____________________________________________________________ 14 3 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Introducción Un servidor web es un software que forma parte de un servidor y su misión principal es devolver datos cuando recibe solicitudes de los usuarios. En otras palabras, es el software que permite a aquellos que deseen mostrar una página Web en su navegador pueda hacerlo. El protocolo utilizado para la transmisión de archivos es HTTP o HTTPS . Este protocolo se basa a su vez en los protocolos de red IP y TCP. Así, un servidor web puede mostrar el contenido de un sitio web de forma simultánea a varios navegadores web. La cantidad de solicitudes, además de la velocidad con la que pueden ser procesadas, depende de varios factores: hardware, número de solicitudes realizadas por los usuarios al mismo tiempo, etc. La función principal del servidor Apache es servir sitios web alojados en el servidor a diferentes navegadores como Chrome, Firefox, Safari,... Apache garantiza que la comunicación entre el servidor web y el cliente web sea fluida y constante. Entonces, cuando un usuario realiza una solicitud HTTP a través del para ingresar a un sitio web o una URL específica, devuelve la información solicitada a través del protocolo HTTP. En Apache podemos aplicar una alta personalización a través de su sistema modular, de forma que podemos activar o desactivar diversas funcionalidades a través de los módulos de Apache. 4 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Términos y definiciones ¿Qué es un servidor web? Un servidor web (server) es un ordenador de gran potencia que se encarga de “prestar el servicio” de transmitir la información pedida por sus clientes (otros ordenadores, dispositivos móviles, impresoras, personas, etc.) Los servidores web (web server) son un componente de los servidores que tienen como principal función almacenar, en web hosting, todos los archivos propios de una página web (imágenes, textos, videos, etc.) y transmitirlos a los usuarios a través de los navegadores mediante el protocolo HTTP (Hipertext Transfer Protocol). ¿Cuáles son las características de un servidor web? Como características necesarias de un servidor web a nivel de software y hardware, podemos encontrar: A nivel de software Sistema Operativo Se encarga de que el hardware funcione y logre interactuar con los servicios que corre el sistema. Algunos ejemplos son: • Unix, • Linux, • o Windows. Sistemas de archivos Es una guía lógica que permite que el sistema pueda ubicar, ordenar y filtrar datos en el disco duro, con el fin de que podamos leerlos, modificarlos o eliminarlos. Software servidor HTTP Son los diferentes tipos de servidores web especializados en transmitir el contenido vía web (Apache, Nginx, IIS, Caddy, etc.). Virtual Hosting Permite que bajo el mismo web server e IP se alojen en varios sitios web distinto. 5 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Despacho de ficheros estáticos y dinámicos Los ficheros estáticos brindan soporte para alojar y despachar archivos como: • JPG, • GIF, • PNG, • BMP, • CSS, • TXT, • HTML, • Javascript, • MP3 • y MP4. Los ficheros dinámicos funcionan para información en PHP, ASP, Python, Ruby y GO. Monitoreo de Red y Límites Permite monitorear el tránsito de red, paquetes que entran y salen, así como servicios de sistema y uso de hardware como: • el uso del Almacenamiento; • consumo de RAM; • porcentaje de ocupación del CPU; • velocidad de la red; • rendimiento de escritura/lectura en disco. Sistema de seguridad El sistema de seguridad de un servidor debe: • imponer límites de acceso por dirección IP; • denegar o permitirle acceso a ciertos archivos o URLs; 6 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre • solicitar usuario y contraseña para autenticación básica HTTP; • realizar un filtrado de peticiones inseguras; • dar soporte para despachar información cifrada con certificados de seguridad SSL vía HTTPS. A nivel de hardware Rack y gabinete El rack se refiere al lugar donde se alojan los servidores físicamente y el gabinete es el armazón que sostiene los componentes de hardware de una computadora. CPU Es el centro de procesamiento de datos del servidor desde donde se realizan todos los cálculos lógicos y matemáticos para que el usuario pueda manipular y acceder a los datos como necesita. Memoria RAM Se utiliza para almacenar información y datos de forma temporal dependiendo de la demanda del usuario a través del sistema operativo. Unidades de almacenamiento El almacenamiento de servidores web se hace en discos duros, los cuales permiten almacenar la información del sistema operativo, los servicios de sistema, y en última instancia los datos cargados por el usuario. Puerto de red El ancho de banda es el que te permite tener un volumen suficiente para transmitir información de ida y vuelta hacia y desde tu servidor web. ¿Qué es apache? El nombre Apache se refiere a la tribu de los nativos americanos, conocidos por su gran resistencia en el combate y por sus estrategias de guerra. Se ha vuelto muy popular entre los programadores debido a su modularidad y actualización constante por parte de la comunidad. Los servidores Apache podemos encontrarlos en la mayoría de hosting a nivel mundial, funcionando sin problema con paneles como WePanel, Plesk, VestaCP, etc. 7 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Una de las principales características de Apache es el uso del archivo .htaccess, muy utilizado entre todos los usuarios web. Cómo funciona un servidor Apache La función esencial del servidor Apache es servir las webs alojadas en el servidor a los diversos navegadores como Chrome, Firefox, Safari,… Apache consigue que la comunicación entre el servidor web y el cliente web (usuario que solicita la información) sea fluida y constante. Haciendo que cuando un usuario haga una petición HTTP a través de navegador para entrar a una web o URL específica, Apache devuelva la información solicitada a través del protocolo HTTP. En Apache podemos aplicar una alta personalización a través de su sistema modular, de forma que podemos activar o desactivar diversas funcionalidades a través de los módulos de Apache. Estos módulos de Apache hay que usarlos con cautela ya que pueden afectar a la seguridad y funcionalidades del servidor web. 8 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Instalación DE SERVIDOR WEB APACHE CON UBUNTU 18.04 LTS Para comenzar debemos iniciar sesión en putty con nuestro nombre de usuario y utilizando la dirección ip y la contraseña que anteriormente se definió en azure. Ilustración 1 login Ejecutaremos el comando “cd /” para acceder al directorio del usuario. Después, actualizamos los repositorios utilizando el comando “sudo apt upadate”. Ilustración 2 Comando CD 9 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre instalamos el servidor web apache con el comando “sudo apt install apache2” como se muestra en la imagen. Ilustración 3 Instalación Se enlistaran las aplicaciones que tiene integradas el firewall con el comando “sudo ufw app list”. Ilustración 4 Listado Se permite el tráfico web a través del puerto 80 con el comando “sudo ufw allow ‘Apache’. Ilustración 5 Puerto 80 Se verifica el estatus del servidor a través del comando “sudo systemctl status apache2”. Ilustración 6 Estatus 10 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Se verifica nuevamente accediendo con la ip pública, escribiendo en el navegador la siguiente dirección: “http://dirección_ip” Ilustración 7 Verificación Se realiza un directorio con el comando “sudo mkdir /var/www/nombre_directorio/html” para la creación de directorios padres. –p Ilustración 8 Directorio Después, se le asigna un usuario propietario del directorio utilizando la variable $USER como se muestra en la imagen Ilustración 9 $USER Se asegura el directorio a través del comando “sudo chmod – R 755 / var/www/swap Ilustración 10 Aseguración 11 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Después, creamos una página de ejemplo index.html usando el comando “nano /var/www/nombre_directorio/html/index.html” Ilustración 11 Pagina Una vez dentro del archivo, se teclea el cuerpo de la página y se guarda el archivo presionando CTRL+O. Finalmente se cierra con CTRL+X. Ilustración 12 Cuerpo Después, accedemos al directorio con el comando “cd “. Con el comando “ls” revisamos el contenido para verificar que se creó correctamente. Ilustración 13 Comando ls Para continuar, creamos el archivo de alojamiento virtual con el comando “sudo nano /etc/apache2/sites-available/SWAP.conf Ilustración 14 Alojamiento 12 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Continuamos accediendo al directorio de los sitios disponibles para verificar que el archivo que se creó esté dentro. Ilustración 15 SWAP.conf Posteriormente habilitamos el archivo usando el comando “sudo a2ensite SWAP.conf. Ilustración 16 Archivo habilitado Para que los cambios se actualicen, se requiere reiniciar el servidor de apache. Lo anterior por medio del comando “sudo systemctl stop apache2”. Ilustración 17 Reinicio Una vez concluido lo anterior, se deshabilita el sitio por defecto del servidor apache a través del comando “sudo a2dissite 000-defaut.conf”. Ilustración 18 Archivo deshabilitado Probamos que la configuración no tenga errores utilizando el comando “sudo apache2ctl configtest” Ilustración 19 Sin errores 13 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Reiniciamos el servicio de apache con el comando “sudo systemctl restart apache2” Ilustración 20 Reinicio Para finalizar, en el navegador, escribimos la IP para acceder a la página creada y verificar que el servicio web de Apache fue configurado de manera exitosa. Instalación del servidor APACHE En este apartado se intentará dar una breve explicación de cómo se realizó las instalación de los servicios de apache, inicialmente se enciende nuestra máquina virtual a través del portal de Microsoft Azure, como el programa, en el cual ingresamos nuestro usuario y contraseña poder acceder a el mismo a través de nuestra dirección ip. Una vez hayamos ingresado tendremos que escribir diversos comandos para configurar la ip básica de la red, en donde nos encontraremos una serie de pasos que deberemos seguir, así como comandos específicos para verificar si la ip de nuestra máquina virtual esta configurada como estática o fija. En otro apartado tendremos la configuración de nuestro servidor donde solo deberemos ir colocando ciertos comandos para la instalación del servidos Apache, así como el puerto 80,433, el encriptado TLC y SSL que son las opciones avanzadas que nos permitirán modificar algunos comandos de nuestro servidos. Se escriben ciertos comandos para la visualización de la IP publica y externa del internet, lo cual nos permitirá ingreso a la página web de Ubuntu, además de conocer si la IP está trabajando de manera correcta. Al final podremos visualizar la creación de un archivo índex HTML para la página web, en donde se pueden colocar comandos para acceder a las carpetas, modificarlo y otras acciones más, aquí mismo también podremos activar o desactiva el servido de Apache. 14 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Conclusiones Hernández Reyna Janeth Montserrat Llevar a cabo este proyecto me resulto en una experiencia muy gratificante y curiosa ya que nunca había trabajado en un sistema operativo libre, Ubuntu me resulto ser más interesante ya que su manera de trabajar a través de interfaces utilizando comandos resulto ser una práctica desconocida para mí. El servidor Apache es uno de los servidores más populares que existen, y uno de los más flexibles cuando se trata de aprovecharlo al máximo. Sin duda es una gran opción para un desarrollo y aunque tiene algunos inconvenientes de rendimiento, con la configuración adecuada, también es una alternativa para servidores de producción. Como vemos es un servidor extremadamente sencillo de instalar independiente del sistema operativo, luego la configuración está basada en la edición de archivos de texto, disponemos de una gran cantidad de módulos para expandir las funciones y personalizar la instalación. Galicia Muñoz Alexia Guadalupe el servidor web apache es una herramienta útil para permitir un tráfico de información por medio de protocolos http o https, esta práctica es muy útil para reafirmar conocimientos sobre servidores combinado con la conexión a una máquina virtual con ubuntu, la manejabilidad de los comandos se vuelve más sencilla e intuitiva a través de la práctica y el uso continuo, e incluso podría decir que es más sencillo que instalar los servidores iis y dns porque el uso de comandos evita que demores tiempo en “ o “ como configurarlos, si bien es un reto debido a la gran cantidad de caminos que existen en base a comandos para llegar a un mismo fin, sigue siendo un método de configuración eficaz porque realiza su función de manera óptima es importante tener en cuenta que la falta de costumbre a entornos de formato pueden ser tan sencillos, pero tan tediosos como uno los sepa manejar, es de vital importancia tener el hábito de la investigación para que cualquier proceso de instalación en base a comandos nos resulte lo menos complicado. 15 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre Rodríguez Bustamante Bryan Jared Se sabe que los servidores siempre funcionan basándose en modelos de tipo cliente-servidor en el cual el cliente puede ser tanto un ordenador como una aplicación que requiere información de algún servidor para funcionar correctamente. El servidor deberá ser el encargado de ofrecer esa información demandada. Apache es un servidor web HTTP de código abierto, está desarrollado y mantenido por una comunidad de usuarios en torno a la Apache Software Foundation. Actualmente y desde el 1996 es el servidor web más usado en todo el mundo debido a su seguridad y estabilidad. Es usado principalmente para enviar páginas web estáticas y dinámicas en la World Wide Web. Muchas aplicaciones web están diseñadas asumiendo como ambiente de implantación a Apache, o que utilizarán características propias de este servidor web. En pocas palabras, desde hace tiempo el servidor Apache es utilizado por todas las ventajas que contiene, al mismo tiempo que, como es de código abierto, es configurable en su totalidad sin afectar al rendimiento, siempre y cuando se sepa lo que se esté modificando, a pesar de no poder soportar del todo bien las páginas de tráfico alto los servidores Apache siguen siendo una muy buena opción para empezar a crear tus páginas web. Orduña Altamirano Maria de los Angeles Al hacer uso tanto del servidor Apache como el sistema operativo UJbuntu a través de una máquina virtual visualizamos lo complicado que puede a llegar a ser que se continúe manejando un equipo a base de comandos y no de eventos como se hace en otros sistemas, sin embargo, estos aportan algunas ventajas como lo es que algunos procesos concluyen mucho más rápido igualmente que a pesar de los tedioso que puede ser reescribir un comando cuando te equivocas podemos afirme que el uso de estos ayuda mucho a que no se realicen ciertas cosas si has escrito algo mal. Igualmente destacamos el uso de las herramientas Apache como servidor web que nos permite realizar una conexión mucho más rápido y sin tantas vueltas, algo que ha dejado que muchas aplicaciones web la tengan en consideración. 16 Manual técnico de procedimientos de instalación en una máquina virtual y un aplicativo para administrar el sistema operativo libre AGRADECIMIENTOS El agradecimiento de este manual va dirigido para todos mis compañeros que aportaron mano de obra a lo largo de este proceso, familiares, a las personas que estén leyendo espero que les sea de ayuda. En especial a mi docente Mtra. López Zeron Tania Ofelia que estuvo apoyándonos desde el comienzo, sin su conocimiento y apoyo nada de esto se hubiera logrado. Referencias ¿Qué es un servidor web y para qué sirve? - Webempresa. (2020). Retrieved 22 May 2022, from https://www.webempresa.com/hosting/que-es-servidor-web.html Souza, I., & Souza, I. (2019). ¿Qué es un servidor web y cuáles son sus características?. Retrieved 22 May 2022, from https://rockcontent.com/es/blog/que-es-un-servidor/ Qué es Apache y cómo funciona - Webempresa. (2020). Retrieved 22 May 2022, from https://www.webempresa.com/hosting/que-es-servidorapache.html#:~:text=La%20funci%C3%B3n%20esencial%20del%20servidor,informac i%C3%B3n)%20sea%20fluida%20y%20constante. Instalar servidor Apache en Windows – Bien explicado. (2019). Retrieved 23 May 2022, from https://nefele.dev/blog/instalar-apache-en-windows-bien-explicado/ 17