universidad del azuaydspace.uazuay.edu.ec/bitstream/datos/2291/1/05810.pdf · 2019. 4. 21. ·...

168
UNIVERSIDAD DEL AZUAY FACULTAD DE CIENCIAS DE LA ADMINISTRACION ESCUELA DE INGENIERIA DE SISTEMAS Tesis previa a la obtención del Título de Ingeniero de Sistemas TEMA: “SISTEMA DE AUTENTICACION UNIFICADO PARA LA UTILIZACION DE LOS SERVICIOS WEB DE LOS ESTUDIANTES DE LA UNIVERSIDAD DEL AZUAY” AUTOR: Diego Rojas Pacurucu DIRECTOR: Ing. Pablo Esquivel León

Upload: others

Post on 30-Sep-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

UNIVERSIDAD DEL AZUAY

FACULTAD DE CIENCIAS DE LA ADMINISTRACION

ESCUELA DE INGENIERIA DE SISTEMAS

Tesis previa a la obtención delTítulo de Ingeniero de Sistemas

TEMA:

“SISTEMA DE AUTENTICACION UNIFICADO PARA LA UTILIZACION DE LOSSERVICIOS WEB DE LOS ESTUDIANTES DE LA 

UNIVERSIDAD DEL AZUAY”

AUTOR: Diego Rojas Pacurucu

DIRECTOR: Ing. Pablo Esquivel León

Cuenca, marzo 2007

Índice General

Capitulo I  11 Análisis de la situación actual de los servicios Web para los estudiantesde la Universidad del Azuay

2

1.1Consulta de calificaciones: 21.2 Prematriculas: 41.3 Evaluación docente 61.4 Correo electrónico 81.5 Internet inalámbrico 101.6Conclusiones 12

Capitulo II 132 Implementación del servidor Radius (Remote Authentication Dial­InUser Service) para el manejo de las cuentas del servidor de correoelectrónico de la Universidad del Azuay

14

2.1 Servidor Radius (Remote Authentication Dial­In User Service) 142.1.1 Authentication 152.1.2 Authorization 152.1.3 Accounting 152.2 Radius simplifica la dificultad 152.3 Instalación y configuración del servidor Radius 162.4 Implementación del servidor Radius en la Universidad del Azuay 242.4.1 Modelo entidad relación de la base de datos para el servidor Radius 252.4.2 Diccionario de Datos: 252.5 Manejo del servidor de Correo Electrónico con el servidor Radius 272.6 Conclusiones 32

Capitulo III 333 Creación de un sistema de autenticación automático para los serviciosWeb para los estudiantes de la Universidad del Azuay

34

3.1 Usuarios nuevos 353.2 Usuarios registrados: 463.2.1 Cambio de clave 473.2.2 Agregar servicios Web: 503.3 Sistema para el administrador 543.3.1 Ingreso de usuarios 543.3.2 Eliminación de usuarios 563.3.3 Cambio de clave de usuario 583.3.4 Reporte de usuarios 60

3.4 Conclusiones 62

Capitulo IV 634 Reprogramación de las aplicaciones existentes de los servicios Web  paralos estudiantes de la Universidad del Azuay.

64

4.1 Conclusiones 66

Capitulo V 675 Pruebas, instalación e implementación 685.1 Pruebas 685.2 Instalación 705.2.1 Migración de usuarios existentes a la base de datos 705.3  Implementación del Sistema 725.3.1 Implementación del Sistema en el servidor del Internet inalámbrico 725.3.1.1  Creación  cuenta: 735.3.1.2  Actualizar Clave: 745.4 Conclusiones 75

Capitulo VI 766 Conclusiones y Recomendaciones 776.1 Conclusiones 776.2 Recomendaciones 78

Anexos 79Anexo 1: Herramientas utilizadas para la creación del sistema deautenticación automático para los servicios Web para los estudiantes de laUniversidad del Azuay

80

1.1 MySql 801.2 PHP 811.3 Funciones MySql en PHP 831.4 Perl 851.5 El Módulo DBI 861.6 Zend Core para Oracle 881.7 Funciones de Oracle 901.8 Instalación de Zend Core para Oracle en Linux 921.9 Configuración del Zend Core para Oracle 104

Anexo 2: Authen Radius 1092.1 Instalación del Módulo de Perl Authen::Radius 1092.2 Métodos del Authen Radius 113

Anexo 3: Diagramas de flujo de datos del sistema de autenticaciónautomático para los servicios Web para los estudiantes de la Universidaddel Azuay

115

3.1 Ingreso de Nueva Cuenta 1153.2 Cambio de Clave de una Cuenta 1163.3 Agregar Servicios Web a una Cuenta 117

Bibliografía 118Paginas de Internet Consultadas 119

Glosario de Terminos 121

Índice de Ilustraciones

Figura 1.1 Ingreso de datos para consulta de calificaciones 3Figura 1.2 Calificaciones de un estudiante 3Figura 1.3 Ingreso de datos para prematricula 4Figura 1.4 Horarios y selección de materias en prematriculas 5Figura 1.5 Ingreso de datos para evaluación docente 6Figura 1.6 Selección de materia para evaluación docente 7Figura 1.7 Evaluación docente 8Figura 1.8 Ingreso de usuario y clave para el correo electrónico 9Figura 1.9 Ingreso de usuario y clave para el Internet inalámbrico 11Figura 1.10 Pagina Web de bienvenida para un usuario valido del Internetinalámbrico

11

Figura 2.1 Activación del servidor Radius en Linux 17Figura 3.1 Pagina principal del sistema 35Figura 3.2 Ingreso de datos personales del estudiante de pregrado en el sistema 37Figura 3.3 Ingreso de datos personales del estudiante de postgrado en el sistema 37Figura 3.4 Datos personales del estudiantes incorrectos 41

Figura 3.5 Ingreso de clave y selección de servicios Web deseados para lanueva cuenta

42

Figura 3.6 Ingreso de usuario, clave y selección de servicios Web deseados parala nueva cuenta

42

Figura 3.7 Confirmación de cuenta creada 43Figura 3.8 Error en creación  de cuenta 43Figura 3.9 Ingreso de datos para modificación de clave de una cuenta 47Figura 3.10 Clave de usuario incorrecta 48Figura 3.11 Nuevas claves ingresadas no coinciden 48Figura 3.12 Confirmación de cambio de clave de una cuenta 49Figura 3.13 Ingreso de datos para modificación de servicios Web de una cuenta 51Figura 3.14 Selección de servicios Web para una cuenta 52Figura 3.15 Confirmación de cambio de servicios Web de una cuenta 53Figura 3.16 Pantalla principal del sistema para el administrador 54Figura 3.17 Ingreso de usuario, clave y selección de servicios Web para unanueva cuenta

55

Figura 3.18 Confirmación de creación de nueva cuenta 56Figura 3.19 Ingreso de usuario a eliminar 57Figura 3.20 Datos del usuario a eliminar 57Figura 3.21 Confirmación de usuario eliminado 58Figura 3.22 Ingreso de usuario con nueva clave para modificación de clave 59Figura 3.23 Confirmación de cambio de clave 59Figura 3.24 Ingreso del nombre o parte del nombre del usuario a consultar 60Figura 3.25 Ingreso del usuario o parte del usuario a consultar 61Figura 3.26 Resultado de la consulta de usuarios 61Figura 5.1 Sistema implementado en el servidor del Internet inalámbrico 73Figura 5.2 Ingreso de nueva cuenta del sistema implementado en el servidor delInternet inalámbrico

74

Figura 5.3 Actualización de clave de una cuenta para el uso del Internetinalámbrico

75

Figura A 1.1 Pagina inicial del instalador del Zend Core para Oracle 93Figura A 1.2 Primera pagina del acuerdo de licencia del Zend Core para Oracle  93Figura A 1.3 Segunda pagina del acuerdo de licencia del Zend Core para Oracle 94Figura A 1.4 Modificación del archivo /etc/php.ini 95Figura A 1.5 Locación para la instalación del Zend Core para Oracle 95Figura A 1.6 Proceso de instalación 96Figura A 1.7 Ingreso de una clave para el administrador del Zend Core paraOradle

96

Figura A 1.8 Ingreso de la confirmación de la clave para el administrador delZend Core para Oradle

97

Figura A 1.9 Suscripción para soporte de Zend Core 98

Figura A 1.10 Instalación y configuración de un nuevo servidor Apache 99Figura A 1.11 Selección del servidor Apache para la configuración del ZendCore para Oradle

99

Figura A 1.12 Confirmación del servidor Apache seleccionado 100Figura A 1.13 Selección del método de instalación para el servidor Apache 101Figura A 1.14 Selección de un servidor virtual para el Zend Core para Oracle 101Figura A 1.15 Reinicio del servidor Apache 102Figura A 1.16 Información de la actualización del servidor Apache 103Figura A 1.17 Lista de archivos modificados 103Figura A 1.18 Confirmación de instalación del Zend Core para Oracle 104Figura A 1.19 Ingreso de clave del administrador para consola del Zend Corepara Oradle

105

Figura A 1.20 Icono de login 105Figura A 1.21 Panel de configuraciones del Zend Core para Oracle 105Figura A 1.22 Configuración para manejar los  errores de las aplicaciones dePHP

106

Figura A 1.23 Configuración para mostrar los errores en pantalla de lasaplicaciones de PHP

107

Figura A 1.24 Guardar los cambios de configuración 107Figura A 1.25 Reiniciar servidor Apache 108Figura A 2.1 Búsqueda del módulo Data::HexDump  110Figura A 2.2 Instalación del módulo Data::HexDump 110Figura A 2.3 Confirmación de la instalación del módulo Data::HexDump 111Figura A 2.4 Instalación del módulo Authen::Radius 111Figura A 2.5 Configuración de instalación del módulo Authen::Radius 112Figura A 2.6 Confirmación de instalación del módulo Authen::Radius 112

Índice de Código

R 2.1 Comando para descomprimir el paquete del servidor Radius 17R 2.2 Comando para configurar la instalación del servidor Radius 17R 2.3 Locaciones de los archivos del servidor Radius 18R 2.4 Comando para compilar la instalación del servidor Radius 18R 2.5 Comando para Instalar el servidor Radius 18R 2.6 Lista de archivos del directorio /etc/raddb 18R 2.7 Archivo /etc/raddb/clients 20R 2.8 Usuario de prueba en el archivo /etc/raddb/users 20R 2.9 Comando para reiniciar el servidor Radius 20R 2.10 Comando para probar el usuario de prueba 21R 2.11 Respuesta enviada por el servidor Radius por el usuario de prueba 21R 2.12 Sección Authorize del archivo /etc/raddb/Radiusd.conf 22R 2.13 Sección Accounting del archivo /etc/raddb/Radiusd.conf 22R 2.14 Archivo /etc/raddb/sql.conf 23R 2.15 Lista de módulos de autenticación del servidor Openwebmail 27R 2.16 Archivo /openwebmail/etc/auth_unix.conf 29R 2.17 Conexión a la base de datos de MySql desde el módulo del servidorOpenwebmail

30

R 2.18  Consulta a la base de datos para verificar si tiene el usuario activado elservicio de mail

30

R 2.19  Consulta a la base de datos para obtener el nombre del usuario 31R 2.20 Conexión con el servidor Radius con el módulo Authen:Radius 31R 2.21 Agregar el  usuario y clave al  objeto de la  conexión con el  servidorRadius

31

R 2.22 Envió de petición de acceso al servidor Radius 32R 3.1 Archivo de configuración, conf.php, para las aplicaciones desarrolladasen PHP

38

R 3.2 Conexión a las bases de datos del sistema académico de la Universidaddel Azuay

39

R 3.3 Consulta a las bases de datos del sistema académico de la Universidad delAzuay para listar las carreras 

40

R 3.4 Conexión a la base de datos de MySql, desde perl con el módulo DBI 45R 3.5 Comando para ingreso de un nuevo usuario en el sistema operativo Linux 45R 3.6 Sección del archivo /etc/sudores para el usuario Apache 45R 3.7 Inserción de un nuevo usuario en la base de datos 46R 3.8 Modificación de la clave de una cuenta en la base de datos 50R 3.9 Comando para la modificación de la clave de una cuenta en el sistemaoperativo Linux

50

R 3.10 Consulta de los servicios Web activados para una cuenta 53R 3.11 Modificación de los servicios Web de una cuenta 54R 4.1 Consulta a la base de datos para verificar si tiene el usuario activado elservicio de mail

65

R 4.2 Consulta a la base de datos para verificar si tiene el usuario activado elservicio de Internet inalámbrico

66

R 5.1 Cabecera de las aplicaciones en PHP que generan el código verificador 69R 5.2 Aplicación para la migración de  los usuarios existentes a la base de datos 71R 5.3 Modificación de la conexión a la base de datos del servidor Nocat 72

Resumen

Este   trabajo  de   investigación   consiste   en   la   creación  de  un   sistema  de   autenticación

automática que les permitirá  a los estudiantes de la Universidad del Azuay crearse su

propio  usuario,  desde  el   portal  de   Internet,   necesario  para     tener   acceso   a   todos   los

Servicios Web implementados.

La segunda función importante de este trabajo es unificar el ingreso a todos los Servicios

Web para los estudiantes, es decir en la actualidad, existe un usuario y una clave diferente

para el acceso al correo electrónico y para el Internet Inalámbrico, para tener acceso a los

demás Servicios Web como consulta de calificaciones, evaluación docente, prematriculas

el estudiante debe ingresar su Cédula de Identidad con su código.

Abstract

This research work consists   in creating an Automatic Authentication System that will

allow students  of   the University  of  Azuay  to  create   their  own user   from the Internet

portal, which is necessary to have access to all the implemented web services.

The second important function of this research is to unify students entrance to all the web

services.  Currently, there is a user and a different password for access to the e­mail and

wireless internet. To have access to the other web services, such as grade consultations,

teacher evaluations, and pre­matriculation, the student must enter his/her identification

and code numbers.

Las opiniones y comentarios vertidos en esta tesis son de responsabilidad absoluta

del autor.

____________________

Diego Rojas Pacurucu

Introducción

La posibilidad de conectarnos a la red mundial de computadoras llamada Internet,  nos

permite perdernos en un inmenso abanico de información y de posibilidades.

Internet tiene un impacto profundo en el trabajo y en el conocimiento. Gracias a la Web,

millones de personas tienen acceso fácil e inmediato a una cantidad extensa y diversa de

información en línea.

Comparado a las enciclopedias y a las bibliotecas tradicionales, la Web ha permitido una

descentralización repentina y extrema de la información y de los datos.

Desde  una  perspectiva  cultural  del   conocimiento,   Internet  ha   sido  una  ventaja  y  una

responsabilidad.   Para   la   gente   que   está   interesada   en   otras   culturas   proporciona   una

cantidad significativa de información y de una interactividad que sería inasequible de otra

manera.

El crecimiento, o más bien, la incorporación de tantas personas a la red, hacen que las

calles de lo que en principio era una pequeña ciudad llamada Internet se conviertan en

todo un planeta extremadamente conectado entre sí, entre todos sus miembros.

Un aspecto importante de Internet, es que nadie puede poseerla ni es posible controlarla,

factor que influye mucho en el grado de apertura y valor de Internet pero también deja

muchos   puntos   a   juicio   del   propio   usuario,   tanto   por   los   emisores   como   para   los

receptores de información.

i

Sin embargo,  la  seguridad en Internet  no es sólo una preocupación empresarial.  Toda

persona tiene derecho a la privacidad y cuando ésta accede a Internet su necesidad de

privacidad no desaparece. La privacidad no es sólo confidencialidad, sino que también

incluye anonimicidad.

El hecho de que Internet haya aumentado tanto implica una mayor cantidad de relaciones

entre personas, pero unas relaciones virtuales. Así, ahora sabemos que nos relacionamos

más virtualmente y menos personalmente por eso la Universidad del Azuay se ha visto en

la obligación de brindar a sus estudiantes los beneficios de esta tecnología, esta obligación

se ha convertido en una gran responsabilidad de siempre mejorar los servicios brindados,

gracias a esto se ha propuesto este trabajo de investigación, la creación de un sistema de

autenticación automático para los servicios Web para los estudiantes de la Universidad del

Azuay.

Este sistema permitirá  a los estudiantes, luego del ingreso de sus datos personales que

certifiquen que es un estudiante activo,  crearse una propia cuenta que les servirá  para

poder tener acceso a todos los servicios Web existentes.

Para lograr que todos los servicios Web gestionen los usuarios de un mismo repositorio de

información se modificará el acceso de las aplicaciones existentes y se implementará el

servidor Radius para la autenticación de los usuarios del servidor de correo electrónico de

la Universidad del Azuay.

Luego de la creación e implementación del sistema planteado los estudiantes tendrán un

solo usuario y una sola clave para poder tener acceso a todos los servicios Web.

Internet produce la sensación que todos hemos sentido alguna vez, produce la esperanza

que necesitamos cuando queremos conseguir algo. Produce un despertar de intenciones

que   jamás   antes   la   tecnología   había   logrado   en   la   población   mundial.   Genera   una

ii

sensación de cercanía, de empatía, de comprensión, y a la vez, de confusión, de discusión,

de lucha, y de guerras, que no queda otra que afirmar que Internet es humana, Internet es

como la vida misma.

iii

 Capítulo I

Análisis de la situación actual de los servicios Web

para los estudiantes de la Universidad del Azuay

1

2

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

1.  Análisis  de  la situación actual  de  los  servicios Web para  los estudiantes  de  la

Universidad del Azuay.

La Universidad del Azuay por medio de su página Web, www.uazuay.edu.ec, brinda a sus

estudiantes los siguientes servicios Web:

• Consulta de calificaciones

• Prematriculas

• Evaluaciones a los docentes

• Correo electrónico

• Internet inalámbrico

• Valor colegiatura

• Ratificación de becas

1.1. Consulta de calificaciones.

Todos los estudiantes de la Universidad del Azuay pueden revisar sus calificaciones de las

materias en las que se encuentren matriculados en el periodo actual de estudios.

La información de las materias, en las que se encuentran matriculados los estudiantes de

la   Universidad   del   Azuay,   así   como   la   información   de   sus   calificaciones   están

almacenadas en una base de datos de MySql.

Cada vez que un estudiante desea revisar sus  calificaciones  se realizará  entonces una

consulta a esta base de datos.

2

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

El estudiante de la Universidad del Azuay que desea consultar sus notas puede hacerlo

ingresando al icono consulta de calificaciones desde la pagina Web de la Universidad.

Luego se les presentará una pantalla en la que el estudiante deberá ingresar su número de

cédula de identidad y también su código de estudiante de la Universidad del Azuay.

Figura 1.1.  Ingreso de datos para consulta de calificaciones

A continuación se le presentará  las calificaciones de todas las materias en las que este

matriculado el estudiante en el actual periodo.

Puede también el estudiante revisar su historial de calificaciones presionando el botón ver

historial.

3

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura1.2. Calificaciones de un estudiante

1.2. Prematriculas.

Todos   los   estudiantes   de   la  Universidad  del  Azuay  a   inicios   de  cada  periodo  deben

realizar   una   prematricula   en   donde   se   seleccionan   las   materias   que   pueden   estudiar

dependiendo de los horarios y de las materias aprobadas anteriormente, una vez que esta

prematricula sea aprobada,  es  decir  que sean aceptadas  las  materias   seleccionadas,   se

podrá realizar el pago de la matricula.

La   información   necesaria   para   la   prematricula   como   las   materias,   niveles,   paralelos,

horarios etc. así también como la información de la propia prematricula realizada por el

estudiante será almacenada en una base de datos de MySql

Para poder realizar la Prematricula los estudiantes deben ingresar en la pagina Web de la

Universidad del Azuay y seleccionar el icono  prematriculas.

4

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

En la siguiente pantalla el estudiante deberá ingresar el número de su cédula de identidad,

el código de estudiante de la Universidad del Azuay y también   deben seleccionar su

carrera.

Figura1.3.  Ingreso de datos para prematricula

Es importante que el estudiante realice su prematricula cuando conozca todas sus notas

del ciclo que concluyó para que pueda seleccionar correctamente sus materias.

Al estudiante a continuación se le presentará  una pantalla con su nombre, en la parte

derecha aparecerán los  niveles y el  paralelo de las materias,  mientras que en la  parte

izquierda se encuentran las materias de la carrera.

5

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 1.4. Horarios y selección de materias en prematriculas

Para seleccionar una materia se debe dar un clic en un paralelo de la materia.

Cuando ya haya finalizado la selección de las materias debe presionar el botón grabar, a

continuación se les presentará una pantalla con todas las materias seleccionadas y el valor

de  la  colegiatura  a  cancelar,   si  desea  hacer  algún cambio en  la  prematricula  se  debe

presionar el  botón retroceder, hacer los cambios necesarios y presionar nuevamente el

botón grabar, para finalizar la prematricula luego del resumen de materias seleccionadas y

del valor a pagar se debe presionar el botón aceptar prematricula.

1.3. Evaluación Docente.

6

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

La Universidad del Azuay con el propósito de mejorar la calidad de enseñanza y calidad

de su personal, permite que los estudiantes puedan realizar una evaluación a los docentes

durante cada periodo lectivo.

La información necesaria y los resultados de las evaluaciones a los docentes realizadas

por los estudiantes de la Universidad del Azuay son almacenadas en una base de datos de

MySql.

Para   que   los   estudiantes   puedan   realizar   esta   evaluación   deben   ingresar   en   el   icono

evaluación docente de la pagina Web de la Universidad del Azuay.

Los estudiantes luego deberán ingresar su número de cédula de identidad y a continuación

su código de estudiantes de la Universidad del Azuay.

Figura 1.5.  Ingreso de datos para evaluación docente

7

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

En la siguiente pantalla aparecerá el nombre del estudiante con todas las materias en las

que el estudiante esta matriculado en el periodo lectivo actual, acompañado por el nombre

del profesor que dicta la materia, el estudiante simplemente debe seleccionar la materia

que desea y presionar el botón evaluar.

Figura 1.6. Selección de Materia para Evaluación Docente

A continuación deberá  llenar todas las preguntas de la evaluación y presionar el botón

grabar evaluación que se encuentra al final del formulario.

8

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 1.7. Evaluación Docente

Si desea evaluar otra materia debe seleccionar nuevamente la materia y presionar el botón

evaluar, si el estudiante ya evaluó a los docentes de todas sus materias en las que esta

matriculado en el presente periodo  recibirá un mensaje indicando que todas sus materias

ya han sido evaluadas.

1.4. Correo electrónico.

  El   correo   electrónico   de   la   Universidad   del   Azuay   funciona   con   el   servidor

Openwebmail, este servidor puede gestionar los usuarios con bases de datos, servidores

LDAP, archivos, etc.

Actualmente   esta   configurado  para  que  gestione   los   usuarios  mediante   el   archivo  de

usuarios y el archivo de claves que mantiene el sistema operativo Linux de el servidor

donde se encuentra implementado el servidor de correo electrónico.

9

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Para poder crear una nueva cuenta de correo electrónico se debe crear un nuevo usuario en

el sistema operativo Linux.

Todos los estudiantes matriculados en la Universidad del Azuay tienen derecho a una

cuenta de correo electrónico.

Para   poder   abrir   una   cuenta   de   correo   electrónico   de   la   Universidad   del   Azuay,   el

estudiante   actualmente   deberá   acercarse   al   departamento   de   Redes   Internas   que   se

encuentra ubicado en el segundo piso del edificio de investigaciones, para poder verificar

que   el   estudiante   esta   matriculado   en   el   presente   periodo   lectivo   debe   presentar   su

comprobante de pago de la matricula o también puede presentar su carnet de estudiante de

la Universidad del Azuay, la persona encargada deberá ingresar los datos personales del

estudiante en el  sistema (nombres,  apellidos,  carrera,  etc.…) a continuación deberá  el

estudiante ingresar una contraseña para la cuenta del correo electrónico.

Todas las cuentas de los estudiantes están formadas por el sufijo ua0 seguida del código

del estudiante.

Para poder tener acceso a la cuenta de correo electrónico los estudiantes deben ingresar  a

la página Web de la Universidad del Azuay e ingresar su nombre de usuario y su clave de

la siguiente manera:

10

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 1.8. Ingreso de usuario y clave para el correo electrónico

 1.5. Internet Inalámbrico.

Para la gestión de los usuarios para el Internet inalámbrico de la Universidad del Azuay se

encuentra implementado un servidor Nocat.

El   servidor   Nocat   fue   configurado   para   que   realice   la   autenticación   de   los   usuarios

mediante una base de datos de MySql.

Las tablas de MySql utilizadas por el servidor Nocat son las siguientes:

• Tabla Network: es la entidad en la que se almacenarán el usuario y el grupo al

que pertenece el usuario.

 

• Tabla Member: es la entidad en la que se almacenarán los datos del usuario como

su contraseña, su descripción, etc.

11

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

La Universidad  del  Azuay  permite  que   todos   los   estudiantes   puedan   tener   acceso  al

Internet de forma inalámbrica, para lograr esto los estudiantes deben seguir un proceso

parecido  al  de  correo  electrónico,   es  decir  deben acercarse  al  departamento  de   redes

internas para poder crearse una cuenta, el único requisito es presentar un documento que

certifique que están estudiando en el periodo lectivo actual, este documento puede ser el

carnet de estudiante de la Universidad del Azuay o sirve también el comprobante de pago

de la matricula, de igual forma se ingresarán los datos del estudiante  en el sistema y se

creará un nombre de usuario con una clave ingresada por el estudiante, este nombre de

usuario   al   igual   que   el   nombre   de   usuario   del   correo   electrónico   es   el   código   del

estudiante con el sufijo ua0 pero las contraseñas son diferentes para ambos servicios.

Para poder tener acceso al Internet inalámbrico los estudiantes deben encontrarse en los

predios de la Universidad del Azuay, tener un computador con una tarjeta de red para

conexión  Wireless, deben seleccionar la antena con la que tengan mayor recepción de la

señal y desde el browser ingresar su nombre de usuario y su clave en la pagina  de ingreso

a la red de la Universidad del Azuay de la siguiente forma:

12

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 1.9. Ingreso de usuario y clave para el Internet inalámbrico.

Si   su  cuenta  y   su  clave   son   correctas   recibirá   la   siguiente   pantalla  y  podrá   navegar

libremente por Internet:

Figura 1.10.  Página Web de bienvenida para un usuario válido del internet inalámbrico

1.6 Conclusiones.

13

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

La   Universidad   del   Azuay   por   medio   de   su   pagina   Web   permite   a   los   estudiantes

consultar   calificaciones,   realizar   prematriculas,   evaluar   a   los   docentes,   renovación  de

becas, consulta de colegiatura, ingresando únicamente la cédula de identidad y el código

de estudiante, adicional a esto  tienen derecho,  los estudiantes, a una cuenta de correo

electrónico y a una cuenta para el uso del Internet inalámbrico. Para ser creadas estas

cuentas   los   estudiantes   deben   acercarse   al   departamento   de   Redes   Internas   de   la

Universidad del Azuay con un comprobante de que son estudiantes activos. 

Cabe recalcar que la cuenta de correo electrónico como la cuenta de Internet inalámbrico,

para un mismo estudiante, es diferente.

14

Capítulo II

Implementación   del   servidor   Radius   (Remote

Authentication Dial­In User Service) para el manejo

de las cuentas del servidor de correo electrónico de la

Universidad del Azuay

15

16

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

2.   Implementación   del   servidor   Radius   (Remote   Authentication   Dial­In   User

Service)  para   el  manejo  de   las   cuentas  del   servidor  de   correo   electrónico  de   la

Universidad del Azuay.

2.1   Servidor   Radius   (Remote   Authentication   Dial­In   User   Service­Servicio   de

usuario de acceso telefónico de autenticación remota).

El servidor Radius es utilizado en una arquitectura cliente servidor, en el caso de este

proyecto, los estudiantes son los clientes, quienes tratan de acceder a los servicios Web

que brinda la Universidad del Azuay.

La comunicación del servidor Radius es posible a través de un "puerto no controlado"

lógico o canal en el punto de acceso con el fin de validar las credenciales y obtener claves

para obtener acceso a la red a través de un "puerto controlado" lógico. Utiliza el puerto

1812 UDP para establecer sus conexiones.

  Aunque inicialmente se desarrolló para habilitar el acceso telefónico remoto, como su

propio nombre indica, en la actualidad se usa para multitud de aplicaciones adicionales

tales como servidores de redes privadas virtuales (VPN), acceso mediante ADSL, y por

supuesto redes inalámbricas entre otras.

Una infraestructura Radius está  formada básicamente por  los clientes que requieren el

acceso, los clientes Radius y los Servidores Radius.

Una de las características más importantes del servidor Radius es su capacidad de manejar

sesiones, notificando cuando comienza y termina una conexión, así que al usuario se le

podrá determinar su consumo y facturar en consecuencia; los datos se pueden utilizar con

propósitos estadísticos.

17

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Radius fue desarrollado originalmente por Livingston Enterprises para la serie PortMaster

de   sus   servidores   de   acceso   a   la   red  (NAS),   actualmente   existen   muchos   servidores

Radius, tanto comerciales como de código abierto. Las prestaciones pueden variar, pero la

mayoría pueden gestionar los usuarios en archivos de texto, servidores  LDAP,  bases de

datos varias, etc.

El servidor Radius es un servidor tipo AAA (Authentication, authorization, Accounting):

2.1.1. Authentication (Autenticación).

Esta función le permite verificar las conexiones de los usuarios, es decir trata de verificar

que la persona o la máquina que desea utilizar un servicio es quien dice ser, para esto  el

servidor   le   pide   al   usuario   sus   credenciales   (por   lo  general   nombre  de  usuario  y   su

contraseña).

Como parte de la autenticación se puede configurar el tiempo máximo de conexión así

como el tiempo máximo de inactividad.

2.1.2. Authorization (Autorización).

Luego   de   que   el   cliente   o   el   usuario   hayan   ingresado   su   nombre   de   usuario   y   su

contraseña,   el   servidor   Radius   analiza   las   peticiones   realizadas   hacia   el   servidor   de

aplicaciones  para otorgar o no el  permiso de acuerdo al   tipo de   restricciones  que el

usuario tenga.

Es decir el servidor decide si la entidad, una vez autenticada, tiene permiso para acceder al

recurso.

18

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

2.1.3. Accounting.

Esta función le permite identificar los usuarios conectados y sus características. Se envía

un paquete cuando el usuario inicia la sesión y otro paquete cuando el usuario cierra su

conexión,  permitiéndole  así   al   servidor  adquirir   información estadística  a  cerca  de   la

conexión   como   por   ejemplo:   tiempo   de   duración   de   la   conexión,   cantidad   de   datos

transferidos, promedio de la velocidad de conexión, etc. Toda esta información es muy

útil para registros, monitoreos, contabilidad e informes de todo acceso remoto o intento de

acceso a la red.

2.2. Radius simplifica la dificultad.

Un servidor Radius puede realizar consultas en una base de datos de autenticación local si

ello es adecuado para el escenario. O bien, la solicitud puede transmitirse a otro servidor

para su validación. Cuando Radius decide que se puede autorizar el equipo en esta red,

vuelve a enviar el mensaje al punto de acceso y éste permite que el tráfico de datos fluya

hacia la misma. 

Cuando se realiza la conexión con un ISP (Internet  Service  Provider) mediante módem,

DSL  (Digital Subscriber Line),  cable módem,  Ethernet  o  Wi­Fi  (Wireless Fidelity),  se

envía una información que generalmente es un nombre de usuario y una contraseña. 

Esta información se transfiere a un dispositivo NAS (Servidor de Acceso a la Red) sobre

el  protocolo  PPP  (Protocolo  punto  a  punto),  quien   redirige   la  petición  a  un  servidor

Radius sobre el protocolo Radius. 

El servidor  Radius  comprueba que  la   información es correcta  utilizando esquemas de

autentificación  como  CHAP  (Challenge  Handshake Authenticacition  Protocol)  o  EAP

(Extensible Authentication Protocol). 

19

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Si es aceptado, el servidor autorizará el acceso al sistema del ISP y le asigna los recursos

de red como una dirección IP, etc.

2.3. Instalación y configuración  del Servidor Radius.

Para  activar   el   servidor  Radius   en  Linux     ejecutamos  el   comando  ntsysv,   señalamos

radiusd para que activarlo cada vez que se reinicie Linux

Figura 2.1. Activación del servidor Radius en Linux

Si   su  paquete   de  Linux  no   tiene   instalado   el   servidor  Radius   puede   instalarlo   de   la

siguiente forma:

20

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Podemos acceder al paquete de Radius desde la pagina Web: http://www.freeRadius.org,

aquí encontraremos la ultima versión de este servidor, una vez que esté el paquete en la

computadora ejecutamos el siguiente comando para descomprimir el archivo:

tar –zxvf freeRadius.tar.gz

R 2.1. Comando para descomprimir el paquete del servidor Radius

El siguiente paso es compilar el servidor Radius,  para lo cual debemos cambiarnos al

directorio donde descomprimimos los archivos y ejecutamos desde la línea de comandos:

./configure

R 2.2. Comando para configurar la instalación del servidor Radius

Comúnmente,   las   siguientes  ubicaciones   son   las  usadas  cuando  se   instala   el   servidor

Radius:

Binarios:  /usr/local/bin  y  /usr/local/sbin

Manual:  /usr/local/man

Archivos de Configuración: /etc/raddb

Archivos Log:  /var/log y /var/log/radacct

R2.3. Locaciones de los archivos del servidor Radius

Luego ejecutamos el siguiente comando para compilar los binarios:

Make

R 2.4. Comando para compilar la instalación del servidor Radius

Finalmente ejecutamos el comando:

21

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

make install

R 2.5. Comando para instalar el servidor Radius

Este comando ubicará todos los archivos en sus respectivas locaciones y también instalará

los archivos de configuración si este servidor no ha tenido instalado antes un servidor

Radius, de otra manera el proceso no reemplazará la configuración existente y reportara

en que archivos no se instaló.

A este punto ya debemos tener instalado el servidor Radius activándolo con el comando

ntsysv o adquiriendo el paquete e instalándolo; para empezar a utilizar el servidor Radius

debemos modificar algunos archivos de configuración, la mayoría de estos archivos se

encuentra   en   /etc/raddb,   los   siguientes   archivos   se   encuentra   en   este   directorio   por

defecto:

22

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

­rw­r­­r­­  1 root root   422 jun 23  2005 acct_users

­rw­r­­r­­  1 root root  3454 jun 23  2005 attrs

drwxr­xr­x  3 root root  4096 oct 23 15:13 certs

­rw­r­­­­­  1 root root   325 ene 25 17:57 clients

­rw­r­­­­­  1 root root  2978 abr 17  2006 clients.conf

­rw­r­­­­­  1 root root  2937 abr  3  2006 clients.conf.bak

­rw­r­­r­­  1 root root   929 jun 23  2005 dictionary

­rw­r­­r­­  1 root root 12518 may 25  2006 dictionary.ascend

­rw­r­­r­­  1 root root  6020 may 25  2006 dictionary.cisco

­rw­r­­r­­  1 root root  1546 may 25  2006 dictionary.compat

­rw­r­­r­­  1 root root   312 may 25  2006 dictionary.livingston

­rw­r­­r­­  1 root root  6097 may 25  2006 dictionary.quintum

­rw­r­­r­­  1 root root  2718 may 25  2006 dictionary.shiva

­rw­r­­r­­  1 root root  1132 may 25  2006 dictionary.tunnel

­rw­r­­r­­  1 root root 62894 may 25  2006 dictionary.usr

­rw­r­­r­­  1 root root  2149 may 25  2006 dictionary.versanet

­rw­r­­r­­  1 root root   431 may 25  2006 dictionary.xtRadius

­rw­r­­r­­  1 root root  9080 jun 23  2005 eap.conf

­rw­r­­r­­  1 root root  9080 abr  3  2006 eap.conf.bak

­rw­r­­r­­  1 root root  8236 jun 23  2005 experimental.conf

­rw­r­­r­­  1 root root  2396 jun 23  2005 hints

­rw­r­­r­­  1 root root  1604 jun 23  2005 huntgroups

­rw­r­­r­­  1 root root  2348 jun 23  2005 ldap.attrmap

­rw­r­­r­­  1 root root  9330 jun 23  2005 mssql.conf

­rw­r­­r­­  1 root root  1109 abr 11  2006 naslist

­rw­r­­­­­  1 root root   856 jun 23  2005 naspasswd

­rw­r­­r­­  1 root root 12267 jun 23  2005 oraclesql.conf

­rw­r­­r­­  1 root root 14156 jun 23  2005 postgresql.conf

­rw­r­­r­­  1 root root   531 jun 23  2005 preproxy_users23

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

R 2.6. Lista de archivos del directorio /etc/raddb

Revisemos ahora el archivo /etc/raddb/clients. Este archivo tiene una descripción y las

credenciales   de   los   diferentes   dispositivos   que   realizarán   consultas   o   peticiones   al

servidor Radius; el archivo clients del Radius debe verse así:

localhost             clave_localhost

192.168.1.17      clave_ip1

192.162.12.15    clave_ip2

R 2.7. Archivo /etc/raddb/clients

Otro   archivo   que   es   útil,   en   nuestro   caso   para   realizar   pruebas,   es   el   archivo   /

etc/raddb/users,   donde   podremos   agregar   un   usuario,   el   archivo   deberá   verse     de   la

siguiente manera:

steve   Auth­Type := Local, User­Password == "testing"

        Reply­Message="Usuario Prueba",

        Service­Type = Framed­User,

        Framed­Protocol = PPP,

        Framed­IP­Address = 172.16.3.33,

        Framed­IP­Netmask = 255.255.255.0,

        Framed­Routing = Broadcast­Listen,

        Framed­Filter­Id = "std.ppp",

        Framed­MTU = 1500,

    Framed­Compression = Van­Jacobsen­TCP­IP

R 2.8. Usuario de prueba en el archivo /etc/raddb/users

24

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

En   este   momento   podemos   realizar   nuestra   primera   prueba,   reiniciamos   el   servidor

Radius, para guardar todos los cambios de configuración, ejecutando desde la línea de

comandos lo siguiente:

service Radiusd restart

R 2.9. Comando para reiniciar el servidor Radius

Luego de esto realizamos la prueba con el usuario de prueba del archivo /etc/raddb/users,

ejecutando desde la línea de comando lo siguiente:

radtest steve testing 127.0.0.1 1812 clave_localhost

R 2.10. Comando para probar el usuario de prueba

Si todo esta correcto tendremos la siguiente respuesta:

25

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Sending Access­Request of id 58 to 127.0.0.1:1812

        User­Name = "steve"

        User­Password = "testing"

        NAS­IP­Address = diegoxavier

        NAS­Port = 1645

rad_recv: Access­Accept packet from host 127.0.0.1:1812, id=58, length=94

        Reply­Message = "Usuario prueba"

        Service­Type = Framed­User

        Framed­Protocol = PPP

        Framed­IP­Address = 172.16.3.33

        Framed­IP­Netmask = 255.255.255.0

        Framed­Routing = Broadcast­Listen

        Filter­Id = "std.ppp"

        Framed­MTU = 1500

        Framed­Compression = Van­Jacobson­TCP­IP

R 2.11. Respuesta enviada por el servidor Radius por el usuario de prueba

Como el propósito de este proyecto es utilizar el servidor Radius   que autentifique una

lista de usuarios de una base de datos de MySql, configuraremos el servidor Radius para

que funcione con MySql.

Para   lograr   esto   modificaremos   el   archivo   de   configuración   del   servidor   Radius,

etc/raddb/Radiusd.conf,   que   es  muy  parecido   al   archivo  httpd.conf   del   servidor  Web

Apache ya que lista casi todas las directivas y las opciones del funcionamiento básico del

servidor Radius.

En este archivo realizamos los siguientes cambios:

26

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

• Agregaremos  la entrada sql  a la zona de autorización (authorize section) entre las

entradas suffix y files, esta sección del archivo quedará de la siguiente forma:

Authorize

 {

        chap

        mschap

        suffix

        sql

        eap

        files

}

R 2.12. Sección Authorize del archivo /etc/raddb/radiusd.conf

• Luego   en   la   sección   de   cuentas   del   mismo   archivo   (accounting   section),

ingresamos   la   entrada   sql   entre   las   entradas  unix  y   radutmp,   esta   sección  del

archivo debería verse como esto:

accounting 

{

        unix

        sql

        radutmp

}

R 2.13. Sección Accounting del archivo /etc/raddb/Radiusd.conf

27

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

El   siguiente   paso   es   modificar   el   archivo   /etc/raddb/sql.conf,   donde   colocaremos   el

nombre de usuario y password para acceder a la base de datos de MySql, así como el

nombre de la base de datos, el nombre de las tablas, y modificaremos los consultas  a la

base de datos que se encuentran por defecto, ya que no utilizaremos los nombres de las

tablas que por defecto utiliza el servidor Radius, el archivo deberá verse de la siguiente

forma:

28

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

sql 

{

driver = "rlm_sql_MySql"

server = "localhost"

login = "root"

password = "clave_usuario"

Radius_db = "nombre_base_de_datos"

authcheck_table = "member"

groupcheck_table = "radgroupcheck"

usergroup_table = "network"

deletestalesessions = yes

sqltrace = yes

sqltracefile = ${logdir}/sqltrace.sql

num_sql_socks = 5

connect_failure_retry_delay = 60

        

sql_user_name = "%{User­Name}"       

authorize_check_query = "SELECT id,login,attribute,pass2,op 

FROM ${authcheck_table} 

WHERE login = '%{SQL­User­Name}' ORDER BY id"

authorize_group_check_query = "SELECT ${groupcheck_table}.id,${groupcheck_table}.

network,

${groupcheck_table}.attribute,

${groupcheck_table}.value,${groupcheck_table}.op  

FROM ${groupcheck_table},${usergroup_table} 

WHERE ${usergroup_table}.login = '%{SQL­User­Name}' AND ${usergroup_table}.

network = ${groupcheck_table}.network ORDER BY ${groupcheck_table}.id"29

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

R 2.14. Archivo /etc/raddb/sql.conf

2.4. Implementación del servidor Radius en la Universidad del Azuay.

La implementación del servidor Radius es una parte de la conformación de un sistema de

autenticación automático para los servicios Web para los estudiantes de Universidad Del

Azuay, además este sistema servirá para la unificación de todos los servicios. 

Entendido esto y como se estudió en el primer capitulo, Análisis de la situación actual de

los servicios Web para los estudiantes de la Universidad del Azuay, el servidor Nocat del

Internet inalámbrico gestiona los usuarios mediante una base de datos de MySql, y como

el propósito  de este  capitulo es  implementar el  servidor Radius para que gestione los

usuarios del correo electrónico mediante una base de datos de MySql, se deberá utilizar la

misma base de datos del servidor Nocat.

Para lograr esto se debieron realizar   algunas modificaciones que no afecten el correcto

funcionamiento  del   servidor  Nocat  pero  que  permitan  el   funcionamiento  del   servidor

Radius.

Se debió  agregar la  tabla Radgroupcheck, en donde se almacenan los grupos para los

usuarios   existentes,   esta   tabla   es  utilizada  únicamente  por   el   servidor  Radius  para   la

autenticación de usuarios y no por el servidor Nocat.

Además se debieron agregar los siguientes campos en la tabla Member:

pass2, name, id, atrribute, op. Y en la tabla Network los siguientes campos: wireless, mail,

otros.

30

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

2.4.1. Modelo entidad relación de la base de datos para el servidor Radius

Para la implementación del servidor Radius con una base da datos de MySql utilizaremos

las siguientes entidades de la base de datos llamada Nocat

Tabla Network: es la entidad en la que se almacenarán el tipo de servicios Web que desee

tener el estudiante.

 

Tabla Member: es la entidad en la que se almacenarán los datos del estudiante y a la cual

se accederá para la validación de la contraseña en el momento de utilizar los servicios

Web de la Universidad del Azuay.

Tabla Radgroupcheck: es la entidad que almacenarán los grupos en los que pueden estar

divididas las personas que ocuparan los servicios Web de la Universidad del Azuay.

31

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

2.4.2. Diccionario de datos.

El diccionario de datos, de las entidades que forman la base de datos utilizada, es una

herramienta  muy  necesaria  para   el   correcto   análisis   de   los   datos   en   el  desarrollo  de

cualquier aplicación.

Tabla Network: consta de los siguientes campos:

• login: almacena el identificador del usuario.

• network: almacena el grupo al que pertenece el usuario.

• modified:   almacena   la   fecha   y   la   hora   del   momento   que   es   modificado

cualquier registro del usuario en la base de datos.

• wireless: almacena le valor de YES o NO para el servicio de wireless de la

Universidad del Azuay

• mail: almacena el valor de YES o NO para el servicio de correo electrónico de

la Universidad del Azuay  

• otros: almacena el valor de YES o NO para los servicios Web de consulta de

calificaciones,   prematriculas   y   evaluación   a   los   docentes,   revisión   de

colegiaturas, ratificación de becas por Internet.

Tabla Member: consta de los siguientes campos:

• login: almacena el identificador del usuario.

• modified:   almacena   la   fecha   y   la   hora   del   momento   que   es   modificado

cualquier registro del usuario en la base de datos.

• pass:   almacena   el   valor   de   la   contraseña   encriptado   con   el   método   de

encriptación MD5.

32

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

• pass2:   almacena   el   valor   de   la   contraseña   encriptado   con   el   método   de

encriptación CRYPT.

• name: almacena el nombre completo del usuario.

• id: almacena un valor necesario utilizado para armar las consultas del servidor

Radius.

• attribute: almacena un valor necesario utilizado para armar las consultas del

servidor Radius, siempre es igual a password.

• op: almacena un valor necesario utilizado para armar las consultas del servidor

Radius: siempre es igual a = =.

Tabla RadGroupCheck: consta de los siguientes campos:

• id: almacena el identificador del grupo de los usuarios.

• network: almacena el nombre del grupo de los usuarios.

• attribute: almacena un valor necesario utilizado para armar las consultas del

servidor Radius, siempre es igual a Auth­Type.

• op: almacena un valor necesario utilizado para armar las consultas del servidor

Radius, siempre es igual a = =.

• value:   almacena   un  valor   necesario   utilizado  para   armar   las   consultas   del

servidor Radius, siempre es igual a: Local.

Para poder  interactuar  con el  servidor  Radius  utilizando el   lenguaje de Programación

PERL debemos instalar un módulo llamado Authen::Radius.

(Véase Anexo 2 Authen Radius)

2.5. Manejo del servidor de correo electrónico con el servidor Radius.

33

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

La Universidad del Azuay utiliza el Openwebmail  como servidor de correo electrónico,

este servidor puede autentificar los usuarios con los siguientes módulos:

­rw­r—r­­  1 root mail  4790 abr 30  2005 auth_ldap.pl

­rw­r­­r­­  1 root mail  5444 abr 30  2005 auth_ldap_vpopmail.pl

­rw­r­­r­­  1 root mail  6765 abr 30  2005 auth_MySql.pl

­rw­r­­r­­  1 root mail  6281 abr 30  2005 auth_MySql_postnuke.pl

­rw­r­­r­­  1 root mail  6346 abr 30  2005 auth_MySql_vmail.pl

­rw­r­­r­­  1 root mail  5453 abr 30  2005 auth_nis.pl

­rw­r­­r­­  1 root mail  9131 abr 30  2005 auth_pam.pl

­rw­r­­r­­  1 root mail  5279 abr 30  2005 auth_pg.pl

­rw­r­­r­­  1 root mail  6187 abr 30  2005 auth_pgsql.pl

­rw­r­­r­­  1 root mail  1964 jul 25  2006 auth.pl

­rw­r­­r­­  1 root mail  4361 abr 30  2005 auth_pop3.pl

­rw­r­­r­­  1 root root  7088 feb 11 15:13 auth_unix.pl

­rw­r­­r­­  1 root mail  7604 abr 30  2005 auth_vdomain.pl

R 2.15. Lista de módulos de autenticación del servidor Openwebmail

Actualmente el openwebmail funciona de la siguiente manera:

En   el   archivo   de   configuración   del   servidor   de   correo   electrónico   Openwebmail

(/openwebmail/etc/openwebmail.conf)   se  encuentra   el  módulo  que  se  utilizará  para   la

autenticación de los usuarios en la directiva: auth_module, actualmente este servidor esta

configurado para que funcione con el módulo auth_unix.pl.

El módulo auth_unix.pl realiza la autentificación de los usuarios, comparando el usuario

que desea ingresar con los usuarios existentes, en los archivos /etc/passwd y /etc/shadow,

34

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

en el  sistema operativo del  Servidor donde se encuentra  implementado el servidor de

correo electrónico.

 

Para lograr implementar el servidor Radius, como método de autenticación en el servidor

de   correo   electrónico   Openwebmail,   se   deberá   modificar   los   archivos   y   librerías

existentes,   ya   que   el   Openwebmail   actualmente   no   soporta   este   tipo   de   servidor   de

autenticación.

Cambiaremos el archivo openwebmail/auth/auth_unix.pl que realiza la autenticación de

usuarios:

Todos los diferentes módulos de autenticación que tiene el servidor de correo electrónico

Openwebmail tienen un archivo de configuración, en donde se guardarán los parámetros

necesarios para que funcionen los módulos.

El archivo original /openwebmail/auth/auth_unix.pl, obtiene entre otros parámetros de su

archivo de configuración /openwebmail/etc/auth_unix.conf, la ubicación de los archivos

donde se encuentran toda la información de los usuarios como son: nombre de usuario,

grupo al que pertenece, contraseña, etc.

Todos   los  módulos   tienen   la  misma estructura,  es  decir  al   inicio  de  cada  módulo  se

obtienen   los     parámetros   del   archivo   de   configuración   correspondiente   y   luego   se

desarrollan las mismas funciones.

Para nuestro propósito de que funcione el openwebmail con el servidor Radius y este a su

vez autentifique usuarios con el servidor de base de datos MySql debemos cambiar el

archivo  de configuración  /openwebmail/etc/auth_unix.conf  para  indicar   los  parámetros

35

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

necesarios para conectarse al servidor Radius y al servidor MySql, este archivo luego de

los cambios debería verse algo así:

Radius_host

127.0.0.1

Radius_secret             clave_Servidor_Radius

SQLHost   

127.0.0.1

sqlusr    

root

sqlpwd  

clave_administrador_MySql

auth_db                        nombre_base_de datos

passwdfile_plaintext     /etc/passwd

R 2.16. Archivo /openwebmail/etc/auth_unix.conf

El parámetro Radius_host indica la dirección Ip de la maquina en donde se encuentra el

servidor Radius, a continuación tenemos el parámetro Radius Secret donde se guardará la

clave  para  acceder  al   servidor  Radius,   luego  tenemos   los  parámetros  para   acceder  al

servidor de base de datos MySql, para esto necesitamos la dirección Ip de la maquina del

servidor MySql, luego tenemos el nombre de usuario y su contraseña para comunicarnos

y hacer las consultas a la base de datos y también el nombre de la base de datos.

36

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

El ultimo parámetro de este archivo de configuración, passwdfile_plaintext, guardará la

ubicación del archivo de contraseñas del sistema operativo Linux del servidor donde se

mantienen los usuarios del servidor de correo electrónico.

Una vez que el módulo /openwebmail/auth/auth_unix.conf obtenga todos los parámetros

de su archivo de configuración, ejecutara las funciones siguientes:

get_userinfo {}

En esta función se obtiene la información sobre el usuario ingresado, para esta función no

necesitamos la contraseña del usuario, la información se obtiene de la base de datos de

MySql  y   también del   archivo  que  guarda   información de   los  usuarios,  en  el   sistema

operativo del servidor, especificado en el archivo de configuración.

La información obtenida de la base de datos es el nombre completo del usuario y si tiene

o no permiso para utilizar el servidor de correo electrónico, para lograr esto se realiza la

siguiente:

Primero se debe conectar a la base de datos utilizando el módulo de conexión DBI

#conexión a la base de datos

my $dbh = DBI­>connect("dbi:MySql:$auth_db;host=$SQLHost", $sqlusr,$sqlpwd);

R 2.17. Conexión a la base de datos de MySql desde el módulo del servidor Openwebmail

Luego debemos realizar una consulta para ver si este usuario tiene permiso de utilizar el

servicio de correo electrónico:

37

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

#consulta a la base de datos

my $queryStr =qq|select mail from network  where strcmp(login , '$user')=0|;

my $sth = $dbh­>prepare($queryStr);

$sth­>execute;

R 2.18.  Consulta a la base de datos para verificar si tiene el usuario activado el servicio de mail

Si la consulta no produjo ningún resultado es porque el usuario no existe, entonces la

función retornará   ­4 y el mensaje de error correspondiente, pero si el usuario si existe

preguntará si el usuario tiene permiso para poder ocupar el servicio de correo electrónico, 

Si el campo mail de la tabla Network de la base de datos es igual a YES entonces significa

que el usuario si tiene permisos para ocupar este servicio, por lo tanto seguirá obteniendo

información del usuario, realizara otra consulta a la base de datos para obtener el nombre

completo del usuario, información guardada en el campo name de la tabla Member de la

base de datos:

$queryStr =qq|select name from member  where strcmp(login , '$user')=0|;

R 2.19.  Consulta a la base de datos para obtener el nombre del usuario

Y obtendrá, del archivo que guarda información de los usuarios del sistema operativo, los

siguientes datos:

Uid: número de identificación del usuario en el sistema operativo.

Gid:   número   de   identificación   del   grupo   al   que   el   usuario   pertenece   en   el   sistema

operativo.

Realname: el nombre completo del usuario en el sistema operativo.

Homedir: el nombre del directorio para cada usuario en el sistema operativo.

38

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Estos cuatro valores serán los retornados en caso de que el usuario exista.

check_userpassword {}

Esta función es la que realiza la autenticación de los usuarios, a esta función llegan como

parámetros el nombre de usuario y también la contraseña ingresada.

Esta función fue modificada para que realice la autenticación con el servidor Radius, para

lograr la interacción con el servidor Radius debemos utilizar el módulo Authen:Radius

(Véase Anexo 2 Authen Radius).

La   primera   acción   es   la   conexión   con   el   servidor   Radius,   para   esto   utilizamos   los

parámetros especificados en el archivo de configuración.

/openwebmail/atc/auth_unix.conf.

my $r = new Authen::Radius(Host => $Radius_host, Secret => $Radius_secret);

R 2.20. Conexión con el servidor Radius con el módulo Authen:Radius

Una vez  conectados  al   servidor  Radius   cargamos   los   atributos,  nombre  de  usuario  y

contraseña, al objeto creado de la conexión:

$r­>add_attributes (

                { Name => 'User­Name', Value => $user },

                { Name => 'Password', Value => $passwordc },

  );

R 2.21. Agregar el usuario y clave al objeto de la conexión con el servidor Radius

39

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

A continuación enviamos una petición de acceso al Servidor Radius con el objeto creado

por   la   conexión  que   contiene   el   nombre  de   usuario   y   su   contraseña  y   recibimos   la

respuesta del  servidor Radius:

$r­>send_packet(ACCESS_REQUEST) and $resultado = $r­>recv_packet();

R 2.22. Envió de petición de acceso al servidor Radius

Si el resultado de la respuesta del servidor Radius es igual a 3 es porque el usuario y su

contraseña están correctas caso contrario la contraseña ingresada es incorrecta.

2.6 Conclusiones.

Se  implementó   el   servidor  de  autenticación Radius  para  el  manejo  de   las  cuentas  de

correo electrónico de la Universidad del Azuay, para lograr esto se modificó los módulos

de   autenticación   del   servidor   de   correo   electrónico   Openwebmail   para   que   puedan

gestionar los usuarios mediante el servidor Radius.

El   servidor   Radius   fue   configurado   para   que   pueda   realizar   la   autenticación   de   los

usuarios mediante una base de datos de MySql.

Para lograr una unificación con los usuarios existentes   del servidor Nocat que gestiona

los usuarios del Internet inalámbrico   de la Universidad del Azuay se utilizó la misma

base de datos de MySql. 

40

Capítulo III

Creación de un sistema de autenticación automático

para   los   servicios   Web   para   los   estudiantes   de   la

Universidad del Azuay

41

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

3. Creación de un sistema de autenticación automático para los servicios Web para

los estudiantes de la Universidad del Azuay.

Como ya se estudió  en el  capitulo número uno, análisis  de  la situación actual  de  los

servicios Web para los estudiantes de la Universidad del Azuay, para que un estudiante

pueda ingresar   a consultar sus calificaciones, realizar las prematriculas o evaluar   a los

docentes,  debe ingresar su número de cédula de identidad y también su código como

estudiante de la Universidad del Azuay; para poder tener acceso al correo electrónico  o al

Internet inalámbrico  el estudiante debe acercarse al departamento de Redes Internas con

un comprobante de que es estudiante activo de la Universidad del Azuay para que se le

pueda crear una cuenta, esta cuenta es diferente para cada caso.

Pensando en  la  comodidad de  los estudiantes  así  como tratar  siempre de brindar    un

servicio más ágil e innovador, se crea un sistema de autenticación automático para todos

los servicios Web para los estudiantes de la Universidad del Azuay.

Este sistema permitirá, a los estudiantes, crearse una cuenta con su clave que les servirá

para poder acceder a todos los servicios Web.

Este sistema esta orientado a los estudiantes de pregrado de la Universidad del Azuay así

como también a los estudiantes que se encuentren realizando un postgrado, una maestría o

cualquier tipo de especialización.

El sistema, en su pantalla inicial, esta dividida en dos clases de usuarios: 

• Usuarios nuevos: son aquellos estudiantes regulares o de postgrados que no tengan

una cuenta para los servicios Web que brinda la Universidad.

42

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

• Usuarios registrados: son aquellos estudiantes regulares o de postgrado que ya tienen

una cuenta para los servicios Web que brinda la Universidad del Azuay.

Figura 3.1. Página principal del sistema

3.1.  Usuarios nuevos.

El   sistema   identifica   a   los   usuarios   nuevos   como   los   estudiantes   de   pregrado   o   de

postgrado que no  tengan una  cuenta para el  correo electrónico de  la  Universidad del

Azuay

Para que el estudiante pueda crearse una cuenta para los servicios Web de la Universidad

del Azuay, primero deberá llenar un formulario con datos  personales que verifiquen que

el estudiante es quien dice ser, estos datos son los siguientes:

43

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Si es un estudiante de pregrado:

• Nombres

• Apellidos

• Código de estudiante

• Cédula de Identidad o Pasaporte.

• Teléfono

• Sexo

• Libreta Militar (si es varón y mayor de 18 años)

• Tipo de Sangre

• Estado civil

• Colegio

• Carrera

Si es un estudiante de postgrado:

• Nombres

• Apellidos

• Cédula de Identidad

• Teléfono

• Sexo

• Libreta Militar (si es varón y mayor de 18 años)

• Tipo de Sangre

• Estado civil

• Carrera

• Lugar de Trabajo

44

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

A los estudiantes se les presentará  el siguiente formulario, cabe recalcar que todos los

datos son requeridos por el sistema:

Si es un estudiante de pregrado:

Figura 3.2. Ingreso de datos personales del estudiante de pregrado en el sistema

Si es un estudiante de postgrado:

45

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.3. Ingreso de datos personales del estudiante de postgrado en el sistema

Para verificar que los datos sean correctos el sistema debe conectarse a las bases de datos

del sistema académico de la Universidad del Azuay que contienen la información de los

estudiantes.

Este Sistema fue desarrollado en los lenguajes de programación Web HTML, PHP y Perl (

Ver anexo 1 Herramientas Utilizadas para la creación del sistema de autenticación automático para los

servicios Web para los estudiantes de la Universidad del Azuay).

Para el desarrollo de las aplicaciones en el lenguaje de programación PHP, se creo un

archivo   de   configuración   que   almacena   todos   los   parámetros   necesarios   para   el

funcionamiento   de   la   aplicación,   por   ejemplo   en   este   archivo   de   configuración

encontramos   los  parámetros    necesarios  para   las  conexiones  a   las  bases  de  datos.  El

archivo conf.php se ve algo así:

46

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

<?php

//conexión al Sistema Académico de la UDA

$us ='nombre_de_usuario';

$pass ='clave_de_usuario';

$bd = 'nombre_de_host/nombre_base_de_datos';

$dias_permiso=365

?>

R 3.1. Archivo de configuración, conf.php, para las aplicaciones desarrolladas en PHP

Además de verificar todos los datos personales de los estudiantes se verificará cuando fue

la fecha de la ultima vez que el estudiante se matriculó en una materia, de esa fecha se

calcularán los días transcurridos hasta la fecha actual, de este forma se comparará este

valor de días  con el ingresado como parámetro en el archivo de configuración conf.php. 

Si los días transcurridos, entre la fecha de la última vez que el estudiante se matriculó y la

fecha  actual,   es  mayor  al  valor  de  días  permitidos  por  el  parámetro    del  archivo  de

configuración,   el estudiante no podrá crearse una nueva cuenta para tener acceso a los

Servicios Web de la Universidad del Azuay.

Este valor de días transcurridos será pensado y analizado para los estudiantes quienes no

se han matriculado en el periodo actual de estudios pero que se encuentran temporalmente

retirados de la Universidad del Azuay o que se encuentran desarrollando la tesis previa

para la obtención de algún titulo.

Para poder realizar el formulario para el ingreso de los datos personales de los estudiantes

que aspiran crear una nueva cuenta par a los Servicios Web, así como la verificación de

47

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

los datos de los estudiantes se utilizó el lenguaje de programación PHP y para la conexión

con las bases de datos del sistema académico de la Universidad del Azuay se utilizó la

herramienta Zend Core para Oracle.

Esta herramienta al instalar realiza una actualización del  lenguaje PHP permitiéndole así

poder conectarse a la base de datos de Oracle (Ver anexo 1 Herramientas Utilizadas para

la creación del  sistema de autenticación automático para los servicios Web para  los

estudiantes de la Universidad del Azuay).

La conexión, a las bases de datos del sistema académico de la Universidad del Azuay,

mediante PHP se realizó de la siguiente forma:

$conn = @oci_connect("$us", "$pass", "$bd");

if (!$conn)

{

$e = oci_error();

print htmlentities($e['message']);

exit;

}

R 3.2. Conexión a las bases de datos del sistema académico de la Universidad del Azuay

Para poder sacar un listado de las carreras existentes de la Universidad del Azuay se debió

realizar la siguiente consulta a las bases de datos del sistema académico de la Universidad

del Azuay:

48

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

$query = "SELECT *                 FROM te_carrera a                 where  exists (select b.cod_carrera                                        from te_prematricula b                                        where a.cod_carrera = b.cod_carrera                                                   and b.estado = 'M'                                                   and b.cod_periodo in (select c.cod_periodo                                                                                       from te_periodo c                                                                                       where c.vigente='X'))                             or a.cod_facultad ='EC'                             or a.correspondecia_automatica='G'                             order by a.nombre ";

$stid = oci_parse($conn, $query);

$r = oci_execute($stid, OCI_DEFAULT);

R 3.3. Consulta a las bases de datos del sistema académico de la Universidad del Azuay para listar las

carreras

De la misma forma se realizó una consulta para poder obtener una lista de colegios y una

lista del lugar de trabajo en caso de que sea estudiante de postgrado.

Además   los   estudiantes   deben   ingresar,   por   motivos   de   seguridad,   un   código   de

verificador, este código es una secuencia de números randómicos que genera el sistema.

Cuando se hayan ingresados todos los datos el estudiante debe presionar el botón validar.

El Sistema verificará todos los datos ingresados por el estudiante comparándolos con su

información  almacenada en las bases de datos del sistema académico de la Universidad

del   Azuay,   si   existe   algún   error   el   sistema   le   indicara   específicamente   que   dato   es

incorrecto para que puede volver a ingresarlo:

49

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.4. Datos personales del estudiantes Incorrectos

Si todos los datos ingresados por el estudiante están correctos, el sistema generará otro

formulario donde se encuentra el nombre de usuario, que en los estudiantes pregrado será

el sufijo ua0 más el código del estudiante y en los estudiantes de postgrado será el sufijo

ua_ más el    usuario  ingresado por el  estudiante,     los  nombres y apellidos,  el  usuario

únicamente  deberá   ingresar  una clave mayor a 8  dígitos,   repetir   la  clave  ingresada y

seleccionar los servicios Web que desea tener, puede seleccionar entre:

• Correo electrónico

• Internet inalámbrico

• Otros (consulta calificaciones, prematriculas, evaluación docente, etc.)

Si es un estudiante de pregrado se le presentará la siguiente pantalla:

50

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.5. Ingreso de clave y selección de servicios Web deseados para la nueva cuenta

Si es un estudiante de Postgrado se le presentara la siguiente pantalla donde a diferencia

de los estudiantes de pregrado deberá ingresar el usuario que desea:

51

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.6. Ingreso de usuario, clave y selección de servicios Web deseados para la nueva cuenta

Al finalizar debe presionar el botón guardar, el estudiante recibirá un mensaje así.

Figura 3.7. Confirmación de cuenta creada

En caso de que el  usuario ya exista,  no podrá  ser  ingresado nuevamente por  tanto el

sistema mostrará la siguiente pantalla:

52

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.8. Error en creación  de cuenta

Actualmente,  como mencionamos  en  el   estudio  de   los   servicios  Web existentes  y   su

funcionamiento, los usuarios del correo electrónico   se guardan en el sistema operativo

Linux   del   servidor   que   mantiene   al   servidor   de   correo   electrónico   mientras   que   los

usuarios del Internet inalámbrico se guardan en una base de datos de MySql gestionada

por el servidor Nocat.

Para  implementar el servidor Radius para gestione las cuentas del correo electrónico de la

Universidad del Azuay con una base de datos de MySql, se utilizó la misma base de datos

que el servidor Nocat, de esta forma los dos servicios, el servidor de correo electrónico

como el servidor del Internet inalámbrico gestionaran los usuarios de una misma base de

datos.

Para mantener la consistencia de los usuarios existentes en el sistema operativo con los

creados en la base de datos, al momento de ingresar un usuario en la base de datos deberá

53

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

ser ingresado, también, como usuario en el sistema operativo Linux del servidor donde se

mantienen implementados los servicios Web de la Universidad del Azuay.

La verificación de los datos ingresados por el estudiante con los datos almacenados en la

base de datos del sistema académico de la Universidad del Azuay se realizó en el lenguaje

PHP,   si   todo esta  correcto  y  el  usuario  ha   ingresado  su  clave  y  ha  seleccionado  los

servicios Web que desea el  sistema grabará  este  nuevo usuario para  lo cual  utiliza el

lenguaje de programación Perl.

Existe para los módulos realizados en PERL, al igual que para los realizados en PHP, un

archivo de parámetros,   este archivo se llama conf.txt, y contiene todos los parámetros

necesarios para el correcto funcionamiento de los módulos de Perl, como la conexión a la

base de datos de MySql  donde se guardarán los usuarios para los servicios Web.

Para ingresar un nuevo usuario en el sistema debemos ingresarlo en la base de datos para

lo cual debemos conectarnos mediante el módulo DBI  (Ver anexo 1  Herramientas utilizadas

para la creación del sistema de autenticación automático para los servicios Web para los estudiantes de la

Universidad del Azuay),  que permite interactuar con una base de datos mediante el lenguaje

de programación PERL, de la siguiente forma:

my $dbh = DBI­>connect("dbi:mysql:$auth_db;host=$SQLHost", $sqlusr,$sqlpwd)

R 3.4. Conexión a la base de datos de MySql, desde perl con el módulo DBI

El nombre de la base de datos, el nombre del host del servidor MySql, el nombre de

usuario y la clave son variables que se extraen del archivo de parámetros conf.txt, este

archivo además almacena el parámetro del numero de caracteres mínimos en el ingreso de

la clave cuando se crea una nueva cuenta.

54

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Una vez  que  se  haya   realizado  la  conexión a   la  base  de  datos  debemos   realizar  una

consulta para verificar que el usuario no exista, en caso de que el usuario ya ha sido

ingresado en el sistema no podrá ser ingresado nuevamente.

Si el usuario no existe se procederá a ingresarlo, primero el sistema lo ingresará como

usuario en le sistema operativo Linux por medio del siguiente comando:

system   ("/usr/bin/sudo   /usr/sbin/useradd   $nombre_usuario   ­p   $clave_usuario     ­s   /

sbin/nologin ­c $nombre_completo_usuario")

R 3.5. Comando para ingreso de un nuevo usuario en el sistema operativo Linux

El comando useradd permite agregar al sistema operativo Linux un nuevo usuario, con la

opción ­p ingresamos su clave, con la opción ­c su nombre completo y la opción ­s /

sbin/nologin   que   indica   que   es   un   usuario   que   no   puede   realizar   un   login   sistema

operativo Linux. 

Para que pueda este comando ser ejecutado desde una aplicación Web debemos ejecutarlo

con el comando Sudo, este comando es una herramienta que permite otorgar a un usuario

o   grupos   de   usuarios   normales,   permisos   para   ejecutar   algunos   comandos   como

administrador (o como otros usuarios) sin necesidad de conocer su contraseña.

Para que se pueda ejecutar el comando useradd con el comando sudo debemos modificar

el archivo /etc/sudores agregando la línea:

apache ALL= PASSWD: ALL, NOPASSWD: /usr/sbin/useradd, 

/usr/sbin/userdel

R 3.6. Sección del archivo /etc/sudores para el usuario Apache

55

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Esta   línea   permite   ejecutar   los   comandos   useradd   y   userdel   al   usuario   Apache   sin

necesidad de ingresar una contraseña de usuario administrador.

Si el ingreso del usuario en el sistema operativo del servidor que mantiene los servicios

Web fue satisfactorio se procederá a ingresarlo en la base de datos.

Para ingresar un usuario en la base de datos debemos ingresarlo en la tabla Network, que

gestiona   los   servicios  Web  de  cada  usuario,  y   en   la   tabla  member,  que  almacena  la

información del usuario.

$queryStr =qq|insert   into network (login,  network,  wireless,  mail,  otros) VALUES

('$nombre_usuario', 'alumnos', '$wireless', '$mail', '$otros')|;

$sth = $dbh­>prepare($queryStr);

$sth­>execute;

$queryStr   =qq|insert   into   member   (login,   pass,   pass2,   name,   id,   attribute,   op)

VALUES   ('$nombre_usuario',   '$clave_usuarioenc',   '$clave_usuarioenc2'   ,

'$nombrecompleto_usuario', '1', 'Password', '==')|;

$sth = $dbh­>prepare($queryStr);

$sth­>execute;

R 3.7. Inserción de un nuevo usuario en la base de datos

3.2 Usuarios registrados.

56

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Usuarios registrados son todos aquellos estudiantes que ya tienen una cuenta para  los

servicios Web de la Universidad del Azuay.

El Sistema les permite a los usuarios registrados poder realizar dos opciones:

Cambiar la clave de su cuenta y también les permite agregar o quitar servicios Web a una

cuenta especifica.

3.2.1. Cambio de clave.

Al estudiante que desea cambiar la clave de su cuenta se le presentará  un   formulario

donde deberá ingresar el nombre de usuario de su cuenta y su clave actual,  además deberá

ingresar la nueva clave, que debe ser mayor a 8 dígitos, y la confirmación de la nueva

clave. Por motivos de seguridad el estudiante deberá ingresar, al igual que en el ingreso de

una nueva cuenta, un código verificador generado por el sistema.

Figura 3.9. Ingreso de datos para modificación de clave de una cuenta

57

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Si la clave actual ingresada por el estudiante no es correcta recibirá el siguiente mensaje:

Figura 3.10. Clave de usuario incorrecta

La nueva clave ingresada debe ser igual a la confirmación para la nueva clave, si las dos

claves no coinciden, el estudiante recibirá la siguiente pantalla:

58

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.11. Nuevas claves ingresadas no coinciden

Si el estudiante ha ingresado su clave actual correctamente, y si las claves nuevas son

mayores  a  8  dígitos  y   son   iguales,  el  estudiante   recibirá  una  confirmación de  que  el

cambio de clave de su cuenta se ha realizado de forma satisfactoria:

59

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.12. Confirmación de cambio de clave de una cuenta

El formulario donde el  estudiante  ingresa su nombre de usuario,  su clave actual  y su

nueva clave es realizado en el  lenguaje de programación PHP, al  momento de que el

estudiante presiona el botón cambiar clave, el sistema llamará a un programa desarrollado

en el lenguaje de programación PERL, este programa   realiza una consulta a la base de

datos de los usuarios para constatar que el usuario exista y que esa es su clave actual,

luego verificará que las nuevas claves ingresadas sean iguales y mayores a 8 dígitos, si no

se presenta ningún error realizará el cambio de clave del usuario en la base de datos y

también el cambio de clave para el usuario dentro del sistema operativo Linux.

Para hacer el cambio de clave del usuario en la base de datos, se deberá modificar los

campos pass y pass2, que contienen las claves del usuario, de la tabla Member, de la

siguiente forma:

60

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

$queryStr =qq|update member set pass = '$clave_usuario1', pass2 = '$clave_usuario2'

where strcmp(login , '$nombre_usuario')=0|;

$sth = $dbh­>prepare($queryStr);

$sth­>execute;

R 3.8. Modificación de la clave de una cuenta en la base de datos

Para realizar el cambio de clave del usuario en el sistema operativo Linux utilizaremos el

siguiente comando:

system ("/usr/sbin/usermod  ­p $clave_usuario $nombre_usuario") == 0;

R 3.9. Comando para la modificación de la clave de una cuenta en el sistema operativo Linux

3.2.2. Agregar servicios Web.

Los usuarios registrados además de cambiar su clave también pueden agregar o quitar un

determinado servicio Web a su cuenta creada.

Al momento de ingresar una nueva cuenta los usuarios pueden activar los servicios Web

que desean  de los tres tipos existentes:

• Correo electrónico

• Internet inalámbrico

• Otros   (Consulta   de   calificaciones,   prematriculas,   evaluación   docente,   revisión   de

colegiaturas, ratificación de becas)

61

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

El estudiante para poder agregar o quitar algún servicio Web a su cuenta deberá ingresar

su nombre de usuario,  su clave y código de seguridad generado por el sistema, en el

siguiente formulario:

Figura 3.13. Ingreso de datos para modificación de servicios Web de una cuenta

El sistema verificará que el usuario exista y que esa sea la clave correcta para ese usuario,

si no existe ningún error con el nombre de usuario y su clave, presentará  el siguiente

formulario  donde aparecerán los servicios Web activados y los  servicios Web que no

están activados para esta cuenta de usuario.

62

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.14. Selección de servicios Web para una cuenta

El estudiante podrá entonces seleccionar que servicio Web desea agregar o quitar de su

cuenta dando un clic en el casillero a continuación de cada servicio Web.

Cuando el estudiante presione el botón aceptar, se guardaran los cambios en la base de

datos y se presentará una pantalla mostrando los cambios realizados en los servicios Web

indicando que servicio Web esta activo o inactivo.

63

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.15. Confirmación de cambio de servicios Web de una cuenta

El   formulario   inicial   donde   el   estudiante   ingresa   su   nombre   de   usuario   y   clave   fue

realizado en lenguaje de programación PHP, una vez que los datos hayan sido ingresados

se llamará a un programa realizado en Perl que realiza una consulta a la base de datos para

verificar que el estudiante exista y que su clave sea la correcta, además que servicios Web

están activos o inactivos para presentar en el formulario en el que el estudiante agregará o

quitará   los   servicios   Web   deseados,   la   consulta   para   obtener   esta   información   es   la

siguiente:

 

$queryStr =qq|select n.login, n.network, m.name, m.pass, m.pass2, n.wireless, n.mail,

n.otros  from network n, member m where strcmp(n.login , '$nombre_usuario')=0 and

n.login = m.login|;

R 3.10. Consulta de los servicios Web activados para una cuenta

El estudiante luego de que agregue o quite los servicios Web debe presionar   el botón

aceptar   que   llamará   a   otro   programada   desarrollado   en   Perl,   este   programa   será   el

64

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

encargado de realizar los cambios en la base de datos y se encargará también de presentar

los nuevos servicios Web activados o desactivados para la cuenta.

La petición a la base de datos para la modificación de los servicios Web es la siguiente:

my   $queryStr   =qq|update   network   set   wireless='$wireless',   mail='$mail',

otros='$otros' where strcmp(login , '$nombre_usuario')=0|;

R 3.11. Modificación de los servicios Web de una cuenta

3.3 Sistema para el administrador.

Es   necesario   la   creación   de   un   sistema   que   pueda   ser   utilizado   únicamente   por   los

administradores   de   los   servicios   Web   que   mantiene   la   Universidad   del   Azuay,   este

sistema permitirá ingresar las cuentas para los profesores y personal administrativo de la

Universidad del Azuay, la pantalla principal con el menú con las opciones disponibles

para el administrador es la siguiente:

65

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.16. Pantalla principal del sistema para el administrador

3.3.1. Ingreso de usuarios.

El   administrador   por   medio   del   sistema   creado   podrá   ingresar   una   nueva   cuenta   de

usuario,  esta puede ser parte de los siguientes grupos de usuarios disponibles:

• Profesores (personal docente de la Universidad del Azuay)

• Estudiantes (estudiantes de pregrado o postgrado de la Universidad del Azuay)

• Administrativos (personal administrativo de la Universidad del Azuay)

• Invitados (Invitados, personal que dicta talleres, seminarios en la Universidad del

Azuay)

El   administrador   para   crear   una   nueva   cuenta   debe   ingresar   el   usuario,   el   nombre

completo del usuario, la clave para la cuenta, mínimo de 8 caracteres, y seleccionar los

servicios Web que se encontraran activos para la nueva cuenta, en el siguiente formulario:

66

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.17. Ingreso de usuario, clave y selección de servicios Web para una nueva cuenta

Para ingresar la nueva cuenta debe presionar el botón guardar, si todos los datos fueron

ingresados  correctamente  el  administrador  recibirá  una  confirmación de  que el  nuevo

usuario fue ingresado:

67

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.18. Confirmación de creación de nueva cuenta

3.3.2. Eliminación de usuarios.

Los usuarios pueden ser eliminados únicamente por el administrador de los servicios Web

por tanto esta opción esta disponible en el sistema para el administrador

Para eliminar una cuenta el administrador debe ingresar únicamente el usuario, el sistema

le permite al administrador eliminar un usuario sin necesidad de ingresar la clave para la

cuenta:

68

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.19. Ingreso de usuario a eliminar

Luego de ingresar el usuario, debe presionar el botón eliminar usuario, para que se le

presente en una pantalla la información del usuario que desea eliminar:

69

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.20. Datos del usuario a eliminar

Si realmente   desea eliminar el usuario ingresado, el administrador deberá presionar el

botón aceptar, el sistema presentará una pantalla con la confirmación de la eliminación del

usuario ingresado:

Figura 3.21. Confirmación de usuario eliminado

3.3.3. Cambio de clave de usuario.

El   administrador   mediante   el   sistema   podrá   cambiar   la   clave   de   un   usuario   sin   la

necesidad   de   ingresar   la   clave   actual,   esta   opción   es   de   gran   utilidad   para   aquellos

usuarios que tienen creada una cuenta para los servicios Web pero no recuerdan su clave.

El formulario es el siguiente:

70

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.22.  Ingreso de usuario con nueva clave para modificación de clave

El sistema presentará un mensaje con la confirmación de la modificación del usuario:

Figura 3.23. Confirmación de cambio de clave

71

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

3.3.4. Reporte de usuarios.

El administrador puede realizar la consulta de los usuarios del sistema, ingresando como

parámetro de búsqueda el nombre o parte del nombre del usuario que desea consultar:

Figura 3.24. Ingreso del nombre o parte del nombre del usuario a consultar

Puede consultar un usuario, ingresando también, como parámetro de búsqueda el usuario

o parte del usuario a consultar:

72

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.25. Ingreso del usuario o parte del usuario a consultar

En ambos casos el sistema devolverá el usuario, el nombre de usuario y los servicios Web

activados para esta cuenta, en la siguiente pantalla:

73

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura 3.26. Resultado de la consulta de usuarios

3.4. Conclusiones.

El sistema de autenticación automática para  los servicios Web   de la Universidad del

Azuay fue creado para que los estudiantes puedan crearse por si mismos su propia cuenta

ingresando sus datos personales que prueben que es un estudiante activo.

El sistema, además, fue creado con la finalidad de unificar la autenticación de todos los

servicios Web que se mantiene para los estudiantes, es decir con el usuario creado, el

estudiante podrá tener acceso a todos los servicios Web implementados.

El sistema también permite a los estudiantes, modificar los servicios Web a los que tiene

acceso, además de poder  realizar el cambio de su clave.

Fue creado un sistema para el administrador, que le permita ingresar usuarios sin pasar

por el formulario de validación de datos, cambiar clave sin la necesidad de ingresar la

clave actual, eliminación de usuarios, y consulta de usuarios utilizando como parámetro

de búsqueda el usuario o el nombre del usuario.

Este sistema para el administrador es orientado al manejo de las  cuentas de los servicios

Web para el personal docente y administrativo de la Universidad del Azuay.

74

Capítulo IV

Reprogramación de las aplicaciones existentes de los

servicios Web  para los estudiantes de la Universidad

del Azuay.

75

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

4.  Reprogramación  de   las  aplicaciones  existentes  de   los   servicios  Web   para   los

estudiantes de la Universidad del Azuay.

Luego de haber creado el sistema de autenticación automático para todos los servicios

Web para los estudiantes de la Universidad del Azuay, se deben realizar algunos cambios

en las aplicaciones existentes, para que la gestión de usuarios sea la misma en todos los

servicios Web

Como se revisó en el capitulo número uno, donde se analizó la situación actual de los

servicios Web existentes para los estudiantes de la Universidad del Azuay, actualmente

los   estudiantes   para   poder   ingresar   a   consultar   sus   calificaciones,   para   realizar   una

prematricula o para evaluar a los docentes deben ingresar su cédula de identidad y su

código de estudiante, para poder ingresar al correo electrónico los estudiantes ingresan su

nombre de usuario y su clave, y para tener acceso al Internet inalámbrico ingresan su

usuario y su clave, diferente a la del correo electrónico, uno de los objetivos de la creación

del sistema de autenticación automático es la unificación de la gestión de usuarios para

todos los servicios Web de los estudiantes de la Universidad del Azuay; es decir que con

el un usuario y la clave creada por los estudiantes con el sistema, puedan tener acceso a

todos los servicios Web de la Universidad del Azuay.

Logrando así una unificación en el ingreso de usuarios para todos  los servicios  Web. 

Para lograr esto se deben realizar cambios en la autenticación de los usuarios de cada

servicio Web existente.

En el caso de consulta de calificaciones, prematriculas, evaluación docente, revisión de

colegiaturas y ratificación de becas ya no se verificará el número de cédula de identidad y

el código del estudiante, ahora se verificará el nombre de usuario y clave ingresada en la

76

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

base de datos de MySql utilizada para gestionar usuarios tanto para el servidor Nocat del

Internet inalámbrico como para el servidor Radius del correo electrónico.

Además para que un estudiante pueda tener acceso a estos tres tipos de servicios Web

deben tener activado en la base de datos, en la tabla Network el campo Otros, que hace

referencia a esta clase de  servicios Web. 

Este campo puede tomar el valor de YES en caso de que el servicio este activado y el

valor de NO en caso de que no este activado el servicio.

Al momento de implementar el servidor Radius para gestionar los usuarios, del servidor

de correo electrónico, con la base de datos de MySql se debió  realizar cambios en el

módulo  que   realiza   la  autenticación  de  usuarios,  uno de   las   funciones  de  este  nuevo

módulo es verificar si el estudiante tiene activo el servicio Web de correo electrónico, es

decir no basta con crearse un usuario para que  tenga acceso al  correo electrónico,  el

usuario además de ser creado debe tener activado el servicio de correo electrónico.

De igual forma para el Internet inalámbrico se debieron realizar cambios en el módulo que

realiza la autenticación de los usuarios para que verifique en la base de datos que tiene

activado el usuario el servicio de Internet inalámbrico. 

Para esto debemos realizar una consulta a la tabla Network que almacena los servicios

Web  para   cada  usuario,   si   el   campo  mail   que   hace   referencia   al   servicio   de   correo

electrónico y el campo wireless   que hace referencia al Internet inalámbrico,   si tienen

almacenado el valor de YES significa que el wervicio Web esta activado, caso contrario,

si   los  campos   tienen  almacenado el  valor  de  NO significa  que  no   tienen  activado el

servicio Web respectivo. 

77

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

En el caso del correo electrónico la verificación del servicio Web activado se implemento

en el  módulo /openwebmail/auth/auth_unix.pl para que funcione con el servidor Radius. 

En   la   función   que   recolecta   la   información   del   usuario,   se   implementó   la   siguiente

consulta:

my $queryStr =qq|select mail from network  where strcmp(login , '$user')=0|;

my $sth = $dbh­>prepare($queryStr);

$sth­>execute;

R 4.1. Consulta a la base de datos para verificar si tiene el usuario activado el servicio de mail

Para el Internet inalámbrico los cambios se debieron realizar en el módulo del servidor

Nocat que realiza la autenticación de los usuarios, se realizó la siguiente consulta:

My $st = $self­>db­>prepare( my $sql = qq/

    select wireless from network where login = "$usuario" /);

$st­>execute

R 4.2.  Consulta  a   la  base  de datos  para verificar  si   tiene  el  usuario  activado el  servicio  de  Internet

Inalámbrico

4.1. Conclusiones.

Las   funciones  principales   del   sistema  desarrollado   son   la   creación  automática   de   las

cuentas para  los servicios Web para los estudiantes de la Universidad del Azuay y la

unificación   de   la   autenticación   de   todos   los   servicios   Web   existentes,     por   tanto   se

debieron   modificar   las   aplicaciones   que   permitían   el   ingreso   a   los   estudiantes   a   los

78

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

diferentes servicios Web, en el caso de de consulta de calificaciones,  prematriculas, y

evaluación docente ya no será necesario que el estudiante ingrese su cédula de Identidad y

su código, ahora deberá ingresar el usuario de su cuenta creada y su clave, con esta mismo

usuario tendrá acceso al correo electrónico y al Internet inalámbrico.

79

Capítulo V

Pruebas, instalación e implementación

80

81

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

5. Pruebas, instalación e implementación.

5.1 Pruebas.

Luego de desarrollado el sistema de autenticación automática para los estudiantes de la

Universidad   del   Azuay,   se   realizaron   varias   pruebas   para   verificar   el   correcto

funcionamiento así como para poder reconocer los errores que se presenten para realizar

los correctivos indicados.

• Al momento de realizar las pruebas con usuarios nuevos   de pregrado surgieron

inconvenientes al momento de que el estudiante ingresaba sus datos para que el

sistema valide que es un estudiante de la Universidad del Azuay, principalmente

surgieron problemas con Colegio al que pertenecía el estudiante y con el número

de teléfono registrado por el estudiante.

El sistema se conectaba con el sistema académico de la Universidad del Azuay

para poder presentar  una lista de todos los colegios registrados, el inconveniente

se dio porque esta lista de colegios registrada no se encontraba depurada y existían

varios errores. 

La matricula de cada estudiante es diferenciada, relacionada directamente con el

colegio al que el estudiante pertenecía, por tanto tratar   de depurar la   lista de

colegios involucraría un proceso largo y tedioso para el centro de computo de la

Universidad del Azuay.

Todos los datos que el estudiante debe ingresar, en el sistema para que se valide

que es   estudiante  de   la  Universidad  del  Azuay,   son  obligatorios,  por   tanto  el

inconveniente   con   el   teléfono   se   dio   porque   existe   estudiantes   que   no   tienen

ningún   teléfono   registrado   en   las   bases   de   datos   del   sistema   académico

principalmente porque son estudiantes de otras provincias del país.

82

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Luego de analizar los percances provocados por el colegio al que pertenecía el

estudiante   y   su   número   de   teléfono   se   decidió   eliminar   estos   campos   del

formulario del sistema que valida que sean estudiantes  activos de la Universidad

del Azuay.

• Al realizar las pruebas, se notó que los alumnos por equivocación al momento de

ingresar su código de estudiante podrían ingresar caracteres no numéricos como

letras, produciendo un error al realizar la consulta con el sistema académico para

verificar si existe un estudiante con ese código, ya que el campo que almacena el

código del estudiante en las bases de datos del sistema académico es numérico.

Para poder corregir posibles errores de este  tipo se procedió  a verificar que el

código ingresado por el estudiante sea numérico antes de  realizar la consulta con

las bases de datos del sistema académico.

• Los estudiantes de postgrado al momento de crearse una nueva cuenta para utilizar

los  servicios  Web que mantiene  la  Universidad  del  Azuay pueden  ingresar   su

propio usuario, en las pruebas realizadas los estudiantes ingresaron el usuario con

letras en mayúsculas y minúsculas produciendo errores posteriores al momento de

ingresar   a   cualquier   servicio,   por   tanto   se   validó   que   el   sistema   convierta   a

minúsculas el usuario ingresado por el estudiante con el fin de evitar problemas

futuros con el ingreso a los servicios Web.

• El sistema académico almacena los nombres y apellidos de los estudiantes solo

con mayúsculas, por tanto los nombres y apellidos ingresados, en el formulario

para  verificar  que  un  alumno  sea    un  estudiante   activo  de   la  Universidad  del

Azuay, son convertidos a mayúsculas para que al momento de comparar los datos

ingresados con los datos almacenados puedan coincidir.

• Luego de realizar varias pruebas se detectó que el código verificador de seguridad

generado por   el   sistema,  que  debe   ingresar   el   estudiante   cada  vez  que  quiere

crearse una nueva cuenta, cambiar su clave o agregar servicios Web, se guardaba

83

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

en   la   memoria   cache   del   Browser,   creando   problemas   porque   ya   que   no   se

generaba uno nuevo al ingresar en estas aplicaciones,  sino presentaba el guardado

en el cache del Browser

Para solucionar este problema se agregó las siguientes líneas en la cabecera   de las

aplicaciones donde debe generarse el código verificador:

<meta http­equiv= “Pragma” content=”no­cache”>

<meta http­equiv= “expires” content=”­1”>

R 5.1. Cabecera de las aplicaciones en PHP que generan el código verificador

5.2. Instalación.

• Para la implementación del sistema de autenticación automática de los servicios

Web, previamente se debe instalar el servidor Radius en el servidor en el que están

implementados los servicios Web de la Universidad del Azuay (Véase capitulo II

Implementación del servidor Radius para el manejo de las cuentas del servidor de

correo electrónico de la Universidad del Azuay).

• Además   se   realizaron   los   campos   necesarios   en   la   base   de   datos   de   MySql

utilizada   para   gestionar   los   usuarios   del   servidor   Nocat   para   el   Internet

inalámbrico para que pueda funcionar con el sistema de autenticación automática.

• Se instaló, también,  la herramienta Zend Core para Oracle en el servidor en donde

se encuentran implementados los servicios Web, para poder realizar la conexión a

las bases de datos del sistema académico de la Universidad del Azuay (Véase Anexo

1  Herramientas  utilizadas  para  la  creación del  sistema de  autenticación automático para  los

servicios Web para los estudiantes de la Universidad del Azuay).

84

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

• A continuación se copiaron todos los archivos sistema de autenticación automático

para   los   servicios  Web  de   los   estudiantes  de   la  Universidad  del  Azuay  en  el

servidor en el que se encuentran implementados los servicios Web.

• Para finalizar  la  instalación del sistema se realizó   la migración de los usuarios

existentes de las cuentas del correo electrónico de la Universidad del Azuay, a la

base de datos que almacenará los nuevos usuarios creados por el sistema.

5.2.1. Migración de usuarios existentes a la base de datos.

El sistema desarrollado gestionará   los usuarios,  para  los  servicios Web existentes que

brinda la Universidad del Azuay, mediante una base de datos. Actualmente las cuentas de

los   usuarios   de   correo   electrónico   no   son   almacenadas   en   una   base   de   datos,   la

información de los usuarios es almacenada en los archivos /etc/passwd y /etc/shadow del

sistema operativo Linux del servidor donde están implementados los servicios Web de la

Universidad del Azuay, estos archivos guardan varios datos de los usuarios existentes,

entre   estos   datos   están   el   usuario,   el   nombre   de   usuario,   su   clave,   el   grupo   al   que

pertenece, etc. Para cada usuario existe una línea dentro de cada archivo y los datos se

encuentran delimitados por dos puntos.

Para la migración de esto usuarios existentes a la base de datos se creo un archivo de

texto, con la ayuda de Microsoft Excel 2003, que tendría la información necesario de cada

usuario de ambos archivos del sistema operativo Linux, los campos necesarios fueron, el

usuario, el nombre del usuario y su clave.

Una vez que obtuvimos el archivo de texto con los usuarios del correo electrónico, se

desarrollo una aplicación que leyera cada línea de este archivo e inserte en la base de

datos que gestionará   los usuarios del  sistema para los servicios  Web que mantiene la

Universidad del Azuay:

85

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

$file = fopen ("completo.txt", "r");

                 if (!$file) {

                   echo "<p>Unable to open remote file.\n";

                   exit;

                 }

while (!feof ($file)) 

{

  $line = fgets ($file, 1024);

  $vector = split (":",$line);

  $espacios=trim($vector[0]);

  $clave_nueva=trim($vector[1]);

  $nombre=trim($vector[2]);

   $sql="insert   into   member   (login,pass2,name,id,attribute,op)   values

('$espacios','$clave_nueva','$nombre',1,\"Password\",\"==\");";

  $resulta=mysql_query($sql,$conexion);

   $sql="insert   into   network   (login,network,wireless,mail,otros)   values

('$espacios',\"alumnos\",\"NO\",\"YES\",\"YES\");";

  $resulta=mysql_query($sql,$conexion);

}

R 5.2. Aplicación para la migración de  los usuarios existentes a la base de datos

5.3.  Implementación del Sistema.

86

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

El servidor Nocat que gestiona los usuarios del Internet inalámbrico esta implementado en

un servidor diferente al que se encuentran almacenados los demás servicios Web, por

tanto se modificó la conexión en el servidor Nocat para que pueda conectarse a la misma

base de datos  a  la  que se conectan  los demás  servicios,  este  cambio se realizó  en el

archivo /usr/local/nocat/nocat.conf, la conexión a la base de datos de MySql se quedo de

la siguiente forma:

Database dbi:mysql:database=nocat;host=192.168.37.5

DB_User usuario_nocat

DB_Passwd clave_usuario_nocat

R 5.3. Modificación de la conexión a la base de datos del servidor Nocat

5.3.1. Implementación del sistema en el servidor del Internet inalámbrico.

Para poder implementar el sistema de autenticación automática en el servidor que gestiona

los usuarios del Internet inalámbrico se debe instalar previamente la herramienta Zend

Core para Oracle que permite la conexión con el sistema académico de la Universidad del

Azuay (Véase Anexo 1 Herramientas utilizadas para la creación del sistema de autenticación automático

para los Servicios Web para los estudiantes de la Universidad del Azuay).

El sistema de autenticación automática gestiona los usuarios y almacena la clave de cada

usuario en dos campos diferentes, el primer campo es la clave del usuario encriptada con

el método Crypt utilizado para encriptar las claves de los usuarios del sistema operativo

Linux, sistema que almacenaba las cuentas de correo electrónico, el segundo campo es la

clave del usuario encriptada con el método Md5 utilizado para encriptar las claves de los

usuarios en el servidor Nocat que gestiona los usuarios del Internet inalámbrico.

87

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Para que pueda lograr una consistencia en la base de datos con los usuarios migrados, se

decidió cancelar todas las cuentas de Internet inalámbrico y mantener todas las cuentas de

correo electrónico, esta decisión se tomo para que los usuarios de correo electrónico ya

existentes   luego   de   la   implementación   del   sistema   puedan   ingresar   a   sus   cuentas

normalmente.

Por tanto un usuario que desea tener acceso al servicio Web del Internet inalámbrico y

tiene una cuenta de correo electrónico únicamente deberá agregar el servicio de Internet

inalámbrico   a   su   cuenta   o   desde   el   servicio   actualizar   clave   que   estará   disponible

únicamente en el sistema implementado en el servidor de Internet inalámbrico. 

Para comodidad de los usuarios del servicio de Internet inalámbrico se implementó las

opciones,   del   sistema   de   autenticación   automática   en   el   Servidor   que   mantiene   este

servicio,  de creación de cuentas para estudiantes de pregrado como de postgrado y la

opción de activación de cuentas 

Figura 5.1. Sistema implementado en el servidor del Internet inalámbrico

88

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

5.3.1.1. Creación  cuenta.

Luego de la implementación del sistema los únicos usuarios existentes en el sistema serán

los usuarios que hayan tenido cuenta de correo electrónico, por tanto si un usuario desea

tener acceso al servicio de Internet inalámbrico y no posee cuenta de correo electrónico

deberá crearse una nueva cuenta.

El estudiante al  crearse una nueva cuenta podrá  únicamente seleccionar dentro de los

servicios Web que desea el Internet inalámbrico:

Figura 5.2. Ingreso de nueva cuenta del sistema implementado en el servidor del Internet inalámbrico

El sistema implementado en el servidor del Internet inalámbrico tiene únicamente esta

opción   al   momento   de   seleccionar   los   servicios   Web   porque   el   usuario   se   guardará

únicamente en la base de datos y no se ingresará como usuario de sistema operativo en el

89

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

servidor   ya   que   crearía   una   inconsistencia   de   usuarios   entre   el   servidor   Internet

inalámbrico y el servidor que almacena los demás servicios Web.

5.3.1.2.  Actualizar clave.

Si un usuario desea tener acceso al servicio de Internet inalámbrico y posee una cuenta de

correo electrónico de la Universidad del Azuay lo único que debe hacer es   seleccionar

actualizar   clave   de   la   pantalla   principal   para   luego   ingresar   su   usuario   de   correo

electrónico y su clave en la siguiente pantalla:

Figura 5.3. Actualización de clave de una cuenta para el uso del Internet inalámbrico

5.4. Conclusiones.

Se realizaron varias pruebas para detectar posibles errores y poderlos corregir a tiempo, se

instaló   y   configuró   todas   las   herramientas   necesarias   previa     la   implementación   del

sistema, se migraron los usuarios existentes del correo electrónico, los mismos serán los

únicos usuarios que no deben crearse una nueva cuenta para acceder a los servicios Web

90

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

de   la   Universidad   del   Azuay,   ya   que   todas   las   cuentas   existentes   para   el   Internet

inalámbrico fueron canceladas, además se implementó el sistema, con opciones limitadas,

en el servidor de del Internet inalámbrico para que los usuarios que utilizan este servicio

puedan crearse una nueva cuenta o en el caso de tener correo electrónico actualizar su

clave para tener acceso a este servicio.

91

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

 

Capítulo VI

Conclusiones y Recomendaciones.

92

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

6. Conclusiones y recomendaciones.

6.1. Conclusiones.

• Con la implementación del sistema, de autenticación automático para los servicios

Web, se brinda un gran beneficio a todos los estudiantes de la Universidad del

Azuay   quienes   ya   no   tendrán   la   necesidad   de   acercarse   a   los   predios   de   la

Universidad en horarios definidos para poder crearse una cuenta para poder tener

acceso a los servicios Web que se mantiene en línea.

• A inicios de cada ciclo, en el departamento de Redes Internas de la Universidad

del Azuay, era muy común la aglomeración de estudiantes tratando de  crearse una

cuenta de correo electrónico o una cuenta para el Internet inalámbrico, ahora con

la implementación del sistema de autenticación automático para los servicios Web,

los estudiantes desde la comodidad de su hogar o desde cualquier parte del mundo

podrán crearse  su cuenta  para   tener  acceso  a   los  servicios  Web que brinda   la

Universidad del Azuay a sus estudiantes.

• Los estudiantes de la Universidad del Azuay, que se hayan retirado temporalmente

de sus estudios, o que hayan egresado y se encuentran realizando su tesis tendrán

también derecho a utilizar  los  servicios  Web,  ya que el  sistema implementado

verifica la fecha de la última vez que el estudiante realizó  la prematricula y le

suma un periodo de un año.

• Anteriormente   las   cuentas   creadas  por   los   estudiantes   se   cancelaban   luego  de

finalizado el ciclo, con la implementación del sistema de autenticación automático

las cuentas creadas por los estudiantes ya no caducaran.

• Los lenguajes de programación PHP y Perl permiten interconectarse a la base de

datos   de   MySql   con   gran   facilidad,   permitiendo   así   el   desarrollo   más   ágil   y

sencillo de cualquier aplicación Web con manejo de base de datos.

93

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

• El   lenguaje   de   programación   Perl   posee   comandos   muy   útiles   para   la

interconexión   con   el   sistema   operativo   Linux,   permitiéndole   al   sistema

implementado la creación de usuarios, así  como su modificación y eliminación

dentro de Linux.

6.2. Recomendaciones.

• Es recomendable utilizar código verificador generado de forma randómica por el

sistema   en   las   aplicaciones   Web   como   medidad   de   seguridad   además   de   las

credenciales del usuario.

• Se   recomienda   tener   archivos   de   configuración   para   las   aplicaciones   Web

desarroladas en Php y en Perl, donde se almacenaran los parámetros necesarios

para el correcto funcionamiento de un sistema.

• Se  recomienda  a   la  Universidad  del  Azuay  adquirir  un  certificado  digital  que

permita encriptar la información que se transmite a través de los servicios Web.

94

                  

  

                     Anexos

95

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Anexos.

Anexo  1:   Herramientas  utilizadas   para   la   creación  del  sistema   de   autenticaciónautomático para los servicios Web para los estudiantes de la Universidad del Azuay.

1.1. MySql.

MySql es un sistema administrador de bases de datos SQL (Structured Query Language).

Es una implementación cliente­servidor que consta de  un  servidor y diferentes  clientes

(programas/librerías). Podemos agregar, acceder, y procesar datos grabados en una base

de datos. Actualmente el gestor de base de datos juega un rol central en la informática,

como única utilidad, o como parte de otra aplicación.

Es un sistema de gestión de base de datos relacional. El modelo relacional se caracteriza a

muy grandes rasgos por disponer que toda la información debe estar contenida en tablas, y

las relaciones entre datos deben ser representadas explícitamente en esos mismos datos

además es un sistema de gestión de base de datos multiusuario, significa que éste puede

utilizarse por varios usuarios al mismo tiempo. Esto facilita la reducción de tiempo ocioso

en   el   procesador,   e   indirectamente   implica   reducción   de   los   costos   de   energía   y

equipamiento   para   resolver   las   necesidades   de   cómputo   de   los   usuarios.   Esto   añade

velocidad y flexibilidad.

MySql,   es   un   software   de   código   abierto,   esto   quiere   decir   que   es   accesible   para

cualquiera,   para   usarlo   o   modificarlo,   como  software   libre  en   un   esquema   de

licenciamiento dual. Por un lado lo ofrece bajo la GNU GPL   (General Public License o

licencia pública general), pero, empresas que quieran incorporarlo en productos privativos

pueden comprar a la empresa una licencia que les permita ese uso.

96

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

MySql es un gestor de base de datos confiable, de gran velocidad y robusto, que puede

utilizar grandes volúmenes de información, además que esta en continuo desarrollo, su

conectividad con distintas plataformas, su velocidad,  su seguridad  y su gran flexibilidad

la convierten en una de las mas indicadas para manejar datos en Internet

Plataformas soportadas

MySql funciona sobre múltiples plataformas, incluyendo:

AIX,  BSD,  FreeBSD,  HP­UX,  GNU/Linux,  Mac   OS   X,  NetBSD,  Novell   Netware,

OpenBSD,  OS/2  Warp,  QNX,   SGI  IRIX,  Solaris,  SunOS,   SCO   OpenServer,  SCO

UnixWare,  Tru64,  Windows 95,  Windows 98,  Windows NT,  Windows 2000,  Windows

XP, Windows Vista y otras versiones de Windows.

Usuarios destacados

Amazon.com 

Cox   Communications  ­   La   cuarta   televisión   por   cable   más   importante   de

EEUU,   tienen   más   de   3.600   tablas   y   aproximadamente   dos   millones   de

inserciones cada hora. 

Google ­ Para el motor de búsqueda de la aplicación AdWords 

97

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

NASA 

Yahoo! ­ para muchas aplicaciones críticas 

Nokia, usa un cluster MySql para mantener información en tiempo real sobre

usuarios de redes de móviles. 

NetQOS, usa MySql para la gestión de algunas de las redes más grandes del

mundo como las de Chevron, American Express y Boeing.

Wikipedia,   sirve   más   de   200   millones   de   consultas   y   1,2   millones   de

actualizaciones cada día, con picos de 11.000 consultas por segundo.

1.2. PHP.

PHP es un lenguaje de programación usado generalmente para la creación de contenido

para   sitios  Web.  PHP  es   un  acrónimo   recurrente  que   significa   "PHP  Hypertext  Pre­

processor"   (inicialmente PHP Tools,  o,  Personal  Home  Page Tools),  y  se   trata  de un

lenguaje interpretado usado para la creación de aplicaciones para Servidores, o creación

de contenido dinámico para sitios Web. 

El fácil uso y la similitud con los lenguajes más comunes de programación estructurada,

como  C  y  Perl,   permiten   a   la   mayoría   de   los  programadores  experimentados   crear

98

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

aplicaciones complejas con una curva de aprendizaje muy suave. También les permite

involucrarse   con   aplicaciones  de   contenido  dinámico   sin   tener   que   aprender   todo  un

nuevo grupo de funciones y prácticas.

También puede ser usado desde la  línea de órdenes, de la misma manera como  Perl  o

Python pueden hacerlo.

Su interpretación y ejecución se da en el servidor, en el cual se encuentra almacenado el

script, y el  cliente  sólo recibe el resultado de la ejecución. Cuando el cliente hace una

petición al servidor para que le envíe una  página Web, generada por un script PHP, el

servidor ejecuta el intérprete de PHP, el cual procesa el script solicitado que generará el

contenido de manera dinámica, pudiendo modificar el contenido a enviar, y regresa el

resultado al servidor,  el  cual se encarga de regresárselo al  cliente. Además es posible

utilizar PHP para generar archivos PDF, Flash, así como imágenes en diferentes formatos,

entre otras cosas.

Permite la conexión a diferentes tipos de servidores de bases de datos tales como MySQL,

Postgres, Oracle, ODBC, DB2, Microsoft SQL Server, Firebird y SQLite; lo cual permite

la creación de Aplicaciones Web muy robustas.

PHP también tiene la capacidad de ser ejecutado en la mayoría de los sistemas operativos

tales como UNIX (y de ese tipo, como Linux), Windows y Mac OS X, y puede interactuar

con   los  servidores   Web  más   populares   ya   que   existe   en   versión  CGI,   módulo   para

Apache, e ISAPI.

El modelo PHP puede ser visto como una alternativa al sistema de Microsoft que utiliza

ASP.NET/C#/VB.NET, a  ColdFusion  de la compañía  Macromedia, a  JSP/Java  de  Sun

99

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Microsystems, y al famoso CGI/Perl. Aunque su creación y desarrollo se da en el ámbito

de los Sistemas libres, bajo la licencia GNU.

1.3. Funciones MySql en PHP.

Estas funciones le permiten acceder a Servidores de bases de datos MySQL.

mysql_connect()

mysql_connect (“hostname”, “usuario”, “clave”)

Establece una conexión a un servidor MySql. Todos los argumentos son opcionales, y si

no hay, se asumen los valores por defecto ('localhost', usuario propietario del proceso del

Servidor, clave vacía).

Esta función devuelve un identificador de enlace positivo si tiene éxito, o falso si error. 

El hostname puede incluir también un número de puerto. Ej. "hostname:puerto" 

Si se hace una segunda llamada a  mysql_connect()  con los mismos argumentos, no se

abrirá nuevo enlace, en lugar de eso, se regresa el identificador de enlace ya abierto.

mysql_select_db()

mysql_select_db (“base_de_datos”, $conexion)

100

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Establece la base activa que estará asociada con la conexión especificada. 

Si no se específica una conexión, se asume el último enlace abierto. Si no hay ningún

enlace   abierto,   la   función   intentará   establecer   un   enlace   como   si   se   llamara   a

mysql_connect(). 

Devuelve  TRUE  si todo se llevó a cabo correctamente,  FALSE  en caso de fallo. Toda

llamada posterior a mysql_query() utilizará la base activada. 

mysql_query()

mysql_query (“sentencia_sql”, $conexion )

Envía una consulta a la base de datos activa en el Servidor asociado con la conexión dada.

Lista de parámetros

Sentencia sql:

Una consulta SQL 

La consulta no debe terminar con punto y coma. 

Conexión

Un identificador de enlace, como el regresado por mysql_connect(). Si la conexión

no es especificada, se asume el último enlace abierto. Si no se ha abierto enlace, la

función intenta establecer uno tal y como si se hubiera llamado a mysql_connect()

sin argumentos, y lo usará. El resultado de la consulta es puesto en la memoria

intermedia (buffer). 

101

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Valores retornados

Para     SQL,   UPDATE,   DELETE,   DROP,   etc,  mysql_query()  regresa  TRUE  en   caso

exitoso y FALSE en error. 

mysql_query()  también   fallará   y   regresará  FALSE  si   el   usuario  no   tiene  permiso  de

acceder la o las tablas referenciadas por la consulta. 

mysql_num_rows() 

mysql_num_rows($consulta)

Regresa   el   número   de   filas   en   un   resultado.   Este   comando   es   valido   solo   para   las

sentencias SELECT. 

mysql_fetch_array()

mysql_fetch_array ($consulta)

Devuelve una matriz que corresponde a la sentencia extraída, o falso si no quedan más

filas. 

Además de guardar los datos en el índice numérico de la matriz, guarda también los datos

en los índices asociativos, usando el nombre de campo como clave. 

Si   dos  o   más   columnas   del   resultado   tienen   el   mismo   nombre  de   campo,   la  última

columna toma la prioridad. Para acceder a la(s) otra(s) columna(s) con el mismo nombre,

se debe especificar el índice numérico o definir un alias para la columna.

102

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

mysql_affected_rows()

mysql_affected_rows ( $conexion )

Devuelve   el   número   de   filas   afectadas   en   la   última   sentencia   INSERT,   UPDATE   o

DELETE sobre el  servidor asociado con el  identificador de enlace  especificado. Si  el

identificador de enlace no ha sido especificado, se asume por defecto el último enlace.

mysql_close()

mysql_close ($conexion)

Cierra el enlace con la base MySql que esta asociada con la conexión especificada. Si no

se específica la conexión, se asume por defecto el último enlace. 

Devuelve TRUE si todo se llevó a cabo correctamente, FALSE en caso de fallo. 

mysql_free_result

int mysql_free_result (id_resultado )

Esta función solo necesita ser llamada si usa demasiada memoria durante la ejecución de

un   script.   Toda   la   memoria   usada   por   resultado   especificado   en   el   parámetro   del

identificador de resultado será automáticamente liberada. 

Devuelve TRUE si todo se llevó a cabo correctamente, FALSE en caso de fallo. 

103

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

1.4. Perl.

Perl es un lenguaje de propósito general originalmente desarrollado para la manipulación

de  texto  y   que   ahora   es   utilizado   para   un   amplio   rango   de   tareas   incluyendo

administración de sistemas,  desarrollo Web, programación en red, desarrollo de  GUI  y

más. 

Se previó que fuera práctico (facilidad de uso, eficiente, completo) en lugar de hermoso

(pequeño,  elegante,  mínimo).  Sus  principales   características   son  que  es   fácil  de  usar,

soporta tanto la programación estructurada como la programación orientada a objetos y la

programación   funcional,   tiene   incorporado  un  poderoso   sistema  de  procesamiento  de

texto y una enorme colección de módulos disponibles. 

La estructura completa de Perl deriva ampliamente del lenguaje  C. Perl es un  lenguaje

imperativo, con  variables,  expresiones, asignaciones, bloques de código delimitados por

llaves, estructuras de control y subrutinas.

Perl   también   toma   características   de   la   programación  shell.   Todas   las   variables   son

marcadas con un signo precedente. Los signos precedentes identifican inequívocamente

los nombres de las variables, permitiendo a Perl tener una rica sintaxis. Notablemente, los

signos precedentes permiten interpolar variables directamente dentro de las  cadenas de

caracteres (strings). Como en los shell, Perl tiene muchas funciones integradas para tareas

comunes, como y para acceder a los recursos del Sistema.

Todas   las   versiones  de  Perl   hacen   el  tipado  automático  de  datos   y   la  gestión  de   la

memoria. El intérprete conoce el tipo y requerimientos de almacenamiento de cada objeto

en el programa; reserva y libera espacio para ellos según sea necesario. Las conversiones

104

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

legales de tipo se hacen de forma automática en tiempo de ejecución; las conversiones

ilegales son consideradas errores fatales.

1.5. El Módulo DBI.

El  módulo  DBI  nos   facilita  una   interfaz  para  que  podamos  enviar   comandos  SQL a

cualquier Base de Datos.  Escribimos un código Standard que nos sirve para  todas sin

tener que reescribir ni una sola línea.

Métodos de la Clase DBI y Manejadores de Base de Datos

connect 

$dbh = DBI­>connect("DBI:mysql:$database:$hostname:$port",$username, $password);

Se usa el método connect para crear una conexión con la base de datos. 

La variable $data_source debe empezar con  'DBI:nombre_del_driver:'.   Si  el  username

(nombre de usuario) y/o el password están indefinidos, entonces DBI usará los valores de

las variables de entorno DBI_USER, DBI_PASS respectivamente. Si no se especifica un

nombre de host (hostname), se utilizará por defecto "localhost".

prepare 

$sth = $dbh­>prepare($statement); 

105

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Este método prepara una sentencia simple  de SQL para  su ejecución y devuelve una

referencia al manejador de la sentencia ($sth) para usarlo con el objetivo de coger los

atributos de la sentencia cuando se ejecute la sentencias. 

execute 

$sth­>execute; 

Este método ejecuta una sentencia preparada y devuelve TRUE si hay éxito y UNDEF si

ocurre un error. 

Para las sentencias que no son SELECT (UPDATE, INSERT, etc.) el valor de retorno es

el número de tuplas afectadas. Cero tuplas son devueltas como '0E0' que Perl trata como

'0' pero que es tratado como TRUE. 

rows

$sth­>rows; 

Este método devuelve el número de tuplas afectadas por la última sentencia no­Select

ejecutada. 

finish

$sth­>finish; 

Este método es usado cuando no se va a extraer más datos de un manejador de sentencia,

antes de que sea preparado de nuevo o destruido. 

106

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Este método es el más usado para housekeeping interno (liberar recursos como cuando se

bloquea la lectura). 

fetchrow_hashref

$sth­>fetchrow_hashref; 

Método alternativo para extraer tuplas de datos. Este método devuelve una referencia a

una memoria asociativa (hash) conteniendo para cada campo el nombre y el valor. 

Las   claves  de   la  memoria   asociativa   (hash)   son   los  mismos  que   los  nombres  de   los

campos devueltos por el método $sth­>{NAME}. 

disconnect

$dbh­>disconnect; 

Este   método   cierra   la   conexión   entre   la   BD   y   el   manejador   de   la   base   de   datos.

Normalmente se suele usar justo antes de terminar la aplicación. 

1.6. Zend Core para Oracle.

Gracias a la colaboración entre Zend Technologies y Oracle se logró el producto Zend

Core para Oracle, un entorno de PHP certificado, fácil de instalar y pre­integrado con la

base de datos Oracle, que incorpora además un driver OCI8 actualizado para PHP. 

107

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Esta   combinación   permite   desarrollar   aplicaciones   en   PHP   integradas   con   Oracle

rápidamente  de   forma  sencilla,   sin  pasar  por   las   complicadas   instalaciones  de  ambos

entornos y desplegar aplicaciones en una infraestructura robusta, escalable y estable

Algunas ventajas:

El driver OCI(Oracle Call Interface) está certificado por Oracle. Además, se han

añadido características como, por fin, caché de sentencias.

Zend Optimizer incluido.

Documentación   de  PHP(PHP:   Hypertext   Processor)   en   línea,   en   el   mismo

Servidor.

Instalación integrada, en modo texto. Simplemente ejecutando

El entorno incluye integración con Oracle, soporte nativo de XML y Webservices.

Gratuito y con soporte comercial por parte de Zend.

Permite   que   las   colecciones   de   tipos   del   Oracle   Procedural   Language   SQL

(PL/SQL)   sean   accesibles   directamente   desde   PHP,   aumentando   así   su

performance

Requerimientos del Sistema

108

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Sistemas Operativos soportados:

LINUX (RHEL 3 & SLES 9) en x86 y x86­64 

AIX 5.2, 5.3 en pSeries 

Solaris 10 en Sparc 

Windows XP Professional / 2000 Server / 2003 Server 

Navegadores soportados:

Microsoft Internet Explorer 5.5 y superior

Netscape 7 y superior

Mozilla 1.7 y superior

FireFox

Bases de Datos soportadas:

Base de datos Oracle 10g, 9i, XE

Servidores Web Soportados:

109

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Apache 1.3.x, 2.0.x

Oracle HTTP Server 10.1.2.0.0 (Linux/Windows x86)

Microsoft IIS 5, 6

Oci8

Estas funciones le permiten acceder a bases de datos Oracle 10, Oracle 9, Oracle 8 y

Oracle 7 usando la Interfaz de Llamados Oracle (OCI por sus siglas en Inglés).  Ellas

soportan   la   vinculación   de   variables   PHP   a   recipientes   Es   necesario   contar   con   las

bibliotecas de cliente Oracle para usar esta extensión.

1.7. Funciones de Oracle.

Introducción

Estas funciones le permiten acceder a bases de datos Oracle 10, Oracle 9, Oracle 8 y

Oracle 7 usando la Interfaz de Llamados Oracle (OCI por sus siglas en Inglés).  Ellas

soportan la vinculación de variables PHP a recipientes Oracle, tienen soporte completo

LOB,  FILE y  ROWID,  y   le   permiten  usar  variables   de  definición   entregadas  por   el

usuario. 

110

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

oci_connect()

oci_connect (string username, string password, string hostname:port/db )

Establece una conexión con el servidor Oracle.

Retorna un identificador de conexión necesario para la mayoría de llamados a la base de

datos y retorna FALSE en caso de producirse un error en la conexión.

oci_error()

oci_error ( [identificador] )

Retorna el último error encontrado.

En caso de no encontrar ningún error retorna FALSE.

Las función oci_connect() no necesita enviar el identificador como parámetro las demás

funciones si.

Cuando retorna un error retorna el código del error encontrado y el mensaje del error en

un arreglo de tipo asociativo.

oci_parse()

oci_parse (identificador de conexión, string query )

Prepara   la   consulta  o   la   llamada   para   la  base  de  datos,   retorna  FALSE en  caso  de

producirse algún error.

Esta función no verifica si la consulta o la llamada a la base de datos esta correcta, la

única forma de lograr esto es ejecutando la consulta.

oci_execute

oci_execute (llamada_base_de_datos [modo_de_ejecución])

111

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Esta función ejecuta una consulta o llamada  a la base de datos analizada previamente.

El modo de ejecución es opcional, el modo de ejecución por defecto realiza un commit

automáticamente   (OCI_COMMIT_ON_SUCCESS),   si  no  queremos  que   se   realice  un

Commit automáticamente especificamos el modo de ejecución como OCI_DEFAULT.

oci_fetch_all

oci_fetch_all (llamada_base_de_datos)

Saca todas las filas de datos, como resultado de una consulta a la base de datos y retorna

el   numero  de   filas   afectadas  por   la   consulta   en   caso  de  producirse   un   error   retorna

FALSE.

oci_fetch_array

oci_fetch_array (llamada_base_de_datos)

Retorna la fila siguiente de un arreglo de datos del resultado de una consulta a la base de

datos, en caso de producirse un error o de no encontrar mas filas en el arreglo de datos

retorna FALSE

oci_close

oci_close (identificador de conexión)

Esta función cierra correctamente la conexión al Servidor Oracle.

Devuelve TRUE si todo se llevó a cabo correctamente, FALSE en caso de fallo. 

1.8. Instalación de Zend Core para Oracle en Linux.

Para instalar Zend Core

Ingresar al sistema como usuario administrador.

112

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Copiar     ZendCoreForOracle­v1.3.1­Linux­x86.tar.gz     a     /tmp,   luego   cambiarse   al

directorio /tmp:

cp ZendCoreForOracle­v1.3.1­Linux­x86.tar.gz /tmp

cd /tmp

Extraer los contenidos del archivo bajado Zend Core para Oracle:

tar ­zxf ZendCoreForOracle­v1.3.1­Linux­x86.tar.gz

Los   archivos   son   extraídos   en   un   subdirectorio   llamado   ZendCoreForOracle­v1.3.1­

Linux­x86.

Cambiarse al  directorio ZendCoreForOracle­v1.3.1­Linux­x8 e  iniciar  la   instalación:  ./

install

En la página inicial para la instalación de Zend Core para Oracle, hacer clic en OK.

Figura A1.1. Pagina inicial del instalador del Zend Core para Oracle

113

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Cuando se presente la primera pantalla de los términos y condiciones  de la licencia del

Software, hacer clic en next.

Figura A1.2.  Primera pagina del acuerdo de licencia del Zend Core para Oracle 

En la pantalla para aceptar los términos de la licencia, hacer clic en Yes.

114

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A1.3.  Segunda pagina del acuerdo de licencia del Zend Core para Oracle 

Si   ya   tiene   un   versión   existente   instalada   de   PHP,   se   realizará   un   respaldo   y   se

sobrescribirá el archivo php.ini ya existente, hacer clic en Yes.

Figura A1.4.  Modificación del archivo /etc/php.ini

115

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Cuando aparece la pantalla con la ubicación para la instalación del Zend Core para Oracle,

aceptar la ubicación por defecto y hacer clic en ok.

Figura A1.5.  Locación para la instalación del Zend Core para Oracle

El instalador comienza a extraer los archivos requeridos para la instalación

116

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A1.6.  Proceso de instalación

Cuando  la  extracción de archivos   termine,  se  presentará   la  pantalla  para  ingresar  una

contraseña que servirá para poder acceder a la consola de Zend Core, luego de ingresar la

contraseña hacer clic en ok.

Figura A1.7.  Ingreso de una clave para el administrador del Zend Core para Oracle

117

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Luego se pedirá la verificación del password ingresado, ingresamos la misma contraseña

del paso anterior y hacemos clic en ok.

Figura A1.8. Ingreso de la confirmación de la clave para el administrador del Zend Core para Oracle

En la pagina de soporte de Zend Core se puede ingresar el   Zend network user ID y la

contraseña   para   habilitar   que   la   Consola   del   Zend   Core   busque   actualizaciones   de

componentes  disponibles de Zend Core y PHP. Este es un paso opcional por tanto si no

esta registrado o no esta interesado en actualizaciones hacer clic en No.

118

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A1.9.  Suscripción para soporte de Zend Core

El  siguiente  paso  es   seleccionar  el   servidor  Web que utilizará   el  Zend Core,   en  una

pantalla inicial nos pregunta si deseamos que el Zend Core instale y configure su propio

servidor   Apache,   si   presionamos   Yes   y   tenemos   instalado   previamente   el   servidor

Apache,   se   creara   otro   servidor   Apache   con  diferentes   configuraciones,   por   lo   tanto

debemos hacer clic en No.

119

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A 1.10.  Instalación y configuración de un nuevo servidor Apache

Al presionar NO, el instalador reconoce el servidores instalados y nos permite seleccionar

el que deseamos, debemos escoger la primera opción, el servidor Apache y hacer clic en

ok.

120

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A 1.11 Selección del servidor Apache para la configuración del Zend Core para Oracle

El instalador  nos confirma que hayamos seleccionado bien el servidor Web para el Zend

Core, si todo esta correcto hacer clic en Yes

Figura A1.12. Confirmación del servidor Apache seleccionado

En la siguiente página de instalación debemos escoger el método de instalación para el

servidor seleccionado, en este caso el Apache, seleccionamos como método al Módulo del

Apache y presionamos ok

121

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A 1.13.  Selección del método de instalación para el servidor Apache

En la siguiente página de instalación debemos seleccionar el servidor virtual para el Zend

Core GUI, seleccionamos main server y debemos hacer clic en ok.

Figura A 1.14. Selección de un servidor virtual para el Zend Core para Oracle

122

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

En el   siguiente paso   el instalador nos pregunta si deseamos reiniciar el servidor Web

para lo que hacemos clic en Yes

Figura A 1.15. Reinicio del Servidor Apache

La siguiente página del instalador se nos presenta una notificación de que el apachectl

script ha sido actualizado, hacer clic en ok.

123

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A1.16. Información de la actualización del servidor Apache

La siguiente pagina de instalación nos presenta un comando útil para la configuración, la

pagina Web para la administración del motor del Zend Core y una lista de archivos que

han sido modificados, luego de tomar nota de esta información importante debemos hacer

clic en next.

124

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A 1.17.  Lista de archivos modificados

Una   página   final   de   confirmación   es   presentada,   presionamos   ok   para   finalizar   la

instalación.

Figura A 1.18.  Confirmación de instalación del Zend Core para Oracle

La instalación del Zend Core para Oracle esta completa.

1.9. Configuración del Zend Core para Oracle.

En esta sección se configurara las directivas de control   para reportar los errores en las

páginas Web.

Ingresar   el   siguiente   URL   en   el   navegador   Web   para   acceder   a   la   página   de

administración del Zend Core: http://127.0.0.1/ZendCore

125

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Ingrese   la  contraseña  GUI que  ingresamos  durante   la   instalación del  Zend Core  para

Oracle:

Figura A 1.19. Ingreso de clave del administrador para consola del Zend Core para Oracle

Luego presionamos el icono de login:

Figura A 1.20.  Icono de login

Presionamos la pestaña de configuración para desplegar las opciones de configuración:

126

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A 1.21. Panel de configuraciones del Zend Core para Oracle

Presionamos  en   le   icono para  desplegar   las  configuración  de   los  Error  Handling  and

Logging.

Figura A 1.22.  Configuración para manejar los  errores de las aplicaciones de PHP

127

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Seleccionamos el valor de On  de la directiva Display Errors para mostrar los errores en

las páginas Web donde se presenten durante el desarrollo.

Figura A 1.23. Configuración para mostrar los errores en pantalla de las aplicaciones de PHP

 

Luego de que realicemos un cambio en la configuración se presentara un mensaje sobre la

cabecera de la página indicándonos que los cambios no han sido guardados, para lo que

guardamos los cambios pulsando Save Settings:

128

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A 1.24.  Guardar los cambios de configuración

Luego   de   guardar   la   configuración   se   nos   presentara   un   mensaje   indicándonos   que

debemos reiniciar el servidor Web para lo cual presionamos restart server.

Figura A 1.25. Reiniciar servidor Apache

129

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

La configuración  del Zend Core esta lista.

130

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Anexo 2: Authen Radius

Este  módulo  provee  una   simple   conexión  que  permite   enviar   y   recibir,   peticiones  y

respuestas a o desde un  servidor Radius.

2.1. Instalación del Módulo de Perl Authen::Radius

Para poder instalar el módulo Authen::Radius, como requisito previo, debemos instalar el

módulo de Perl Data::HexDump.

Debemos   ingresar   en   el   Webmin   como   usuario   administrador,   en   le   menú   principal

seleccionamos la opción otros .

Luego seleccionamos: módulos de Perl CPAN(Comprehensive Perl Archive Network) 

El Webmin nos mostrara una lista de todos los módulos de perl instalados en el sistema y

al final de la página existe una sección donde podemos buscar un módulo de perl para

instalar en nuestro caso seleccionamos la opción: invocar desde Cpan

Colocamos en la entrada de texto a continuación el nombre del módulo  Data::HexDump.

Luego presionamos el botón instalar.

131

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A 2.1. Búsqueda del módulo Data::HexDump

El  Webmin entonces  buscara  el  módulo,  para   la   correcta   instalación  de  este  módulo

debemos seleccionar en instalar acción: construir e instalar.

Para finalizar presionamos el botón continuar con la instalación.

Figura A 2.2.  Instalación del módulo Data::HexDump

El  Webmin   se   encargara  de   compilar   e   instalar   el  módulo,   al   final   obtendremos  un

mensaje de que la instalación del módulo Data::HexDump se ha realizado con éxito.

132

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Para instalar el siguiente módulo necesario debemos dar un clic en el link, al final de la

pantalla:  

Regresar a lista de módulos.

Figura A 2.3. Confirmación de la instalación del módulo Data::HexDump

Una vez que se nos presente nuevamente la lista de los módulos instalados en el sistema,

al final de la pantalla, como en el módulo anterior, en la entrada de texto de la opción

invocado desde CPAN, ingresamos Authen::Radius y presionamos el botón instalar.

133

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A 2.4.  Instalación del módulo Authen::Radius

A diferencia de el módulo anterior, seleccionaremos esta vez en la opción instalar acción:

construir, verificar e instalar, luego presionamos el botón continuar con la instalación.

Figura A 2.5. Configuración de instalación del módulo Authen::Radius

Una   vez   que   el   Webmin   haya   finalizado   la   instalación   nos   presentara   un   mensaje

indicándonos que la instalación ha sido exitosa

134

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Figura A 2.6. Confirmación de instalación del módulo Authen::Radius

2.2.Métodos del Authen Radius.

new ( Host => HOSTNAME:PORT, Secret => SECRET)

Este método sirve para crear una conexión con el Servidor Radius

El nombre del Host y el Secret son los especificados en el archivo /etc/clients, donde se

guardan   los   dispositivos  permitidos  para   hacer   las   peticiones  y   consultas   al   servidor

Radius

Si no se especifica el puerto en el nombre del Host se utilizara entonces el puerto para el

servidor Radius del archivo  /etc/services. 

check_pwd ( USERNAME, PASSWORD )

135

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Este método verifica con el servidor Radius que la Contraseña especificada es valida para

el usuario ingresado, este método funciona en conjunto con los métodos  add_attributes,

send_packet y recv_packet.

add_attributes ( { Name => NAME, Value => VALUE  }, ... )

Este método agrega uno o más atributos a un objeto 

send_packet ( REQUEST_TYPE )

Este  envía al servidor un tipo de petición, los tipos de petición que se pueden realizar al

servidor Radius son los siguientes: 

• ACCESS_REQUEST

• ACCESS_ACCEPT

• ACCESS_REJECT

• ACCOUNTING_REQUEST

• ACCOUNTING_RESPONSE

recv_packet

Este método recibe un paquete de respuesta del servidor Radius

clear_attributes

Borra todos los atributos de un objeto

136

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Anexo 3:  Diagramas de  flujo  de  datos  del   sistema  de autenticación automático para  los   servicios  Web para  los  estudiantes  de   laUniversidad del Azuay

3.1. Ingreso de nueva cuenta

115

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

3.2. Cambio de clave de una cuenta

116

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

3.3. Agregar servicios Web a una cuenta

117

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

                   Bibliografía

118

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Bibliografía

Jonathan Hasell, Radius, O’Reilly, Estados Unidos de América, Primera edición

2002

Luke   Welling,     Laura   Thomson,   Desarrollo   Web   con   Php   y   MySql,   Anaya

Multimedia, Madrid España, Segunda edición, 2003

Ed   Tittel,   Chelsea   Valentine,   Lucinda   Dykes,   Mary   Bumeister,   Mastering

XHTML,   Sybex,   San   Francisco,   Estados   Unidos   de   América,   2001   Primera

edición.

       Páginas de Internet Consultadas   

Php group, funciones de php, [citado 2007­01­08], Disponible  en World Wide

Web: http://www.php.net/manual/en/index.php

Mysql AB, funciones de Mysql,  [citado 2006­10­15],  Disponible en World

Wide Web: http://dev.mysql.com/doc/

Perl En Español, funciones de Perl [citado 2006­9­20], Disponible en World

Wide Web: http://perlenespanol.baboonsoftware.com/tutoriales/

Zend,   Descarga,   instalación   y   configuración   del   Zend   Core   para   Oracle,

[citado   2007­1­15],   Disponible   en   World   Wide   Web:

http://www.zend.com/products/zend_core/zend_core_for_oracle

ajpdsoft, Comandos de Linux, [citado 2006­5­10], Disponible en World Wide

Web:

http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=155

Wikipedia,   conceptos   utilizados,   [citado   2007­2­11],   Disponible   en   World

Wide Web: http://es.wikipedia.org/wiki/Portada

119

                   Glosario

120

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Glosario de Términos

ADSL

(Asymmetric Digital Subscriber Line)

 Consiste en una línea digital de alta velocidad, apoyada en el par simétrico de cobre

que lleva la línea telefónica convencional o línea de abonado.

Es una tecnología de acceso a Internet de banda ancha, lo que implica capacidad para

transmitir más datos, lo que, a su vez, se traduce en mayor velocidad

Cable MODEM

Un  cable módem  es un tipo especial de  módem  diseñado para modular la señal de

datos sobre una infraestructura de televisión por cable. El término Internet por cable

(o simplemente cable) se refiere a la distribución de un servicio de conectividad a

Internet sobre esta infraestructura de telecomunicaciones

Chap 

(Challenge Handshake Authenticacition Protocol).

Es   un   método   de   autenticación   remota   o   inalámbrica.   Diversos   proveedores   de

servicios emplean CHAP. CHAP autentifica a un usuario frente a un ISP

Crypt

Encripta una cadena mediante un algoritmo no reversible (hash). Encripta utilizando

el método estándar de encriptación del Unix: DES. Los argumentos son una cadena a

encriptar y una cadena semilla de 2 caracteres en la que basar la encriptación.

121

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Dirección Ip 

Una  dirección IP  es un número que identifica de manera lógica y jerárquica a una

interfaz  de un dispositivo (habitualmente una computadora) dentro de una  red  que

utilice el protocolo IP (Internet Protocol), que corresponde al nivel de red o nivel 3 del

modelo de referencia OSI. Dicho número no se ha de confundir con la dirección MAC

que es un número hexadecimal fijo que es asignado a la tarjeta o dispositivo de red

por el fabricante, mientras que la dirección IP se puede cambiar.

Dsl

(Digital Subscriber Line) 

Es un término utilizado para referirse de forma global a  todas las tecnologías que

proveen una conexión digital sobre línea de abonado de la red telefónica local.

Eap 

(Extensible Authentication Protocol) 

PPP utiliza como Método de autenticación "usuario" y "clave".Actualmente existe la

necesidad de ampliar dicho método a otros, que resulten más seguros o cómodos para

el   usuario.   EAP   sirve   como   soporte   a   protocolos   propietarios   de   autenticación,

gestiona las contraseñas en mecanismos de desafío­respuesta y es capaz de trabajar

con tecnología de clave pública.

Ethernet

122

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Es el  nombre  de  una   tecnología  de  redes  de  computadoras  de  área   local  (LANs)

basada en  tramas de datos. El nombre viene del concepto físico de  ether. Ethernet

define las características de cableado y señalización de nivel físico y los formatos de

trama del nivel de enlace de datos del modelo OSI.

GNU GPL

(General Public License) 

Es una licencia creada por la Free Software Foundation a mediados de los 80, y está

orientada   principalmente   a   proteger   la   libre   distribución,   modificación   y   uso   de

software.   Su   propósito   es   declarar   que   el   software   cubierto   por   esta   licencia   es

software libre y protegerlo de intentos de apropiación que restrinjan esas libertades a

los usuarios.

Existen varias licencias "hermanas" de la GPL, como la  licencia de documentación

libre GNU (GFDL) que cubre los artículos de la Wikipedia, la Open Audio License,

para  trabajos  musicales,  etcétera,  y  otras  menos restrictivas,  como la  MGPL, o la

LGPL  (Lesser   General   Public   License  o  Library   General   Public   License),   que

permiten el enlace dinámico de aplicaciones libres a aplicaciones no libres.

Inalámbrico­Wireless

tipo de comunicación en la que no se utiliza un medio de propagación físico, sino se

utiliza   la  modulación  de  ondas   electromagnéticas,   las   cuales   se   propagan   por   el

123

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

espacio   sin   un   medio   físico   que   comunique   cada   uno   de   los   extremos   de   la

transmisión.

Internet

Internet es una red mundial de computadoras con un conjunto de protocolos, el más

destacado, el  TCP/IP. Aparece por primera vez en 1969, cuando ARPAnet establece

su primera conexión entre tres universidades en California y una en Utah. También se

usa   el   término   Internet   como   sustantivo   común   y   por   tanto   en   minúsculas   para

designar   a   cualquier   red   de   redes   que   use   las   mismas   tecnologías   que   Internet,

independientemente de su extensión o de que sea pública o privada.

Cuando se  dice  red de redes  se  hace referencia a  que es una red formada por  la

interconexión de otras redes menores.

ISP

(Internet Service Provider)

Un proveedor de servicios de Internet es una empresa dedicada a conectar a Internet a

los usuarios o las distintas  redes que tengan, y dar el mantenimiento necesario para

que el acceso funcione correctamente

Ldap

(Lightweight Directory Access Protocol) 

Es un protocolo a nivel de aplicación que permite el acceso a un servicio de directorio

ordenado y distribuido para buscar diversa información en un entorno de red. LDAP

124

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

puede considerarse una base de datos  (aunque su Sistema de almacenamiento puede

ser diferente) al que pueden realizarse consultas.

Habitualmente, almacena la información de login (usuario y contraseña) y es utilizado

para autenticarse aunque es posible almacenar otra información (datos de contacto del

usuario, ubicación de diversos recursos de la red, permisos, certificados...).

MD5 

(Message­Digest Algorithm 5) 

Es   un  algoritmo  de   reducción   criptográfico   de   128  bits  ampliamente   usado.   En

sistemas UNIX y GNU/Linux se utiliza el algoritmo MD5 para cifrar las claves de los

usuarios.

MODEM

Acrónimo de  las  palabras  modulador/demodulador.  El  módem actúa  como  equipo

terminal   del   circuito   de   datos,   permitiendo   la   transmisión   de   un   flujo   de   datos

digitales a través de una señal analógica.

NAS

(Network Attached Storage) 

Es  el  nombre  dado a  una   tecnología  de  almacenamiento  dedicada  a   compartir   la

capacidad de almacenamiento de un computador  (Servidor) con  PCs  o  Servidores

clientes   a   través  de  una   red   (normalmente  TCP/IP),  haciendo  uso  de  un  Sistema

Operativo optimizado para dar acceso con los protocolos FTP o TFTP.

125

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

Nocat

Es un software que permite autenticar el acceso a una red

vía un portal cautivo, el cual se utiliza para controlar los accesos a una red

del tipo 802.11. Está compuesto por un gateway y un servidor de autenticación.

Este elemento está implementado en Perl y se divide en dos

partes: el gateway y el servidor de autenticación. El gateway se encarga de dar salida a

Internet a todas las peticiones de los usuarios de la red Wi­Fi,

mientras que el servidor de autenticación se encarga de decidir si un usuario

puede o no utilizar la red.

PPP

(Point­to­Point Protocol).

El protocolo punto a punto es un  protocolo de nivel de enlace estandarizado

Protocolo

Conjunto  de   reglas  que  especifican  el   intercambio  de  datos  u  órdenes  durante   la

comunicación entre las entidades que forman parte de una red.

Protocolo Ip

126

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

El Protocolo de Internet (IP, de sus siglas en inglés Internet Protocol) es un protocolo

NO orientado a   conexión usado  tanto  por   el  origen  como por   el  destino  para   la

comunicación de datos a través de una red de paquetes conmutados.

Los datos en una red que se basa en IP son enviados en bloques conocidos como

paquetes  o  datagramas  (en   el   protocolo   IP   estos   términos   se   suelen   usar

indistintamente). En particular, en IP no se necesita ninguna configuración antes de

que un equipo intente enviar paquetes a otro con el que no se había comunicado antes.

Servidor

El ordenador en el que se ejecuta un programa que realiza alguna tarea en beneficio de

otras   aplicación   llamada   clientes,   tanto   si   se   trata   de   un  ordenador   central

(mainframe),   un  miniordenador,   un  ordenador   personal,   un  PDA  o   un  Sistema

integrado;   sin   embargo,   hay   ordenadores   destinados   únicamente   a   proveer   los

servicios de estos programas: estos son los servidores por antonomasia

UDP

(User Datagram Protocol)

Es un  protocolo  del  nivel  de   transporte  basado en el   intercambio  de  datagramas.

Permite   el   envío   de   datagramas   a   través   de   la  red  sin   que   se   haya   establecido

previamente   una   conexión,   ya   que   el   propio   datagrama   incorpora   suficiente

información  de  direccionamiento  en  su  cabecera.  Tampoco  tiene  confirmación,  ni

control de flujo, por lo que los paquetes pueden adelantarse unos a otros; y tampoco

sabemos si ha llegado correctamente, ya que no hay confirmación de entrega o de

recepción

127

Sistema de autenticación unificado para la utilización de los servicios Web de los estudiantes de la Universidad del Azuay

VPN

(Virtual Private Network)

VPN es una tecnología de red que permite una extensión de la red local sobre una red

pública o no controlada, como por ejemplo Internet

Wi­Fi 

(Wireless Fidelity)

Es parte de un  conjunto de estándares para redes inalámbricas. 

Wi­Fi se creó para ser utilizada en redes locales  inalámbricas, pero es frecuente que

en la actualidad también se utilice para acceder a Internet.

128