| 1 | Gestion y Monitoreo de Redes |
|---|
| 2 | Instalacion y Configuracion de Nagios |
|---|
| 3 | |
|---|
| 4 | Notas: |
|---|
| 5 | ------ |
|---|
| 6 | * Comandos que empiezan con un "$" implica que deberia ejecutar el comando |
|---|
| 7 | como un usuario general - no como root. |
|---|
| 8 | * Comandos que empiezan con un "#" implica que deberia trabajar como el usuario root. |
|---|
| 9 | * Comandos con lineas mas especificas (como "GW-RTR>" o "mysql>") implica que esta |
|---|
| 10 | ejecutando el comando en un equipo remoto o dentro otro programa. |
|---|
| 11 | * Si una linea termina con un "\" esto indica que el comando sigue en la proxima |
|---|
| 12 | linea y Ud. deberia tratar el comando si como fuera en una sola linea. |
|---|
| 13 | |
|---|
| 14 | Ejercicios |
|---|
| 15 | ----------- |
|---|
| 16 | |
|---|
| 17 | Ejercicios Parte I |
|---|
| 18 | ------------------ |
|---|
| 19 | |
|---|
| 20 | 0. Haz un log in en su PC o abre una ventana de terminal como el usuario sysadmin. |
|---|
| 21 | |
|---|
| 22 | |
|---|
| 23 | 1. Para instalar Nagios version 3 en Ubuntu podria hacer esto como el usuario |
|---|
| 24 | sysadmin usando "sudo" o como root: |
|---|
| 25 | |
|---|
| 26 | # apt-get install nagios3 |
|---|
| 27 | |
|---|
| 28 | Ya esta instalado Version 3 de Nagios, pero puede correr el comando si quiere. |
|---|
| 29 | |
|---|
| 30 | 2. Nagios deberia estar corriendo ya |
|---|
| 31 | |
|---|
| 32 | - En un Navegador vaya al: |
|---|
| 33 | |
|---|
| 34 | http://localhost/nagios3/ |
|---|
| 35 | |
|---|
| 36 | - Cuando pregunta por un usuario y clave usa: |
|---|
| 37 | |
|---|
| 38 | user: nagiosadmin |
|---|
| 39 | pass: <clave del taller> |
|---|
| 40 | |
|---|
| 41 | 3. Miramos a los archivos instalados... |
|---|
| 42 | |
|---|
| 43 | # cd /etc/nagios3/ |
|---|
| 44 | |
|---|
| 45 | # ls -l |
|---|
| 46 | -rw-r--r-- 1 root root 1882 2008-12-18 13:42 apache2.conf |
|---|
| 47 | -rw-r--r-- 1 root root 10524 2008-12-18 13:44 cgi.cfg |
|---|
| 48 | -rw-r--r-- 1 root root 2429 2008-12-18 13:44 commands.cfg |
|---|
| 49 | drwxr-xr-x 2 root root 4096 2009-02-14 12:33 conf.d |
|---|
| 50 | -rw-r--r-- 1 root root 26 2009-02-14 12:36 htpasswd.users |
|---|
| 51 | -rw-r--r-- 1 root root 42539 2008-12-18 13:44 nagios.cfg |
|---|
| 52 | -rw-r----- 1 root nagios 1293 2008-12-18 13:42 resource.cfg |
|---|
| 53 | drwxr-xr-x 2 root root 4096 2009-02-14 12:32 stylesheets |
|---|
| 54 | |
|---|
| 55 | # ls -l conf.d/ |
|---|
| 56 | |
|---|
| 57 | -rw-r--r-- 1 root root 1695 2008-12-18 13:42 contacts_nagios2.cfg |
|---|
| 58 | -rw-r--r-- 1 root root 418 2008-12-18 13:42 extinfo_nagios2.cfg |
|---|
| 59 | -rw-r--r-- 1 root root 1152 2008-12-18 13:42 generic-host_nagios2.cfg |
|---|
| 60 | -rw-r--r-- 1 root root 1803 2008-12-18 13:42 generic-service_nagios2.cfg |
|---|
| 61 | -rw-r--r-- 1 root root 210 2009-02-14 12:33 host-gateway_nagios3.cfg |
|---|
| 62 | -rw-r--r-- 1 root root 976 2008-12-18 13:42 hostgroups_nagios2.cfg |
|---|
| 63 | -rw-r--r-- 1 root root 2167 2008-12-18 13:42 localhost_nagios2.cfg |
|---|
| 64 | -rw-r--r-- 1 root root 1005 2008-12-18 13:42 services_nagios2.cfg |
|---|
| 65 | -rw-r--r-- 1 root root 1609 2008-12-18 13:42 timeperiods_nagios2.cfg |
|---|
| 66 | |
|---|
| 67 | Archivos con un "2" en su nombre no han cambiado desde version 2 de Nagios. |
|---|
| 68 | El archivo host-gateway_nagios3.cfg fue cambiado entre versiones, asi tiene |
|---|
| 69 | un nombre nuevo. |
|---|
| 70 | |
|---|
| 71 | PARTE II |
|---|
| 72 | Configurando Equipos en Nagios |
|---|
| 73 | ----------------------------------------------------------------------------- |
|---|
| 74 | |
|---|
| 75 | 0. El Orden de la Configuracion |
|---|
| 76 | |
|---|
| 77 | Conceptualmente vamos a construir nuestra configuracion desde arriba por abajo de nuestra Red. |
|---|
| 78 | Asi, vamos a definir entradas por los rutadores y conmutadores (switches) primero. Despues esto |
|---|
| 79 | empezamos con los PCs, etc... |
|---|
| 80 | |
|---|
| 81 | Llendo desde arriba por abajo habra definido los dispositivos que acutan como parientes por el |
|---|
| 82 | resto de los dispositvos primero. |
|---|
| 83 | |
|---|
| 84 | 1. Configurar Nagios monitorear las rutadores del curso |
|---|
| 85 | |
|---|
| 86 | # cd /etc/nagios3/conf.d/ |
|---|
| 87 | |
|---|
| 88 | # vi routers.cfg |
|---|
| 89 | |
|---|
| 90 | define host { |
|---|
| 91 | use generic-host |
|---|
| 92 | host_name gw |
|---|
| 93 | alias rutador del borde |
|---|
| 94 | address 10.10.254.254 |
|---|
| 95 | } |
|---|
| 96 | |
|---|
| 97 | Ahora definimos entradas por los tres enrutadores que tenemos. Nota |
|---|
| 98 | la entrada de "parents" de "sw1" - vamos a definir "sw1" en switches.cfg. |
|---|
| 99 | |
|---|
| 100 | define host { |
|---|
| 101 | use generic-host |
|---|
| 102 | host_name rtr1 |
|---|
| 103 | alias rutador del grupo 1 de VMs |
|---|
| 104 | address 10.10.1.254 |
|---|
| 105 | parents sw1 |
|---|
| 106 | } |
|---|
| 107 | |
|---|
| 108 | define host { |
|---|
| 109 | use generic-host |
|---|
| 110 | host_name rtr2 |
|---|
| 111 | alias rutador del grupo 2 de VMs |
|---|
| 112 | address 10.10.2.254 |
|---|
| 113 | parents sw1 |
|---|
| 114 | } |
|---|
| 115 | |
|---|
| 116 | define host { |
|---|
| 117 | use generic-host |
|---|
| 118 | host_name rtr3 |
|---|
| 119 | alias enrutador de los clientes |
|---|
| 120 | address 10.10.3.254 |
|---|
| 121 | parents sw1 |
|---|
| 122 | } |
|---|
| 123 | |
|---|
| 124 | Graba y salga del archivo /etc/nagios3/conf.d/routers.cfg |
|---|
| 125 | |
|---|
| 126 | |
|---|
| 127 | 2. Configuramos los Conmutadores (Switches) |
|---|
| 128 | |
|---|
| 129 | Nota que cada switch tendra una relacion de pariente con uno de las rutadores. |
|---|
| 130 | |
|---|
| 131 | # vi switches.cfg |
|---|
| 132 | |
|---|
| 133 | Primero el switch de "backbone" (troncal) |
|---|
| 134 | |
|---|
| 135 | define host { |
|---|
| 136 | use generic-host |
|---|
| 137 | host_name sw1 |
|---|
| 138 | alias conmuatdor troncal |
|---|
| 139 | address 10.10.254.253 |
|---|
| 140 | parents gw |
|---|
| 141 | } |
|---|
| 142 | |
|---|
| 143 | Nota las entradas de "parents" - Ya hicimos las entradas de los "parents" en |
|---|
| 144 | el archivo rutadores.cfg, asi esto funciona. |
|---|
| 145 | |
|---|
| 146 | Ahora el conmutador de los clientes del curso (portatiles, PCs de Windows) |
|---|
| 147 | |
|---|
| 148 | define host { |
|---|
| 149 | use generic-host |
|---|
| 150 | host_name sw2 |
|---|
| 151 | alias conmutador de los clientes |
|---|
| 152 | address 10.10.3.250 |
|---|
| 153 | parents rtr3 |
|---|
| 154 | } |
|---|
| 155 | |
|---|
| 156 | Graba y salga del archivo /etc/nagios3/conf.d/switches.cfg |
|---|
| 157 | |
|---|
| 158 | 3. Crea entradas por cada PC en la sala |
|---|
| 159 | |
|---|
| 160 | Ahora en un solo archivo vamos a definir todo los PCs en la sala. Puede hacer esto en varios archivos (grupo1-pcs.cfg, grupo2-pcs.cfg) si quiere, pero por nuestro curso usamos un solo archivo. |
|---|
| 161 | |
|---|
| 162 | Abajo hay tres entradas de ejemplo. Usa estos para hacer las entradas por todo los PCs |
|---|
| 163 | |
|---|
| 164 | Nota los parientes (parents) de cada uno. PCs de grupo 1 tienen como pariente el enrutador del grupo 1, |
|---|
| 165 | o rtr1. PCs de grupo 2 tienen como pariente el enrutador del grupo 2 or rtr2. Normalmente seria un switch, |
|---|
| 166 | pero por el hecho que estamos usando maquinas virtuales no ne necesario tener un switch. |
|---|
| 167 | |
|---|
| 168 | IMPORTANTE! No agrega una entrada por tu PC! Esto ya esta hecho en el archivo |
|---|
| 169 | /etc/nagios3/conf.d/localhost_nagios2.cfg - En este archivo puede definir el "parent" por el localhost |
|---|
| 170 | para que el instante de Nagios aparesca bien en los graficos de su Red. |
|---|
| 171 | |
|---|
| 172 | Puede ver el archivo /etc/hosts para ver todo los PCs, conmutadores y rutatores de la sala. |
|---|
| 173 | |
|---|
| 174 | Grupo 1 |
|---|
| 175 | ------- |
|---|
| 176 | pc1 a pc13 |
|---|
| 177 | |
|---|
| 178 | Grupo 2 |
|---|
| 179 | ------- |
|---|
| 180 | pc14 a pc26 |
|---|
| 181 | |
|---|
| 182 | Ahora, hacemos las entradas: |
|---|
| 183 | |
|---|
| 184 | # vi pcs.cfg |
|---|
| 185 | |
|---|
| 186 | # Nuestro NOC |
|---|
| 187 | |
|---|
| 188 | define host { |
|---|
| 189 | use generic-host |
|---|
| 190 | host_name noc |
|---|
| 191 | alias Centro de Operaciones |
|---|
| 192 | address 10.10.3.5 |
|---|
| 193 | parents sw2 |
|---|
| 194 | } |
|---|
| 195 | |
|---|
| 196 | # PCs de Grupo 1 |
|---|
| 197 | |
|---|
| 198 | define host { |
|---|
| 199 | use generic-host |
|---|
| 200 | host_name pc1 |
|---|
| 201 | alias pc1 grupo 1 |
|---|
| 202 | address 10.10.1.1 |
|---|
| 203 | parents rtr1 |
|---|
| 204 | } |
|---|
| 205 | |
|---|
| 206 | # PCs de Grupo 2 |
|---|
| 207 | |
|---|
| 208 | define host { |
|---|
| 209 | use generic-host |
|---|
| 210 | host_name pc14 |
|---|
| 211 | alias pc14 grupo 2 |
|---|
| 212 | address 10.10.2.14 |
|---|
| 213 | parents rtr2 |
|---|
| 214 | } |
|---|
| 215 | |
|---|
| 216 | Ahora sigue y agrega entradas por todo los PCs. |
|---|
| 217 | |
|---|
| 218 | Graba y salga del archivo /etc/nagios3/conf.d/pcs.cfg |
|---|
| 219 | |
|---|
| 220 | Ahora verificamos que nuestros archivos estan bien configurados |
|---|
| 221 | |
|---|
| 222 | |
|---|
| 223 | 5. Verificamos que nuestros archivos estan bien configurados |
|---|
| 224 | |
|---|
| 225 | # nagios3 -v /etc/nagios3/nagios.cfg |
|---|
| 226 | |
|---|
| 227 | ... Deberia ver : |
|---|
| 228 | |
|---|
| 229 | Total Warnings: NN (aviso de falta de chequeo de servicios. No se preocupa.) |
|---|
| 230 | Total Errors: 0 |
|---|
| 231 | |
|---|
| 232 | Things look okay - No serious problems were detected during the check. |
|---|
| 233 | |
|---|
| 234 | |
|---|
| 235 | 5. Recargar / Reinicializar Nagios |
|---|
| 236 | |
|---|
| 237 | # /etc/init.d/nagios3 stop |
|---|
| 238 | # /etc/init.d/nagios3 start |
|---|
| 239 | |
|---|
| 240 | Puede hacer "restart" pero no es 100% confiable. |
|---|
| 241 | |
|---|
| 242 | 6. Vaya al interfaz de la Web (http://localhost/nagios3) y verifica que las |
|---|
| 243 | entradas (PCs, conmutadores, rutadores) estan visibles. Apreta "Host Detail" |
|---|
| 244 | por la izquierda en Nagios para ver todo esto. |
|---|
| 245 | |
|---|
| 246 | |
|---|
| 247 | PART III |
|---|
| 248 | Configurar un Chequeo de Servicio por el NOC del Taller |
|---|
| 249 | ----------------------------------------------------------------------------- |
|---|
| 250 | |
|---|
| 251 | 0. Configurando |
|---|
| 252 | |
|---|
| 253 | Ahora que tenemos el hardware configurado vamos a configurar monitoreo de services, hacer grupos |
|---|
| 254 | de hardware y servicios, etc. |
|---|
| 255 | |
|---|
| 256 | 1. Associar un chequeo de servicio por el NOC del Taller |
|---|
| 257 | |
|---|
| 258 | # vi hostgroups_nagios2.cfg |
|---|
| 259 | |
|---|
| 260 | - Busca el hostgroup con nombre "ssh-servers". En la linea de "Members" cambia la linea: |
|---|
| 261 | |
|---|
| 262 | members localhost |
|---|
| 263 | |
|---|
| 264 | a |
|---|
| 265 | |
|---|
| 266 | members localhost,noc |
|---|
| 267 | |
|---|
| 268 | Salga y graba el archivo. |
|---|
| 269 | |
|---|
| 270 | Verifica que todo esta bien: |
|---|
| 271 | |
|---|
| 272 | # nagios3 -v /etc/nagios3/nagios.cfg |
|---|
| 273 | |
|---|
| 274 | Reinitializar Nagios para ver los servicios nuevos asociado con el PC noc: |
|---|
| 275 | |
|---|
| 276 | # /etc/init.d/nagios3 Restart |
|---|
| 277 | |
|---|
| 278 | Apreta "Service Detail" para ver su entrada nueva. |
|---|
| 279 | |
|---|
| 280 | |
|---|
| 281 | PART IV |
|---|
| 282 | Definir Servicios por todo sus PCs |
|---|
| 283 | ----------------------------------------------------------------------------- |
|---|
| 284 | |
|---|
| 285 | 1. Determinar que servicios estan corriendo por que dispositivos |
|---|
| 286 | |
|---|
| 287 | - Esto es la clave de como uno usa Nagios y las herramientas de monitoreo. |
|---|
| 288 | Ahora decidimos que servicios vamos a monitorear para cada PC en nuestra sala: |
|---|
| 289 | |
|---|
| 290 | - En nuestro casa tenemos: |
|---|
| 291 | |
|---|
| 292 | rutadores: corriendo ssh y snmp |
|---|
| 293 | conmutadores: corriendo telnet y/o ssh y snmp |
|---|
| 294 | pcs: Corriendo ssh, http y snmp |
|---|
| 295 | |
|---|
| 296 | Configuramos Nagios hacer checqueos por estes servicios en las maquinas de la |
|---|
| 297 | sala |
|---|
| 298 | |
|---|
| 299 | |
|---|
| 300 | 2.) Verificar que SSH esta corriendo en los rutadores y en los PCs |
|---|
| 301 | |
|---|
| 302 | - En el archivo /etc/nagios3/conf.d/hostgroups_nagios2.cfg ya hay una entrada por |
|---|
| 303 | el chequeo del servicio de SSH. Solo tiene que redefinirlo. Al principio la |
|---|
| 304 | entrada se vea asi: |
|---|
| 305 | |
|---|
| 306 | # A list of your ssh-accessible servers |
|---|
| 307 | define hostgroup { |
|---|
| 308 | hostgroup_name ssh-servers |
|---|
| 309 | alias SSH servers |
|---|
| 310 | members localhost,noc |
|---|
| 311 | } |
|---|
| 312 | |
|---|
| 313 | Que deberiamos cambiar? Si, la linea de "members". Va a ser largo con todo los PCs listado |
|---|
| 314 | _menos_ su PC. Por ejemplo: |
|---|
| 315 | |
|---|
| 316 | define hostgroup { |
|---|
| 317 | hostgroup_name ssh-servers |
|---|
| 318 | alias SSH servers |
|---|
| 319 | members localhost,noc,pc1,pc2,pc3,pc4....,rtr1,rtr2,rtr3 |
|---|
| 320 | } |
|---|
| 321 | |
|---|
| 322 | Pero, incluye todo los PCs |
|---|
| 323 | |
|---|
| 324 | - Ahora salga y graba el archivo y verifica que todo esta bien: |
|---|
| 325 | |
|---|
| 326 | # nagios3 -v /etc/nagios3/nagios.cfg |
|---|
| 327 | |
|---|
| 328 | - Si todo esta bien haz: |
|---|
| 329 | |
|---|
| 330 | # /etc/init.d/nagios3 stop |
|---|
| 331 | # /etc/init.d/nagios3 start |
|---|
| 332 | |
|---|
| 333 | y revisa todo en la pagina web de Nagios. |
|---|
| 334 | |
|---|
| 335 | 3.) Verifica que http esta corriendo en todo los PCs de la sala. |
|---|
| 336 | |
|---|
| 337 | - Esto es casi igual que el ejercicio anterior. Solo haz el cambio por el servicio |
|---|
| 338 | HTTP agregando los miembros de cada PC (rutadores y conmutadores no). Recuerda de |
|---|
| 339 | no agregar tu maquina porque ya esta configurado como "localhost" |
|---|
| 340 | |
|---|
| 341 | |
|---|
| 342 | PART V |
|---|
| 343 | Crear mas Grupos del Host |
|---|
| 344 | ----------------------------------------------------------------------------- |
|---|
| 345 | |
|---|
| 346 | 1. Actualizar /etc/nagios3/conf.d/hostgroups_nagios2.cfg |
|---|
| 347 | |
|---|
| 348 | - Por los ejercicios que vienen es muy util tener hech los grupos de hosts: |
|---|
| 349 | |
|---|
| 350 | debian-servers |
|---|
| 351 | routers |
|---|
| 352 | switches |
|---|
| 353 | |
|---|
| 354 | Abre el archivo /etc/nagios3/conf.d/hostgroups_nagios2.cfg y vas a ver una |
|---|
| 355 | entra para debian-servers que solo incluya el localhost. Actualizar esto |
|---|
| 356 | para incluir todo los PCs en la sala. |
|---|
| 357 | |
|---|
| 358 | # vi /etc/nagios3/conf.d/hostgroups_nagios2.cfg |
|---|
| 359 | |
|---|
| 360 | Actualizar la entrada que dice: |
|---|
| 361 | |
|---|
| 362 | # A list of your Debian GNU/Linux servers |
|---|
| 363 | define hostgroup { |
|---|
| 364 | hostgroup_name debian-servers |
|---|
| 365 | alias Debian GNU/Linux Servers |
|---|
| 366 | members localhost |
|---|
| 367 | } |
|---|
| 368 | |
|---|
| 369 | Para que "members" contiene todo los pcs. Mas o menos asi: |
|---|
| 370 | |
|---|
| 371 | members localhost,pc1,pc2,pc3,pc4,pc5,pc6,pc7,pc8,pc9 |
|---|
| 372 | pc10,pc11,pc12,pc13,pc14,pc15,pc16,pc17,pc18, etc... |
|---|
| 373 | |
|---|
| 374 | - La linea no puede tener un break. Tiene que seguir como una sola linea. |
|---|
| 375 | |
|---|
| 376 | - Despues agrega entradas por "routers" y uno por "switches" - Usa los |
|---|
| 377 | nombres "routers" y "switches" |
|---|
| 378 | |
|---|
| 379 | - Cuando terminas verifica que todo esta bien, recarga Nagios y vea los |
|---|
| 380 | cambos en el interfaz Web. |
|---|
| 381 | |
|---|
| 382 | PART V |
|---|
| 383 | |
|---|
| 384 | Informacion Extendida de los Hosts (maquinas) - "O, hacer los graficos bonitos" |
|---|
| 385 | ------------------------------------------------------------------------------- |
|---|
| 386 | |
|---|
| 387 | 1. Actualizar extinfo_nagios2.cfg |
|---|
| 388 | |
|---|
| 389 | - Si quiere usar iconos en los opciones de graficos que tiene Nagios |
|---|
| 390 | (el Statusmap) esto es el archivo donde se define esto. Tenemos tres |
|---|
| 391 | tipos de maquinas: |
|---|
| 392 | |
|---|
| 393 | Rutadores |
|---|
| 394 | Conmutadores |
|---|
| 395 | Servidores |
|---|
| 396 | |
|---|
| 397 | Hay un repositorio bastante grande de imagenes de iconos disponible aqui: |
|---|
| 398 | |
|---|
| 399 | /usr/share/nagios/htdocs/images/logos/ |
|---|
| 400 | |
|---|
| 401 | Estan instalado por defecto cuando instalamos Nagios en Ubuntu. Hay iconos |
|---|
| 402 | muy especifico de varios modelos de equipos, pero para hacer las cosas mas |
|---|
| 403 | simples vamos a usar los siguiente iconos: |
|---|
| 404 | |
|---|
| 405 | /usr/share/nagios/htodcs/images/logos/base/debian.* |
|---|
| 406 | /usr/share/nagios/htdocs/images/logos/cook/router.* |
|---|
| 407 | /usr/share/nagios/htdocs/images/logos/cook/switch.* |
|---|
| 408 | |
|---|
| 409 | - El proximo paso es editar el archivo /etc/nagios3/conf.d/extinfo_nagios2.cfg |
|---|
| 410 | y decir a Nagios que icons usar por cada maquina. |
|---|
| 411 | |
|---|
| 412 | # vi /etc/nagios3/conf.d/extinfo_nagios2.cfg |
|---|
| 413 | |
|---|
| 414 | Aqui es una muestra de como se vea una entrad para los rutadores. Ya hay una |
|---|
| 415 | entrada por debian-servers que funciona como esta. El modelo de rutador listado |
|---|
| 416 | no esta importante. El imagen es generico. |
|---|
| 417 | |
|---|
| 418 | define hostextinfo { |
|---|
| 419 | hostgroup_name routers |
|---|
| 420 | icon_image cook/router.png |
|---|
| 421 | icon_image_alt Cisco Routers (3600) |
|---|
| 422 | vrml_image router.png |
|---|
| 423 | statusmap_image cook/router.gd2 |
|---|
| 424 | } |
|---|
| 425 | |
|---|
| 426 | Ahora agrega una entrada por tus conmutadores. Recuerda que llamaste el grupo |
|---|
| 427 | "switches". Despues, graba el archivo, verifica que todo esta bien y revise el |
|---|
| 428 | Status Map en la interfaz web para ver como esta todo. |
|---|
| 429 | |
|---|
| 430 | |
|---|
| 431 | PART VI |
|---|
| 432 | Crear Grupos de Servicio |
|---|
| 433 | ----------------------------------------------------------------------------- |
|---|
| 434 | |
|---|
| 435 | 1. Crear un grupo de servicio para ssh y http for cada PC. |
|---|
| 436 | |
|---|
| 437 | - La idea es crear dos grupos de services. Es un dispositivo y los servicios |
|---|
| 438 | asociado con el dispostivo por los dos grupos. Para hacer esto tiene que |
|---|
| 439 | crear un archivo nuevo: |
|---|
| 440 | |
|---|
| 441 | # vi /etc/nagios3/conf.d/servicegroups.cfg |
|---|
| 442 | |
|---|
| 443 | Una muestra para el grupo 1 (no es completo): |
|---|
| 444 | |
|---|
| 445 | define servicegroup { |
|---|
| 446 | servicegroup_name servidores-grupo1 |
|---|
| 447 | alias Servidores de Grupo 1 |
|---|
| 448 | members pc1,SSH,pc1,HTTP,pc2,SSH,pc2,HTTP,pc3,SSH,pc3,HTTP,pc4,SSH,pc4,HTTP,pc5,SSH, |
|---|
| 449 | pc5,HTTP,pc6,SSH,pc6,HTTP,pc7,SSH,pc7,HTTP,pc8,SSH,pc8,HTTP,pc9,SSH,pc9,HTTP |
|---|
| 450 | } |
|---|
| 451 | |
|---|
| 452 | - La linea es una sola linea. No puede tener un break. |
|---|
| 453 | |
|---|
| 454 | - SSH y FTP estan en mayuscalas porque asi es como la "service_description" esta escrito en el |
|---|
| 455 | archivo /etc/nagios3/conf.d/services_nagios2.cfg. |
|---|
| 456 | |
|---|
| 457 | - Haz una entrada por los servidores de Grupo 2. |
|---|
| 458 | |
|---|
| 459 | - Graba sus cambios y salga del archivo. Verifica que todo esta bien y recarga Nagios. |
|---|
| 460 | |
|---|
| 461 | - Vea los grupos en el interfaz web bajo los menus "Servicegroup" |
|---|
| 462 | |
|---|
| 463 | |
|---|
| 464 | PART VII |
|---|
| 465 | Configurar acceso a "Guest" por el Interfaz Web de Nagios |
|---|
| 466 | ----------------------------------------------------------------------------- |
|---|
| 467 | |
|---|
| 468 | 1. Abre el archivo /etc/nagios3/cgi.cfg para dar acceso de solo leer (r/o) a |
|---|
| 469 | un usuario "guest" por el interfaz de Web. |
|---|
| 470 | |
|---|
| 471 | - Por defecto el usuario nagiosadmin tiene acceso leer y escribir (r/w) |
|---|
| 472 | a traves el interfaz Web de Nagios. Si quiere permitir otros usuarios |
|---|
| 473 | ver el estatus de su Red pero sin tener acceso de escribir (ejecutar |
|---|
| 474 | comandos, etc.) tenemos que hacer algunos cambios en el archivo de |
|---|
| 475 | cgi.cfg. |
|---|
| 476 | |
|---|
| 477 | - Primero hacemos el usuario "guest" con un clave en el archivo do htpasswd.user. |
|---|
| 478 | |
|---|
| 479 | # cd /etc/nagios3 |
|---|
| 480 | # htpasswd /etc/nagios3/htpasswd.users guest |
|---|
| 481 | |
|---|
| 482 | Puede usar cualquier clave, pero uno de "guest" no es tan malo... |
|---|
| 483 | |
|---|
| 484 | - Ahora abre el archivo /etc/nagios3/cgi.cfg and busca el tipo de acceso que quiere |
|---|
| 485 | dar. Vas a ver esto (hemos sacado todo los comentarios que haya en el archivo): |
|---|
| 486 | |
|---|
| 487 | authorized_for_system_information=nagiosadmin |
|---|
| 488 | authorized_for_configuration_information=nagiosadmin |
|---|
| 489 | authorized_for_system_commands=nagiosadmin |
|---|
| 490 | authorized_for_all_services=nagiosadmin |
|---|
| 491 | authorized_for_all_hosts=nagiosadmin |
|---|
| 492 | authorized_for_all_service_commands=nagiosadmin |
|---|
| 493 | authorized_for_all_host_commands=nagiosadmin |
|---|
| 494 | |
|---|
| 495 | Cambia estas entradas para permitir que el usuario "guest" tiene acceso a todo |
|---|
| 496 | la informacion que da Nagios, pero que no tiene acceso para hacer cambios. Lo |
|---|
| 497 | siguiente es tipico de acceso solo leer: |
|---|
| 498 | |
|---|
| 499 | authorized_for_system_information=nagiosadmin,guest |
|---|
| 500 | authorized_for_configuration_information=nagiosadmin,guest |
|---|
| 501 | authorized_for_system_commands=nagiosadmin |
|---|
| 502 | authorized_for_all_services=nagiosadmin,guest |
|---|
| 503 | authorized_for_all_hosts=nagiosadmin,guest |
|---|
| 504 | authorized_for_all_service_commands=nagiosadmin |
|---|
| 505 | authorized_for_all_host_commands=nagiosadmin |
|---|
| 506 | |
|---|
| 507 | - Haz los cambios, graba el archivo, salga del archivo, verifica que todo esta bien |
|---|
| 508 | y recargar Nagios. |
|---|
| 509 | |
|---|
| 510 | - Para ver si esta funcionando vay a http://localhost/nagios3 y en tu navegador tiene |
|---|
| 511 | que limpiar los "cookies" para que recibes el dialogo de login por Nagios. Haz un |
|---|
| 512 | recargar de la pagina y intenta de entrar como el usuario guest. |
|---|
| 513 | |
|---|
| 514 | |
|---|
| 515 | |
|---|
| 516 | |
|---|
| 517 | OPCIONAL (No traducido) |
|---|
| 518 | ----------------------- |
|---|
| 519 | |
|---|
| 520 | 1.) Verifica que SNMP esta corriendo en el NOC |
|---|
| 521 | |
|---|
| 522 | - First you will need to add in the appropriate service check for SNMP in the file |
|---|
| 523 | /etc/nagios3/conf.d/services_nagios2.cfg. This is where Nagios is impressive. There |
|---|
| 524 | are hundreds, if not thousands, of service checks available via the various Nagios |
|---|
| 525 | sites on the web. You can see what plugins are installed by Ubuntu in the nagios3 |
|---|
| 526 | package that we've installed by looking in the following directory: |
|---|
| 527 | |
|---|
| 528 | # ls /usr/lib/nagios/plugins |
|---|
| 529 | |
|---|
| 530 | As you'll see there is already a check_snmp plugin available to us. If you are |
|---|
| 531 | interested in the options the plugin takes you can execute the plugin from the |
|---|
| 532 | command line by typing: |
|---|
| 533 | |
|---|
| 534 | # /usr/lib/nagios/plugins/check_snmp |
|---|
| 535 | |
|---|
| 536 | to see what options are available, etc. You can use the check_snmp plugin and |
|---|
| 537 | Nagios to create very complex or specific system checks. |
|---|
| 538 | |
|---|
| 539 | - Now to see all the various service/host checks that have been created using the |
|---|
| 540 | check_snmp plugin you can look in /etc/nagios-plugins/config/snmp.cfg. You will |
|---|
| 541 | see that there are a lot of preconfigured checks using snmp, including: |
|---|
| 542 | |
|---|
| 543 | snmp_load |
|---|
| 544 | snmp_cpustats |
|---|
| 545 | snmp_procname |
|---|
| 546 | snmp_disk |
|---|
| 547 | snmp_mem |
|---|
| 548 | snmp_swap |
|---|
| 549 | snmp_procs |
|---|
| 550 | snmp_users |
|---|
| 551 | snmp_mem2 |
|---|
| 552 | snmp_swap2 |
|---|
| 553 | snmp_mem3 |
|---|
| 554 | snmp_swap3 |
|---|
| 555 | snmp_disk2 |
|---|
| 556 | snmp_tcpopen |
|---|
| 557 | snmp_tcpstats |
|---|
| 558 | snmp_bgpstate |
|---|
| 559 | check_netapp_uptime |
|---|
| 560 | check_netapp_cupuload |
|---|
| 561 | check_netapp_numdisks |
|---|
| 562 | check_compaq_thermalCondition |
|---|
| 563 | |
|---|
| 564 | And, even better, you can create additional service checks quite easily. |
|---|
| 565 | For the case of verifying that snmpd (the SNMP service on Linux) is running we |
|---|
| 566 | need to ask SNMP a question. If we don't get an answer, then Nagios can assume |
|---|
| 567 | that the SNMP service is down on that host. When you use service checks such as |
|---|
| 568 | check_http, check_ssh and check_telnet this is what they are doing as well. |
|---|
| 569 | |
|---|
| 570 | - In our case, let's create a new service check and call it "check_system". This |
|---|
| 571 | service check will connect with the specified host, use the private community |
|---|
| 572 | string we have defined in class and ask a question of snmp on that ask - in this |
|---|
| 573 | case we'll ask about the System Description, or the OID "sysDescr.0" - |
|---|
| 574 | |
|---|
| 575 | - To do this start by editing the file /etc/nagios-plugins/config/snmp.cfg: |
|---|
| 576 | |
|---|
| 577 | # vi /etc/nagios-plugins/config/snmp.cfg |
|---|
| 578 | |
|---|
| 579 | At the top (or the bottom, your choice) add the following entry to the file: |
|---|
| 580 | |
|---|
| 581 | # 'check_system' command definition |
|---|
| 582 | define command{ |
|---|
| 583 | command_name check_system |
|---|
| 584 | command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C |
|---|
| 585 | '$ARG1$' -o sysDescr.0 |
|---|
| 586 | } |
|---|
| 587 | |
|---|
| 588 | You may wish to copy and past this vs. trying to type this out. |
|---|
| 589 | |
|---|
| 590 | Note that "command_line" is a single line. If you copy and paste in vi the line |
|---|
| 591 | may not wrap properly and you may have to manually add the part: |
|---|
| 592 | |
|---|
| 593 | '$ARG1$' -o sysName.0 |
|---|
| 594 | |
|---|
| 595 | to the end of the line. |
|---|
| 596 | |
|---|
| 597 | - Now you need to edit the file /etc/nagios3/conf.d/services_nagios2.cfg and add |
|---|
| 598 | in this service check. We'll run this check against all our servers in the |
|---|
| 599 | classroom, or the hostgroup "debian-servers" |
|---|
| 600 | |
|---|
| 601 | - Edit the file /etc/nagios3/conf.d/services_nagios2.cfg |
|---|
| 602 | |
|---|
| 603 | # vi /etc/nagios3/conf.d/services_nagios2.cfg |
|---|
| 604 | |
|---|
| 605 | At the bottom of the file add the following definition: |
|---|
| 606 | |
|---|
| 607 | # check that snmp is up on all servers |
|---|
| 608 | define service { |
|---|
| 609 | hostgroup_name snmp-servers |
|---|
| 610 | service_description SNMP |
|---|
| 611 | check_command check_system!public |
|---|
| 612 | use generic-service |
|---|
| 613 | notification_interval 0 ; set > 0 if you want to be renotified |
|---|
| 614 | } |
|---|
| 615 | |
|---|
| 616 | The "xxxxxx" is the community string previously (or to be) defined in class. |
|---|
| 617 | In our case this is "public" for our PCs. |
|---|
| 618 | |
|---|
| 619 | For our routers and switches the community string is "unan-ro" - Create another |
|---|
| 620 | service entry like this: |
|---|
| 621 | |
|---|
| 622 | # check that snmp is up on all servers |
|---|
| 623 | define service { |
|---|
| 624 | hostgroup_name snmp-routers-switches |
|---|
| 625 | service_description SNMP |
|---|
| 626 | check_command check_system!unan-ro |
|---|
| 627 | use generic-service |
|---|
| 628 | notification_interval 0 ; set > 0 if you want to be renotified |
|---|
| 629 | } |
|---|
| 630 | |
|---|
| 631 | Note that we have included our private community string here vs. hard-coding |
|---|
| 632 | it in the snmp.cfg file earlier. |
|---|
| 633 | |
|---|
| 634 | - Now we must create the "snmp-servers" group in our hostgroups_nagios2.cfg file. |
|---|
| 635 | Edit the file /etc/nagios3/conf.d/hostgroups_nagios2.cfg and go to the end of the |
|---|
| 636 | file. Add in the following hostgroup definition: |
|---|
| 637 | |
|---|
| 638 | # A list of snmp-enabled devices on which we wish to run the snmp service check |
|---|
| 639 | define hostgroup { |
|---|
| 640 | hostgroup_name snmp-servers |
|---|
| 641 | alias snmp servers |
|---|
| 642 | members noc,pc1,pc2,pc3,pc4,pc5, etc... |
|---|
| 643 | } |
|---|
| 644 | |
|---|
| 645 | And for our routers and switches: |
|---|
| 646 | |
|---|
| 647 | define hostgroup { |
|---|
| 648 | hostgroup_name snmp-routers-switches |
|---|
| 649 | alias snmp on our network infrastructure |
|---|
| 650 | members gw-rtr,grupo1-rtr,grupo2-rtr,grupo1-sw,grupo2-sw |
|---|
| 651 | } |
|---|
| 652 | |
|---|
| 653 | - Now verify that your changes are correct and restart Nagios. |
|---|
| 654 | |
|---|
| 655 | - If you click on the Service Detail menu choice in web interface you should see |
|---|
| 656 | the SNMP check appear. |
|---|
| 657 | |
|---|
| 658 | - After we do the SNMP presentation and exercises in class, then you could come |
|---|
| 659 | back to this exercise and add in all the classroom PCs to the members list in the |
|---|
| 660 | hostgroups_nagios2.cfg file, snmp-servers hostgroup definition. Remember to list |
|---|
| 661 | your PC as "localhost". |
|---|
| 662 | |
|---|
| 663 | |
|---|
| 664 | Ultima actualizacion 3 de Agosto 2010 por HA |
|---|