Upload
eduardo-granados-ch
View
1.925
Download
4
Embed Size (px)
DESCRIPTION
PROTOCOLO MRTG USANDO WIFI EN LINUX
Citation preview
PROTOCOLO MRTG USANDO WIFI EN LINUX
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO
FACULTAD DE INGENIERÍA
ADMINISTRACIÓN DE REDES.
PROYECTO 1
PROTOCOLO MRTG USANDO WIFI EN LINUX
ALUMNOS:
GRANADOS CHAVARRIA EDUARDO
HERNANDEZ BERMUDES ANDRES.
NAVA NAVA ALEJANDRO
GRUPO TEORIA: 2
PROFESOR: ING. ALEJANDRO MENA
FECHA DE ENTREGA: 10 DE OCTUBRE DEL 2008.
PROTOCOLO MRTG USANDO WIFI EN LINUX
PROTOCOLO MRTG USANDO WIFI EN LINUX
ÍNDICE:
Introducción _____________________________________________________________________
Equipo del proyecto _______________________________________________________________
Desarrollo _______________________________________________________________________
Instalación del SNMP ______________________________________________________________
Configuración del SNMP ___________________________________________________________
Instalación de Apache2 _____________________________________________________________
Configuración de Apache2 __________________________________________________________
Instalación de MRTG ______________________________________________________________
Configuración de MRTG ___________________________________________________________
Resultados _____________________________________________________________________
Problemáticas presentadas en el desarrollo ____________________________________________
Conclusiones ____________________________________________________________________
PROTOCOLO MRTG USANDO WIFI EN LINUX
INTRODUCCIÓN.
Se implementara un monitoreo del ancho de banda en una red de datos implementada sobre la interfaz WiFi entre dos equipos con GNU/Linux como sistema operativo.
La administración de red es necesaria para poder asegurar que se brindan correctamente los servicios para los que esta diseñada, además de asegurar que cumple con un nivel aceptable de seguridad. Para la medición del trafico se utilizara el Protocolo Simple de Administración de Red (en ingles, Simple Network Manager Protocol SNMP) y el Graficador de Trafico para Routers (Multi Router Traffic Grapher, MRTG).
El SNMP es un protocolo en la capa de aplicación (capa 7) del modelo OSI, que permite una estructura de mensajes para el intercambio de información entre el administrador y el agente SNMP, para que el protocolo pueda ser implementado se requiere de:
• Un administrador SNMP, es un sistema empleado para controlar la actividad de los componentes de la red, regularmente denominado NMS, Sistema de Administración de Red (Network Management System).
• Un agente SNMP, es el componente software dentro del dispositivo administrado que mantiene los datos del mismo e informa al administrador acerca de ellos, cuando se requiere. Contiene variables de la MIB cuyos valores pueden ser solicitados o modificados por el administrador SNMP, mediante operaciones get y set.
• Una MIB, es una colección de objetos de información de administración, residente en el dispositivo administrado.
MRTG es utilizado para supervisar el trafico en la red mostrando, para obtener esta información pide los datos requeridos o que se desean monitorizar al servidor SNMP y este los interpreta en gráficas en una página de HTML por lo que también es necesario instalar un seridor Web, en este caso Apache2, el MRTG pide la información cada cierto tiempo constante, esto es controlado por el cron. Las gráficas que se pretenden ser mostradas son:
Análisis de trafico para el host eduardo-linux en la interfaz wlan0Análisis de trafico para el host VF-11 en la interfaz ath0
A continuación se muestra un ejemplo de las gráficas que se desean obtener
La red que sera empleara para este proyecto es bajo el estándar IEEE 802.11g también conocido como WiFi, que permite la conexión de equipos de computo de forma inalámbrica, para poder establecer una comunicación es necesario un punto de acceso en caso de desear conectar varios nodos a la red, si solo requerimos conectar dos nodos se puede establecer una conexión mediante ad-hoc (de maquina a maquina).
PROTOCOLO MRTG USANDO WIFI EN LINUX
EQUIPO DEL PROYECTO.
Para la implementación de la red que requerimos para el proyecto se utilizo un access point y dos host con tarjeta inalámbrica compatible con IEEE 802.11g
Access Point:Router Belkin Wireless G Router, modelo F5D7230-4 capaz de soportar el estándar 802.11g
HostEn la siguiente tabla se muestran los host que tuvo la red durante el desarrollo del proyecto
Modelo Sistema Operativo NIC Dirección IP*
Acer Aspire One Debian Lenny IEEE 802.11bgAtheros bg wifi interface
192.168.2.3
Sony Vaio FE630F
Ubuntu 8.04 IEEE 802.11abgIntel PRO wireless ABG network connection
192.168.2.4
*Las direcciones IP se asignaron por DHCP.
Desarrollo:
Instalación del servidor SNMP.
El servidor SNMP fue instalado en el equipo Sony Vaio, para instar se utilizó apt-get:
$ sudo apt-get install snmp snmpd
PROTOCOLO MRTG USANDO WIFI EN LINUX
CONFIGURACIÓN DEL SERVIDOR SNMP.
Para configurar el SNMP se utilizo el comando snmpconf:
Al iniciar el programa nos pide donde creara el archivo de configuración, se ejecuto como root y se selecciona la opción que almacena en /etc/snmp/snmpd.conf
$ sudo snmpconf
Cuando nos pregunta que tipo de archivo de configuración se desea crear, elegir la opción 1 (snmpd.conf).
En la siguiente pantalla nos da una lista de los parámetros que pueden ser configurados, que son:
1: Extending the Agent2: Monitor Various Aspects of the Running Host3: System Information Setup4: Trap Destinations5: Agent Operating Mode6: Access Control Setup
Se configura la opción 3: System Information Setup, donde pide la localización física y datos de contacto del| administrador:
1: The [typicallly physical] location of the system2: The contact information for the administrator3: The proper value for the sysServices object
PROTOCOLO MRTG USANDO WIFI EN LINUX
En 1: The [typicallly physical] location of the system, colocamos la ubicación del administrador y en 2: The contact information for the administrator colocamos el nombre y correo del administrador, posteriormente salimos de este submenú con finished.
En el menu anterior elejimos la opción 5: Agent Operating Mode. En el nuevo submenú elegir 4: The IP address and port number that the agent will listen on, aquí ingresamos el puerto y protocolo que utiliza, en este caso introducimos:
tcp:161
En la opción 1: Should the agent operate as a master agent or not, despliega una lista de argumentos que acepta aquí se introduce: agentx.
y regresamos al menú principal con finished.
Continuamos con el 6: Access Control Setup para dar de alta las comunidades, primero se configura la opción 3: a SNMPv1/SNMPv2c read-only access community name: (nombre de la comunidad de solo lectura: lecture, red que se utiliza es la 192.168.2.0/24 y dejar en blanco la OID.
En la opción 4: a SNMPv1/SNMPv2c read-write access community name, que es la comunidad de lectura y escritura se utiliza el nombre: writing, con IP local como 127.0.0.1 dejando en blanco el OID.
Regresar al menú principal con finished, y salir del menú principal del configuración con finished. Enseguida tecleamos quit y preguntara si desea sobre escribir el archivo a lo cual accedemos con overwrite. Después de esto regresamos a la consola y podemos verificar el archivo con:
$ less /etc/snmp/snmp.conf
PROTOCOLO MRTG USANDO WIFI EN LINUX
A continuación se muestra el archivo de configuración:
########################################################################### # # snmpd.conf # # - created by the snmpconf configuration program #
########################################################################### # SECTION: System Information Setup # # This section defines some of the information reported in # the "system" mib group in the mibII tree.
# syslocation: The [typically physical] location of the system. # Note that setting this value here means that when trying to # perform an snmp SET operation to the sysLocation.0 variable will make # the agent return the "notWritable" error code. IE, including # this token in the snmpd.conf file will disable write access to # the variable. # arguments: location_string
syslocation "Sony Vaio"
# syscontact: The contact information for the administrator # Note that setting this value here means that when trying to # perform an snmp SET operation to the sysContact.0 variable will make # the agent return the "notWritable" error code. IE, including # this token in the snmpd.conf file will disable write access to # the variable. # arguments: contact_string
syscontact "Eduardo G; [email protected]"
PROTOCOLO MRTG USANDO WIFI EN LINUX
########################################################################### # SECTION: Agent Operating Mode # # This section defines how the agent will operate when it # is running.
# master: Should the agent operate as a master agent or not. # Currently, the only supported master agent type for this token # is "agentx". # # arguments: (on|yes|agentx|all|off|no)
master agentx
# agentaddress: The IP address and port number that the agent will listen on. # By default the agent listens to any and all traffic from any # interface on the default SNMP port (161). This allows you to # specify which address, interface, transport type and port(s) that you # want the agent to listen on. Multiple definitions of this token # are concatenated together (using ':'s). # arguments: [transport:]port[@interface/address],...
agentaddress 161 agentaddress tcp:161
########################################################################### # SECTION: Access Control Setup # # This section defines who is allowed to talk to your running # snmp agent.
# rocommunity: a SNMPv1/SNMPv2c read-only access community name # arguments: community [default|hostname|network/bits] [oid]
rocommunity lecture 192.168.2.0/24 rocommunity lecture 127.0.0.1
# rwcommunity: a SNMPv1/SNMPv2c read-write access community name # arguments: community [default|hostname|network/bits] [oid]
rwcommunity writing 127.0.0.1 rwcommunity writing 192.168.2.2
## END OF FILE CONFIG.#
Por ultimo volvemos a cargar la configuración al demonio del snmp.Con:
$ sudo /etc/init.d/snmpd reload
Para verificar que el puerto 161 este abierto se puede comprobar con el siguiente comando:
$ netstat -natup | grep 161
PROTOCOLO MRTG USANDO WIFI EN LINUX
Para comprobar que e servicio y la configuración han sido levantados correctamente utilizamos el mbrowser que es un navegador de MIB para SNMP, se pude descargar con:
$ sudo apt-get install mbrowser
Primero se realiza una prueba en el host local llenando los campos de comunidad de lectura con “lecture” y la comunidad de escritura con “writing” y navegando por el árbol de las MIBs, por ejemplo en: /iso/org/dod/internet/mgmt/mib-2/system/sysDescr
PROTOCOLO MRTG USANDO WIFI EN LINUX
Una vez que ha contestado se realiza la misma prueba con el host que pertenece a la comunidad de solo lectura (lecture) colocando en Host Name la IP.
PROTOCOLO MRTG USANDO WIFI EN LINUX
Ya que se comprobó que la conexión se realizo satisfactoriamente entre las dos computadoras se prosiguió con las instalación y configuración del MRTG, sin embargo, como ya se dijo anteriormente este programa utiliza un servidor web por lo tanto se prosiguió a instalar primero Apache2 en la computadora que pertenece al administrador, Acer Aspire One.
INSTALACIÓN DE APACHE2.
Para instalar el servidor apache se introduce el siguiente comando:
$ sudo apt-get install apache2
CONFIGURACIÓN DE APACHE2.
El servidor apache no necesito configuración solo creamos el directorio de trabajo de mrtg bajo el root de apache (/var/www)
# mkdir /var/www/mrtg
Con este directorio se accede a la pagina de trabajo de mrtg con la siguiente dirección
http://192.168.2.3/mrtg
Donde 192.168.2.3 es la dirección IP dentro de la red local para nuestro servidor web
Hasta aquí no se ha generado una pagina de índice para el directorio mrtg, el navegador nos generara el índice del directorio automáticamente.
A continuación se muestra la pagina de índice que genera el navegador estando el directorio mrtg vacío
PROTOCOLO MRTG USANDO WIFI EN LINUX
INSTALACIÓN DE MRTG.
Para instalar el mrtg en sistemas debian se ejecuta el gestor de paquetes apt
# apt-get install mrtg
El paquete mrtg esta en los repositorios predeterminados de debian así que los únicos requisitos son tener una conexion a internet y los repositiorios bien configurados, en caso de no tener estos requisitos se puede bajar manualmente el paquete e instalarlo con el siguiente comando
# dpkg -i <paquete>.deb
CONFIGURACIÓN DE MRTG.
Para la configuración se utilizaron los programas cfgmaker e indexmaker, cgkmaker nos establece la configuración que debemos de tener en /etc/mrtg.cfg e indexmaker nos construye la pagina de indice para el directorio de trabajo de mrtg (en este caso /var/www/mrtg)
Para obtener el archivo de configuracion para mrtg se ejecuta el siguiente comando
# cfgmaker comunidad@host
PROTOCOLO MRTG USANDO WIFI EN LINUX
Este comando manda a stdout la configuracion que debe de ir en mrtg así que tenemos la opción de especificar el archivo de salida en el programa o continuar de la siguiente forma
# cfgmaker comunidad@host >> /etc/mrtg.cfg
Con esto redirigimos la salida del programa de stdout al archivo de configuracion, si ya existia el archivo se agrega el nuevo contenido al final del mismo
Con esto ya podemos crear nuestro archivo /etc/mrtg.cfg con los hosts que vamos a analizar de la siguiente manera:
# cfgmaker [email protected] >> /etc/mrtg.cfg# cfgmaker [email protected] >> /etc/mrtg.cfg
Al introducir estos comandos se genera la configuración para que nos muestre las interfaces de red activas de cada host, sin embargo en este proyecto solo se va a analizar la interfaz de red inalámbrica, por lo que se quitaron las demás interfaces (que además estaban comentadas) del archivo de configuración.
A continuación se muestra el contenido del archivo de configuración de mrtg:
###################################################################### ## /etc/mrtg.cfg START
### Global Config Options
# for Debian WorkDir: /var/www/mrtg
### Global Defaults
## Deshabilitamos el soporte para IPv6EnableIPv6: no ## Nuestro servidor snmp es version 2c por lo que no requerimos soportar la version 3EnableSnmpV3: no ## Establecemos el tiempo de refresco de la pagina a 5 minutos (300 segundos)Refresh: 300
##Title[^]: Traffic Analysis for
## Configuraciones para el Host1
###################################################################### # Comando que se ejecuto para obtener las configuraciones # /usr/bin/cfgmaker [email protected]
###################################################################### # System: VF-11 # Description: Linux VF-11 2.6.26-1-686 #1 SMP Wed Sep 10 16:46:13 UTC 2008 i686 # Contact: root@VF-11 # Location: Random Location ######################################################################
## Interfaz de red inalambrica compatible con WiFi
### Interface 4 >> Descr: 'ath0' | Name: 'ath0' | Ip: '192.168.2.3' | Eth: '' ###
Target[192.168.2.3_4]: 4:[email protected]: SetEnv[192.168.2.3_4]: MRTG_INT_IP="192.168.2.3" MRTG_INT_DESCR="ath0"
PROTOCOLO MRTG USANDO WIFI EN LINUX
MaxBytes[192.168.2.3_4]: 1250000 Title[192.168.2.3_4]: Traffic Analysis for 4 -- VF-11 PageTop[192.168.2.3_4]: <h1>Traffic Analysis for 4 -- VF-11</h1>
<div id="sysdetails"> <table>
<tr> <td>System:</td> <td>VF-11 in Random Location</td>
</tr> <tr>
<td>Maintainer:</td> <td>root@VF-11</td>
</tr> <tr>
<td>Description:</td> <td>ath0 </td>
</tr> <tr>
<td>ifType:</td> <td>ethernetCsmacd (6)</td>
</tr> <tr>
<td>ifName:</td> <td>ath0</td>
</tr> <tr>
<td>Max Speed:</td> <td>1250.0 kBytes/s</td>
</tr> <tr>
<td>Ip:</td> <td>192.168.2.3 (VF-11.local)</td>
</tr> </table>
</div>
## Configuraciones para el Host1
###################################################################### # Comando que se ejecuto para obtener las configuraciones # /usr/bin/cfgmaker [email protected]
###################################################################### # System: eduardo-linux # Description: Linux eduardo-linux 2.6.24-19-generic #1 SMP Wed Aug 20 22:56:21 UTC 2008 i686 # Contact: "Eduardo G; [email protected]" # Location: "Sony Vaio" ######################################################################
## Interfaz de red inalambrica compatible con WiFi
### Interface 4 >> Descr: 'wlan0' | Name: 'wlan0' | Ip: '192.168.2.4' | Eth: '' ###
Target[192.168.2.4_4]: 4:[email protected]: SetEnv[192.168.2.4_4]: MRTG_INT_IP="192.168.2.4" MRTG_INT_DESCR="wlan0" MaxBytes[192.168.2.4_4]: 1250000 Title[192.168.2.4_4]: Traffic Analysis for 4 -- eduardo-linux PageTop[192.168.2.4_4]: <h1>Traffic Analysis for 4 -- eduardo-linux</h1>
<div id="sysdetails"> <table>
<tr> <td>System:</td> <td>eduardo-linux in "Sony Vaio"</td>
</tr> <tr>
<td>Maintainer:</td> <td>"Eduardo G; [email protected]"</td>
</tr> <tr>
<td>Description:</td> <td>wlan0 </td>
PROTOCOLO MRTG USANDO WIFI EN LINUX
</tr> <tr>
<td>ifType:</td> <td>ethernetCsmacd (6)</td>
</tr> <tr>
<td>ifName:</td> <td>wlan0</td>
</tr> <tr>
<td>Max Speed:</td> <td>1250.0 kBytes/s</td>
</tr> <tr>
<td>Ip:</td> <td>192.168.2.4 (eduardo-linux.local)</td>
</tr> </table>
</div>
## /etc/mrtg.cfg END######################################################################
PROTOCOLO MRTG USANDO WIFI EN LINUX
Resultados Las gráficas obtenidas fueron las siguientes
http://192.168.2.3/mrtg
http://192.168.2.3/mrtg/192.168.2.3_4.html
http://192.168.2.3/mrtg/192.168.2.4_4.html
PROTOCOLO MRTG USANDO WIFI EN LINUX
Videos.Aqui se muestra todo el desarrollo de la instalaciń e implementaciń de SNMP y MRTG
http://www.youtube.com/watch?v=TCSLS-bYQ7ohttp://www.youtube.com/watch?v=I3LwOoRlQ8Yhttp://www.youtube.com/watch?v=4cUSLzJBIF0
http://www.youtube.com/watch?v=x5_ReHAypkEhttp://www.youtube.com/watch?v=YwZJxYgidtA
Problemáticas presentadas en el desarrollo
La problemática que se nos presento fue la configuración del snmp, nos tratamos de basar en la práctica de laboratorio, sin embargo, había algunos cambios que tuvimos que hacer, el activar directamente el puerto del firewall. Y al intentar hacer directamente la configuración del snmp en el archivo de configuración.
Para este problema usamos el programa snmpconfig como root en el directorio /etc/:
user@host-name:/etc$ sudo snmpconfig
Fuera de esto no se presento otro problema.
Conclusiones.
El proyecto se concluyo de forma satisfactoria dado que se logro implementar el protocolo SNMP y MRTG, además de que se pudo configurar el cron para así poder modificar el tiempo de actualización del refresco de la página y así poder ponerlas en el tiempo que se deseé mayor o menos a los cinco minutos, esto es en el archivo /etc/cron.d/mrtg
Modificando:# each minute 0-59/1 * * * * root if [ -x /usr/bin/mrtg ] && [ -r /etc/mrtg.cfg ]; then env LANG=C /usr/bin/mrtg /etc/mrtg.cfg >> /var/log/mrtg/mrtg.log 2>&1; fi
También para poder agregar más gráficas de información que deseemos leer tales como: puertos abertos, memoria libre, uso de CPU, usuarios conectados, etc. (todas las MIBs disponibles), se añada en el archivo /etc/mrtg.cfg, posteriormente actulizar con:
$sudo indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html
Por ejemplo para puertos abiertos:
PROTOCOLO MRTG USANDO WIFI EN LINUX
### TCP ABIERTOS ###
Target[arpanet.tcp]: .1.3.6.1.2.1.6.9.0&.1.3.6.1.2.1.6.9.0:[email protected]
RouterUptime[arpanet.tcp]: [email protected]
Options[arpanet.tcp]: nopercent,growright,gauge
Title[arpanet.tcp]: Conexiones TCP abiertas
PageTop[arpanet.tcp]: <h1>Conexiones TCP abiertas</h1>
MaxBytes[arpanet.tcp]: 1000000
YLegend[arpanet.tcp]: Conexiones
ShortLegend[arpanet.tcp]: Conexiones
LegendI[arpanet.tcp]: Conexiones:
LegendO[arpanet.tcp]:
Legend1[arpanet.tcp]: Conexiones TCP abiertas
La sintaxys es:
### NOMBRE DE LA GRÁFICA###Target[arpanet.tcp]: MIBs:comunidad@IPhost
RouterUptime[arpanet.tcp]: [email protected]
Options[arpanet.tcp]:OPCIONES COMO: nopercent,growright,gauge
Title[arpanet.tcp]: TITULO DEL GRAFICO
PageTop[arpanet.tcp]: <h1>TITULO DEL GRAFICO</h1>
MaxBytes[arpanet.tcp]:
YLegend[arpanet.tcp]: nombre del eje Y
ShortLegend[arpanet.tcp]: Leyenda del gráfico
LegendI[arpanet.tcp]: Conexiones:
LegendO[arpanet.tcp]:
Legend1[arpanet.tcp]: Conexiones TCP abiertas
Con esto nos da mucho más opciones de medir el uso de la computadora deseada.
Bibliografía:
➢ HowTo Multi Router Traffic Grapherhttp://arpaneting.es/stuff/mrtg_howto.html
➢ Manual de MRTG disponible en linux:$ man mrtg
➢ Manual de SNMP disponible en linux$ man snmp