Acceso Remoto Usando la Web
Vicente González Ruiz
December 14, 2014
En esta prctica vamos a instalar un servidor Web (Apache, en concreto) en el PC
(host remoto) que realiza la captura y hacemos que el fichero se cree en un
directorio accesible por el servidor (este fichero puede ser la salida de un
proceso que captura el estado de algn medidor, que mide por ejemplo una
temperatura
o la salida del convertidor analgico/digital del audio). Luego, usando un cliente Web
(un navegador) accederemos a dicho fichero desde el host local. Comprobaremos qu
est ocurriendo en la red cada vez que accedemos a dicho fichero. Ntese que muchos de
los siguientes comandos han de ejecutarse como administrador (vase el Apndice
??).
# Instalamos el servidor Web.
remote_host@root# apt-get install apache2
# Instalamos un navegador (si fuera necesario).
local_host@root# apt-get install firefox
# Mantenemos una copia actualizada del fichero de monitorizacin en
# el directorio "root" del apache. En este ejemplo, se lee la
# temperatura de la CPU usando la utilidad "sensors".
remote_host@root# crontab -e
# y escribir la lnea:
# * * * * * /usr/bin/sensors | /bin/grep "Temp" \
| /usr/bin/cut -f 5 -d " " >> /var/www/datos.txt
# Salvar el fichero crontab al terminar. Tras salvar, estaremos
# almacenando en /var/www.datos.txt una temperatura cada minuto.
# Nota: el primer asterisco se refiere al minuto, el segundo a la hora,
# el tercero a da del mes, el cuarto mes del ao y finalmente,
# el da de la semana. Y una ltima aclaracin. El comando
# sensors devuelve salidas con formatos diferentes en funcin del
# hardware. Por este motivo, antes de ejecutar "crontab -e"
# debera testearse si la lnea que extrae la temperatura funciona
# correctamente, y actuar luego en consecuencia. En concreto, el
# nico parmetros susceptible de variacin dependiendo de la mquina
# es el "5" pasado a "cut" a travs de su opcin "-f". Haga "man cut"
# para conocer informacin sobre este parmetro.
# Podemos conocer si el demonio cron ha sido configurado adecuadamente
# con el comando:
remote_host@root# crontab -l
# y aparece el contenido que se haba escrito anteriormente.
# Accedemos desde el host local al fichero remoto usando el
# navegador. OJO, recurdese sustituir "remote_host" por el
# host (nombre o direccin IP) adeaduado a su caso!
local_host@usuario$ firefox http://remote_host/datos.txt &
Taller 1: Usando Wireshark (vase el Apndice ??), capture los
paquetes que son transmitidos desde el host que ejecuta el servidor
Web hasta su host, que est ejecutando el cliente. ¿Se transmite todo
el fichero, desde su comienzo, cada vez que accede a l? ¿Implica esto
que no es posible acceder a una parte del fichero remoto sin tener
que transmitirlo completamente? Explique su respuestas.