WorksheetsCuestionario sobre el Protocolo HTTP
Total questions: 100
Worksheet time: 50mins
¿En qué capa del modelo OSI opera el protocolo HTTP?
Capa de aplicación
Capa de enlace de datos
Capa física
Capa de red
¿Cuál es el puerto por defecto que utiliza HTTP?
80
21
443
25
¿Qué significa que HTTP sea un protocolo "sin estado" (stateless)?
Cada petición es independiente
Mantiene la sesión del usuario
Requiere autenticación constante
Solo transfiere archivos de texto
¿Cuál de los siguientes NO es un componente de una URL?
Contraseña
Protocolo
Dominio (FQDN)
Puerto
Analiza la siguiente URL: http://www.ejemplo.com:80/index.html. ¿Qué parte representa el recurso solicitado?
/index.html
http://
www.ejemplo.com
:80
¿Qué es el hipertexto según la definición de HTTP?
Documento que incluye texto, imágenes y enlaces
Solo texto plano
Solo imágenes
Solo enlaces
¿Cuál de los siguientes es un ejemplo de MIME Type?
text/html
http://
www.ejemplo.com
:80
HTTP es considerado un protocolo sin estado porque:
Cada petición es independiente y el servidor no guarda información de peticiones anteriores.
Requiere autenticación constante.
Solo transfiere archivos de texto.
Mantiene la sesión del usuario en todo momento.
¿Para qué sirven las cookies que el servidor deja en el cliente?
Para almacenar imágenes
Para recordar preferencias, sesiones y análisis/seguimiento
Para enviar correos electrónicos
Para mejorar la velocidad de la red
¿Cuál es la función del método HTTP GET?
Eliminar un recurso
Solicitar un recurso
Enviar datos al servidor
Establecer túneles SSL
¿Qué método HTTP se utiliza para enviar datos al servidor?
GET
DELETE
POST
TRACE
¿Cuál es el primer paso en el funcionamiento básico del protocolo HTTP?
Se consulta DNS para obtener la IP del servidor
El usuario escribe una URL
Se abre una conexión TCP
El navegador interpreta el contenido
¿Qué ocurre después de que el navegador descompone la URL en el proceso básico de HTTP?
Se realiza la transacción
Se consulta DNS para obtener la IP del servidor
El navegador interpreta el contenido
Se cierra la conexión
¿Por qué es importante la opción KeepAlive en el protocolo HTTP?
Permite mantener la conexión abierta después de la transacción
Permite eliminar recursos automáticamente
Permite enviar imágenes más rápido
Permite establecer túneles SSL
Analiza el proceso de una transacción HTTP y explica por qué es necesario consultar DNS antes de abrir una conexión TCP.
Porque DNS traduce la URL en una dirección IP necesaria para conectar con el servidor
Porque DNS elimina recursos innecesarios
Porque DNS mejora la velocidad de la red
Porque DNS interpreta el contenido del navegador
En el funcionamiento básico del protocolo HTTP, ¿qué sucede después de que el cliente envía un método como GET o POST?
El navegador descompone la URL
El servidor responde con código, cabeceras y datos
Se consulta DNS
Se elimina un recurso
¿A qué rango de códigos HTTP pertenecen los mensajes informativos?
100-199
200-299
300-399
400-499
¿Cuál de los siguientes códigos HTTP indica éxito?
200 OK
404 Not Found
500 Internal Server Error
301 Moved Permanently
¿Qué significa el código HTTP 404?
Not Found
Unauthorized
Bad Request
Service Unavailable
¿Cuál es una de las ventajas principales de Apache HTTP Server?
Es multiplataforma
Solo funciona en Windows
No es modular
No es configurable
¿Cuál de los siguientes códigos HTTP corresponde a un error del servidor?
500 Internal Server Error
401 Unauthorized
301 Moved Permanently
200 OK
Apache HTTP Server es uno de los servidores web más usados del mundo. ¿Con cuál otro servidor se menciona que comparte esta característica?
Nginx
IIS
Tomcat
Lighttpd
¿Cuál de las siguientes características NO es una ventaja de Apache HTTP Server?
Solo funciona con HTTP, no HTTPS
Es modular
Es de código abierto
Es muy configurable
Si un cliente recibe un código 403 al acceder a un recurso, ¿qué significa?
Forbidden
OK
Created
Moved Permanently
Analiza la siguiente situación: Un usuario intenta acceder a un sitio web y recibe el código 503. ¿Qué acción debería tomar el administrador del servidor?
Revisar la disponibilidad del servicio y recursos del servidor
Verificar si el usuario tiene permisos de acceso
Corregir la URL solicitada
Actualizar el navegador del usuario
¿En qué archivo se encuentra la configuración general de Apache en Linux?
/etc/apache2/apache2.conf
/etc/apache2/sites-available/
/etc/apache2/mods-enabled/
/var/log/apache2/
¿Cuál es la función de la directiva DocumentRoot en Apache?
Define la carpeta donde están los archivos web
Indica el nombre del servidor
Especifica el email del administrador
Mantiene conexiones abiertas
¿Para qué sirve la directiva KeepAlive en Apache?
Mantener conexiones abiertas
Definir el tiempo de espera
Especificar la ruta de configuración del servidor
Indicar los puertos que usa Apache
En Ubuntu, ¿con qué usuario y grupo se ejecuta Apache por defecto?
www-data y www-data
root y root
apache y apache
admin y admin
Si quieres que Apache pueda leer los archivos de un sitio web, ¿qué comando deberías usar?
sudo chown -R www-data:www-data /var/www/sitio
sudo chmod 777 /etc/apache2/apache2.conf
sudo apt-get install apache2
sudo systemctl restart apache2
¿Cuál es la diferencia entre los directorios /etc/apache2/sites-available/ y /etc/apache2/sites-enabled/?
El primero contiene sitios disponibles y el segundo sitios activados
Ambos contienen los mismos archivos
El primero es para módulos y el segundo para logs
El primero es para usuarios y el segundo para grupos
Si necesitas personalizar la página de error en Apache, ¿qué directiva debes modificar?
ErrorDocument
DirectoryIndex
ServerRoot
Listen
Explica por qué es importante asignar el usuario y grupo www-data a los archivos de un sitio web en Apache.
Para que Apache tenga permisos de lectura y ejecución sobre los archivos
Para que los archivos sean visibles solo para root
Para que los archivos se borren automáticamente
Para que los archivos se encripten
¿Para qué sirven los Virtual Hosts en Apache?
Permiten varios sitios web en un mismo servidor.
Permiten aumentar la velocidad del servidor.
Permiten instalar módulos adicionales.
Permiten cambiar el sistema operativo.
¿En qué directorio se guardan los Virtual Hosts en Apache?
/etc/apache2/sites-available/
/var/www/html/
/usr/local/apache2/conf/
/home/apache/sites/
¿Cuál es el tipo de Virtual Host más común en Apache?
Por nombre
Por puerto
Por IP
Por usuario
¿Cuál es el formato básico de un tipo MIME?
tipo/subtipo
nombre/valor
clave=valor
formato/tipo
¿Cuál de los siguientes es un ejemplo de tipo MIME?
text/html
html/text
pdf/application
audio-mpeg
¿Para qué sirve la directiva AddType en Apache?
Para añadir un tipo MIME
Para crear un Virtual Host
Para reiniciar el servidor
Para habilitar un módulo
¿Dónde se encuentran los módulos de Apache?
/etc/apache2/mods-available/
/var/www/modules/
/usr/local/apache2/modules/
/home/apache/mods/
¿Cuál es la diferencia principal entre un Virtual Host por nombre y uno por IP en Apache?
Por nombre usa el nombre de dominio, por IP usa una dirección IP específica.
Por nombre usa el puerto 80, por IP usa el puerto 443.
Por nombre es para archivos, por IP es para imágenes.
Por nombre es más seguro que por IP.
Si quieres activar un Virtual Host en Apache, ¿qué comando debes usar?
sudo a2ensite nombre.conf
sudo systemctl start apache2
sudo enable-site nombre.conf
sudo apache2ctl reload
¿Por qué es importante conocer los tipos MIME al configurar un servidor web?
Porque determinan cómo el navegador interpreta los archivos enviados por el servidor.
Porque aumentan la velocidad del servidor.
Porque permiten instalar más módulos.
Porque definen los permisos de usuario.
¿Cuál de los siguientes módulos de Apache se utiliza para habilitar HTTPS?
mod_ssl
mod_dir
mod_alias
mod_status
¿Qué comando se utiliza para desactivar un módulo en Apache?
sudo a2dismod nombre
sudo a2enmod nombre
sudo apt-get remove nombre
sudo apachectl stop nombre
¿Cuál es una característica principal del modo multiproceso "prefork" en Apache?
Un proceso por petición
Procesos con hilos
Optimizado para HTTP/2
Mejor rendimiento para contenido estático
¿Cuál de los siguientes modos multiproceso de Apache es el recomendado y optimizado para KeepAlive y HTTP/2?
event
prefork
worker
classic
Si necesitas comprobar las conexiones activas de Apache2, ¿qué comando deberías usar?
lsof -i | grep apache2
ps -ylc apache2 --sort:rss
ab -n 2000 -c 20 http://localhost/
netstat -a | grep httpd
¿Cuál es la principal razón por la que el modo "worker" es más adecuado que "prefork" para servir contenido estático en Apache?
Porque utiliza procesos con hilos, lo que mejora el rendimiento y es más eficiente para manejar múltiples solicitudes de contenido estático.
Porque consume más RAM y es más estable.
Porque es el modo clásico recomendado para PHP.
Porque no soporta KeepAlive ni HTTP/2.
Un administrador quiere medir el rendimiento de su servidor Apache simulando 2000 peticiones concurrentes de 20 en 20. ¿Qué comando debería usar?
ab -n 2000 -c 20 http://localhost/
ps -ylc apache2 --sort:rss
lsof -i | grep apache2
sudo a2enmod nombre
¿Cuál es el comando para activar el módulo SSL en Apache?
sudo a2enmod ssl
sudo apt-get install apache2
sudo systemctl start apache2
sudo enable sslmod apache2
¿Qué archivo se utiliza para almacenar el certificado autofirmado en la configuración de VirtualHost de Apache?
/etc/apache2/ssl/server.crt
/etc/apache2/ssl/server.pem
/etc/apache2/ssl/certificate.key
/etc/apache2/ssl/ssl.conf
¿Cuál es el propósito de la siguiente línea en la configuración de Apache? Redirect permanent / https://midominio/
Redirigir todo el tráfico HTTP a HTTPS
Permitir el acceso remoto al servidor
Desactivar el módulo SSL
Crear un nuevo usuario en Apache
¿Cuál es la principal razón para redirigir el tráfico HTTP a HTTPS en un servidor web?
Para asegurar la transmisión de datos y proteger la información de los usuarios
Para aumentar la velocidad de carga del sitio web
Para permitir el acceso sin contraseña
Para evitar el uso de certificados digitales
¿Cuál es el comando para crear un directorio donde se almacenarán los certificados SSL en Apache?
sudo mkdir /etc/apache2/ssl
sudo touch /etc/apache2/ssl
sudo create /etc/apache2/ssl
sudo ssl-make /etc/apache2/ssl
¿Qué parámetro en la configuración de VirtualHost de Apache indica la ubicación de la clave privada del certificado SSL?
SSLCertificateKeyFile
SSLEngine
SSLCertificateFile
SSLPrivateKeyPath
¿Cuál es la diferencia principal entre utilizar un certificado autofirmado y uno emitido por una autoridad certificadora en un entorno de producción?
Un certificado emitido por una autoridad certificadora es menos seguro que uno autofirmado.
Ambos certificados ofrecen el mismo nivel de confianza para los usuarios.
Un certificado autofirmado no es confiable para usuarios externos, mientras que uno emitido por una autoridad certificadora garantiza la autenticidad y confianza del sitio.
Un certificado autofirmado es obligatorio en todos los entornos de producción.
¿Cuál es el comando para instalar el servidor web Apache2 en Linux?
sudo apt install apache2
sudo install apache2
apt-get apache2 install
apache2 install
¿Qué comando se utiliza para comprobar el estado del servicio Apache2?
sudo systemctl status apache2
sudo apache2 status
systemctl apache2 check
status apache2
¿En qué ruta se recomienda crear el directorio del sitio web para Apache2?
/var/www/
/home/user/
/etc/apache2/
/usr/local/
¿Qué comando se debe usar para crear el directorio /var/www/noemi.loc?
sudo mkdir /var/www/noemi.loc
mkdir /var/www/noemi.loc
sudo create /var/www/noemi.loc
sudo newdir /var/www/noemi.loc
¿Por qué es importante ajustar los permisos a www-data en Apache?
Porque www-data debe poder leer y ejecutar los archivos.
Porque otros usuarios necesitan escribir en el directorio.
Porque www-data no puede acceder a ningún archivo.
Porque Apache no utiliza el usuario www-data.
¿Qué comando se utiliza para cambiar el propietario de un directorio a www-data en Apache?
sudo chown -R www-data:www-data /var/www/noemi.loc
sudo owner www-data /var/www/noemi.loc
sudo chmod www-data /var/www/noemi.loc
sudo setuser www-data /var/www/noemi.loc
¿Qué efecto tiene el comando sudo chmod -R 755 /var/www/noemi.loc en los permisos del directorio?
www-data puede leer y ejecutar, otros usuarios pueden leer, solo www-data puede escribir
Todos los usuarios pueden leer y escribir
Solo www-data puede leer y ejecutar
Ningún usuario puede acceder al directorio
¿Por qué es necesario asignar permisos específicos al usuario www-data en la configuración de Apache2?
Para que Apache pueda acceder y ejecutar los archivos necesarios del sitio web.
Para que el directorio sea invisible para www-data.
Para que otros usuarios puedan modificar los archivos del sitio web.
Para que el sistema operativo bloquee el acceso a todos los usuarios.
¿Cuál es una consecuencia de no cambiar el propietario del directorio del sitio web a www-data en un servidor Apache2?
El sitio web funcionaría sin problemas, independientemente del propietario.
Apache podría no tener acceso adecuado a los archivos, lo que impediría el funcionamiento correcto del sitio web.
El servidor Apache2 se reiniciaría constantemente.
Los archivos serían eliminados automáticamente por el sistema.
¿Dónde se debe crear el archivo index.html básico para el sitio web noemi.loc?
/var/www/noemi.loc
/etc/apache2/sites-available
/var/www/html
/home/noemi
¿Cuál es el contenido mínimo recomendado para el archivo index.html según el material?
Soy Noemi
Bienvenido
Hola Mundo
Mi sitio web
¿Qué archivo se debe editar para cambiar la web por defecto de Apache por la tuya?
/etc/apache2/sites-available/000-default.conf
/var/www/noemi.loc/index.html
/etc/apache2/apache2.conf
/etc/hosts
¿Qué línea se debe modificar en el archivo de configuración para cambiar la raíz del documento de Apache?
DocumentRoot /var/www/noemi.loc
ServerName noemi.loc
ServerAlias www.noemi.loc
ServerAdmin noemi@localhost
¿Qué comando se utiliza para recargar el servicio de Apache después de modificar la configuración?
sudo systemctl reload apache2
sudo service apache2 stop
sudo apache2 restart
sudo reload apache2.conf
Si quieres restaurar la web por defecto de Apache, ¿qué ruta debes volver a poner en DocumentRoot?
/var/www/html
/var/www/noemi.loc
/etc/apache2/sites-available
/home/noemi
¿Cuál es el propósito de crear un archivo de configuración como noemi.loc.conf en Apache?
Configurar un nuevo sitio web virtual (VirtualHost)
Instalar Apache
Crear una base de datos
Actualizar el sistema operativo
En el ejemplo de VirtualHost, ¿qué puerto está configurado para escuchar el sitio web?
8080
80
443
21
Analiza el siguiente bloque de configuración de VirtualHost. ¿Qué función cumple la directiva ServerAlias?
Permite acceder al sitio web usando www.noemi.loc además de noemi.loc
Define el correo del administrador del servidor
Especifica el puerto de escucha
Indica la ruta del DocumentRoot
¿Por qué es esencial configurar un VirtualHost en Apache cuando se gestionan varios sitios web?
Permite alojar múltiples sitios web en el mismo servidor diferenciando por nombre o puerto
Es necesario para instalar PHP
Es obligatorio para usar bases de datos MySQL
Permite actualizar Apache automáticamente
¿Cuál es el comando correcto para editar el archivo de configuración de puertos de Apache?
sudo nano /etc/apache2/ports.conf
sudo nano /etc/hosts
sudo apt install ufw
sudo ufw enable
¿Qué línea debes añadir al archivo ports.conf para que Apache escuche en el puerto 8080?
Listen 8080
Listen 80
Listen 443
Listen 8000
¿Cuál es el propósito del comando "sudo a2ensite noemi.loc.conf"?
Habilitar un sitio en Apache
Instalar el cortafuegos UFW
Editar el archivo de hosts
Reiniciar el sistema
Después de habilitar un sitio en Apache, ¿qué comando se utiliza para recargar la configuración?
sudo systemctl reload apache2
sudo apt install ufw
sudo nano /etc/hosts
sudo ufw enable
Para acceder a un sitio por nombre en tu navegador, ¿qué debes añadir al archivo /etc/hosts?
127.0.0.1 noemi.loc
Listen 8080
sudo ufw enable
sudo a2ensite noemi.loc.conf
¿Cuál es el comando para instalar el cortafuegos UFW en un sistema basado en Debian/Ubuntu?
sudo apt install ufw
sudo ufw enable
sudo nano /etc/apache2/ports.conf
sudo systemctl reload apache2
Supón que has instalado UFW. ¿Qué comando debes ejecutar para activarlo?
sudo ufw enable
sudo apt install ufw
sudo nano /etc/hosts
sudo a2ensite noemi.loc.conf
Imagina que has configurado el archivo /etc/hosts correctamente y Apache escucha en el puerto 8080. ¿Cuál de las siguientes URLs te permitirá acceder a tu sitio desde el navegador?
http://noemi.loc:8080
http://localhost:80
http://noemi.loc:80
http://127.0.0.1:443
¿Cuál es el comando para permitir el tráfico HTTP en los puertos 80 y 8080 usando UFW?
sudo ufw allow 80 y sudo ufw allow 8080
sudo ufw deny 80 y sudo ufw deny 8080
sudo ufw block 80 y sudo ufw block 8080
sudo ufw enable 80 y sudo ufw enable 8080
¿Qué comando se utiliza para comprobar los errores en el archivo de registro de Apache?
sudo tail -n 20 /var/log/apache2/error.log
sudo cat /etc/apache2/apache2.conf
sudo systemctl status apache2
sudo ufw status
¿Qué resultado indica que la sintaxis de la configuración de Apache es correcta tras ejecutar "sudo apache2ctl configtest"?
Syntax OK
Syntax Error
Config Failed
Apache Running
¿Para qué sirve el parámetro "-n 50" en el comando de Apache Benchmark (ab)?
Indica el número total de peticiones
Indica el número de conexiones simultáneas
Indica el tamaño del archivo de prueba
Indica el tiempo de espera en segundos
Si quieres ver la memoria en RAM usada por cada proceso de Apache, ¿qué comando deberías usar?
ps -ylc apache2 --sort:rss
sudo ufw status
sudo apache2ctl configtest
lsof -i | grep apache2
¿Cuál es la razón principal para comprobar la sintaxis de la configuración de Apache antes de reiniciar el servicio?
Para ahorrar espacio en disco
Para evitar errores que puedan impedir que el servidor web funcione correctamente
Para aumentar la velocidad de la red
Para reducir el consumo de energía
¿Cuál de los siguientes comandos permite ver las conexiones activas relacionadas con Apache?
lsof -i | grep apache2
sudo ufw allow 80
ps -ylc apache2 --sort:rss
sudo tail -n 20 /var/log/apache2/error.log
¿En qué situación sería útil utilizar Apache Benchmark (ab) y cuál es el objetivo principal de la prueba?
Para medir el rendimiento de un sitio web bajo carga y determinar cuántas peticiones puede manejar el servidor antes de degradar su rendimiento
Para instalar un nuevo módulo de Apache
Para cambiar la contraseña de usuario en el servidor
Para actualizar el sistema operativo
¿Para qué sirve la opción "-c 1" en un comando?
Para indicar conexiones simultáneas
Para generar un archivo para Gnuplot
Para desactivar la verificación DNS
Para activar SSL
¿Qué comando se utiliza para abrir Gnuplot?
gnuplot
plot
set terminal png
exit
¿Cuál es el propósito de la instrucción "set output 'ApacheBenchmarkResults.png'" en Gnuplot?
Definir el archivo de salida como una imagen PNG
Establecer el título del gráfico
Etiquetar el eje X
Cerrar Gnuplot
¿Qué incluye la práctica 2 sobre Apache2 SSL/HTTPS?
Activación SSL, certificados autofirmados, VirtualHost HTTPS, redirecciones HTTP a HTTPS, comprobaciones curl, errores y soluciones
Solo activación SSL y certificados autofirmados
Solo comprobaciones curl y errores
Solo redirecciones HTTP a HTTPS
Si quieres graficar el rendimiento de tu servidor usando Gnuplot, ¿qué archivo debes generar primero con los datos?
test.txt
output.txt
server.png
curl.txt
Explica por qué es importante realizar redirecciones de HTTP a HTTPS en un servidor web.
Para asegurar que todas las conexiones sean seguras y cifradas
Para ahorrar espacio en disco
Para mejorar la velocidad de carga
Para evitar el uso de certificados autofirmados
¿Cuál es el comando para comprobar si Apache está funcionando?
sudo systemctl status apache2
apachectl -S
apachectl -M
ls -l /var/www
¿Qué comando se utiliza para ver los VirtualHosts activos en Apache?
apachectl -S
sudo mkdir /var/www/noemi-ssl.loc
apachectl -M | grep ssl
systemctl status apache2
