ELO-330: Programación de Sistemas
 Tarea 1: Accesos y usos de usuarios de Aragorn

   La idea es que su grupo ejercite la programación shell. Trate de cada integrante de su grupo resuelva esta tarea separadamente y luego se juntan a comentar sus soluciones o ideas sobre cómo abordar cada problema. Este camino debería conducir a un mayor aprendizaje individual y mejor solución grupal.

Objetivos: aplicar programación shell.

Contexto: Hay varias tareas administrativas regulares que requieren procesos largos. Por ejemplo, si tenemos dudas de accesos ilegítimos (por robo de password) desde el extranjero, ¿Cómo podemos saber qué usuarios acceden al sistema desde el extranjero?
¿Si tenemos que renovar una licencia, cómo sabemos cuántos usuarios acceden a ésta al mismo tiempo? Con este dato se puede planificar el número de licencias necesarias. Ésta fue una pregunta abordada en un año previo. Este año usted resolverá cuatro problemas asociados al acceso y uso de las cuentas de Aragorn.

Ejercicio 1: Accesos para un usuario dado
Nombre: uu: User usage
Sintaxis: uu [user_name]
Descripción: uu recibe sólo un argumento opcional y muestra todas las líneas de la salida de last que reportan accesos de ese usuario. Si se omite el user name,  se muestra la actividad del usuario que invoca el comando.

Ejercicio 2: Archivo con fecha de modificación más antigua accesible en el sistema
Nombre: of: Oldest file in the system
Sintaxis: of
Descripción: of muestra en pantalla la ubicación y fecha del archivo con modificación más antigua accesible por usted de las cuentas de usuarios en el sistema.

Ejercicio 3: Usuarios frecuentes de Aragorn
Nombre: fu: Frequent users
Sintaxis: fu
Descripción: fu lista en pantalla el nombre de usuario (no nombre de su cuenta, sino su nombre real) y el número de accesos que ha hecho según lo arrojado por comando last. El formato de la salida es:
<nombre del usuario> <número de acccesos>
     :                                       :
 Ejercicio 4: Accesos sospechosos
Nombre: sa suspicius access
Sintaxis: sa
Descripción: sa lista en cada línea el usuario, el rango de tiempo, y país desde donde accedió a aragorn siempre que el país no sea Chile.

Evaluación de la Tarea y qué entregar:
  La tarea será revisada en aragorn.elo.utfsm.cl Confirme que su solución corre bien allí.
  La evaluación de esta tarea será según:
    70% Que cada script cumpla plenamente lo pedido.
    30% Documentación. Ésta debe incluir sus scripts y un archivo readme.txt. Enviar la tarea vía correo a cuenta gmail elo330 punto utfsm (usted obtener el correo con estos datos). En archivo readme.txt incluir descripción simple de la estrategia usada para cada script, cómo descomprimir su solución, cómo preparar cada script para su ejecución y cómo correrlos. Indicar además casos en que el script pudiera fallar; por ejemplo, al no encontrar el nombre real del usuario.

OBS: En caso que la tarea no esté especificada (clara) completamente, plantee la situación al profesor. Aquí se publicarán las aclaraciones necesarias.

Ayuda:
   - Estudie los ejemplos de programación shell vistos en clases.
   - Revise el uso del comando getent passwd
   - Revise el uso del comando whoami
   - Considere el uso del comando wget y la información entregada por la página http://www.ip-adress.com/whois/
   - Trabaje con tiempo, será muy grato para mi atender sus consultar y ayudar en su logro de esta tarea.