| 1 | Instalacin y Configuracin de Nagios |
|---|
| 2 | |
|---|
| 3 | Notas: |
|---|
| 4 | ------ |
|---|
| 5 | * Los comandos precedidos por "$" implican que debe ejecutar el comando |
|---|
| 6 | como usuario genrico - no como root |
|---|
| 7 | * Los comandos precedidos por "#" implican que debera estar trabajando |
|---|
| 8 | como usuario root. |
|---|
| 9 | * Los comandos con inicios de lnea ms especficos como "RTR-GW>" o |
|---|
| 10 | "mysql>" indican que debe ejecutar los comandos en un equipo remoto, |
|---|
| 11 | o dentro otro programa |
|---|
| 12 | |
|---|
| 13 | |
|---|
| 14 | Ejercicios |
|---|
| 15 | --------- |
|---|
| 16 | |
|---|
| 17 | PARTE IV |
|---|
| 18 | Relaciones de dependencia (padre-hijo) |
|---|
| 19 | ----------------------------------------------------------------------------- |
|---|
| 20 | |
|---|
| 21 | Cada elemento es hijo de un switch o un router en la red del taller, EXCEPTO |
|---|
| 22 | su enrutador (rtrX) y los otros miembros de su grupo. Ahora vamos a agregar una |
|---|
| 23 | directiva "parents" para cada dispositivo que hayamos configurado. |
|---|
| 24 | |
|---|
| 25 | Si no est seguro de la relacin padre-hijo, puede mirar el diagrama de la clase. |
|---|
| 26 | Recuerde, la relacin depende del punto de vista de la instanacia de Nagios en su |
|---|
| 27 | PC. |
|---|
| 28 | |
|---|
| 29 | |
|---|
| 30 | 1. Agregar padres en switches.cfg |
|---|
| 31 | --------------------------------- |
|---|
| 32 | |
|---|
| 33 | # cd /etc/nagios3/conf.d |
|---|
| 34 | # editor switches.cfg |
|---|
| 35 | |
|---|
| 36 | Actualice la entrada: |
|---|
| 37 | |
|---|
| 38 | |
|---|
| 39 | define host { |
|---|
| 40 | use generic-host |
|---|
| 41 | host_name sw |
|---|
| 42 | alias Backbone Switch |
|---|
| 43 | address 10.10.0.253 |
|---|
| 44 | } |
|---|
| 45 | |
|---|
| 46 | |
|---|
| 47 | as: |
|---|
| 48 | |
|---|
| 49 | |
|---|
| 50 | define host { |
|---|
| 51 | use generic-host |
|---|
| 52 | host_name sw |
|---|
| 53 | alias Backbone Switch |
|---|
| 54 | address 10.10.0.253 |
|---|
| 55 | parents rtrX |
|---|
| 56 | } |
|---|
| 57 | |
|---|
| 58 | |
|---|
| 59 | Donde "rtrX" es el enrutador de su grupo. Ej. el grupo 1 usar "rtr1", |
|---|
| 60 | el grupo 2 "rtr2", etc. |
|---|
| 61 | |
|---|
| 62 | Grabe y salga del editor. |
|---|
| 63 | |
|---|
| 64 | 2. Configurar padres en routers.cfg |
|---|
| 65 | ----------------------------------- |
|---|
| 66 | |
|---|
| 67 | # editor routers.cfg |
|---|
| 68 | |
|---|
| 69 | Para cada entrada agregaremos la lnea "parents". O sea, que la definicin |
|---|
| 70 | de gw-rtr al comienzo del archivo, debera verse as: |
|---|
| 71 | |
|---|
| 72 | define host { |
|---|
| 73 | use generic-host |
|---|
| 74 | host_name gw-rtr |
|---|
| 75 | alias Enrutador del taller |
|---|
| 76 | address 10.10.0.254 |
|---|
| 77 | parents sw |
|---|
| 78 | } |
|---|
| 79 | |
|---|
| 80 | Para todos los restantes rtrX, debera, tambin, agregar una entrada as: |
|---|
| 81 | |
|---|
| 82 | parents sw |
|---|
| 83 | |
|---|
| 84 | EXCEPTO para el enrutador de su grupo. Este NO DEBE tener una lnea "parents". |
|---|
| 85 | Si tiene una entrada para "ap1" (punto de acceso inalmbrico), entonces su padre |
|---|
| 86 | es tambin "sw", igual que los enrutadores. |
|---|
| 87 | |
|---|
| 88 | De manera que, si est en el grupo 2, las secciones correspondientes a los grupos |
|---|
| 89 | 1, 2 y 3 seran: |
|---|
| 90 | |
|---|
| 91 | |
|---|
| 92 | define host { |
|---|
| 93 | use generic-host |
|---|
| 94 | host_name rtr1 |
|---|
| 95 | alias Enrutador Grupo 1 |
|---|
| 96 | address 10.10.1.254 |
|---|
| 97 | parents sw |
|---|
| 98 | } |
|---|
| 99 | |
|---|
| 100 | define host { |
|---|
| 101 | use generic-host |
|---|
| 102 | host_name rtr2 |
|---|
| 103 | alias Enrutador Grupo 2 |
|---|
| 104 | address 10.10.2.254 |
|---|
| 105 | } |
|---|
| 106 | |
|---|
| 107 | define host { |
|---|
| 108 | use generic-host |
|---|
| 109 | host_name rtr3 |
|---|
| 110 | alias Enrutador Grupo 3 |
|---|
| 111 | address 10.10.3.254 |
|---|
| 112 | parents sw |
|---|
| 113 | } |
|---|
| 114 | |
|---|
| 115 | |
|---|
| 116 | Actualice el resto del archivo, y luego grabe y salga del editor. |
|---|
| 117 | |
|---|
| 118 | |
|---|
| 119 | 3. Agregar padres en pcs.cfg |
|---|
| 120 | ----------------------------- |
|---|
| 121 | |
|---|
| 122 | Cada PC debe tener una lnea "parents" con el enrutador del grupo correspondiente. |
|---|
| 123 | En el caso del NOC, el padre es el switch del taller "sw". |
|---|
| 124 | |
|---|
| 125 | # |
|---|
| 126 | # Classroom NOC |
|---|
| 127 | # |
|---|
| 128 | |
|---|
| 129 | define host { |
|---|
| 130 | use generic-host |
|---|
| 131 | host_name noc |
|---|
| 132 | alias Servidor NOC del taller |
|---|
| 133 | address 10.10.0.250 |
|---|
| 134 | parents sw |
|---|
| 135 | } |
|---|
| 136 | |
|---|
| 137 | |
|---|
| 138 | Para las PCs del grupo 1, debera ser: |
|---|
| 139 | |
|---|
| 140 | |
|---|
| 141 | # |
|---|
| 142 | # Grupo 1 |
|---|
| 143 | # |
|---|
| 144 | |
|---|
| 145 | define host { |
|---|
| 146 | use generic-host |
|---|
| 147 | host_name pc1 |
|---|
| 148 | alias pc1 |
|---|
| 149 | address 10.10.1.1 |
|---|
| 150 | parents rtr1 |
|---|
| 151 | } |
|---|
| 152 | |
|---|
| 153 | define host { |
|---|
| 154 | use generic-host |
|---|
| 155 | host_name pc2 |
|---|
| 156 | alias pc2 |
|---|
| 157 | address 10.10.1.2 |
|---|
| 158 | parents rtr1 |
|---|
| 159 | } |
|---|
| 160 | |
|---|
| 161 | |
|---|
| 162 | etcâ |
|---|
| 163 | |
|---|
| 164 | Haga esto con todas las PCs de los grupos restantes. Por ejemplo, pc5 en el |
|---|
| 165 | grupo 2 tendr: |
|---|
| 166 | |
|---|
| 167 | parents rtr2 |
|---|
| 168 | |
|---|
| 169 | PERO NO AGREGUE PADRES A NINGUNA DE LAS PCS EN SU PROPIO GRUPO! |
|---|
| 170 | REPITO - LAS PCS EN SU GRUPO NO DEBEN TENER UNA LINEA "parents" |
|---|
| 171 | |
|---|
| 172 | Grabe y salga. |
|---|
| 173 | |
|---|
| 174 | 4. Reinicie Nagios y vea el mapa de estado actualizado |
|---|
| 175 | ------------------------------------------------------ |
|---|
| 176 | |
|---|
| 177 | # service nagios3 restart |
|---|
| 178 | |
|---|
| 179 | Si tiene errores, corrjalos y trate de reiniciar de nuevo. |
|---|
| 180 | |
|---|
| 181 | Con el navegador, vaya a http://pcN.ws.nsrc.org/nagios3 y vaya al enlace "Map" |
|---|
| 182 | de la izquierda. Su mapa debera verse bastante diferente. Debera ver un mapa |
|---|
| 183 | que representa la red desde el punto de vista de Nagios. |
|---|
| 184 | |
|---|
| 185 | |
|---|
| 186 | PARTE V |
|---|
| 187 | Crear ms grupos de nodos |
|---|
| 188 | ----------------------------------------------------------------------------- |
|---|
| 189 | |
|---|
| 190 | 0. En la interfaz web, vaya a los enlaces "Hostgroup Overview", "Hostgroup |
|---|
| 191 | Summary", "Hostgroup Grid". Esto muestra una forma conveniente de |
|---|
| 192 | agrupar nodos relacionados (ej. si estn en la misma ubicacin, o si son |
|---|
| 193 | para el mismo propsito) |
|---|
| 194 | |
|---|
| 195 | 1. Actualice /etc/nagios3/conf.d/hostgroups_nagios2.cfg |
|---|
| 196 | |
|---|
| 197 | - Para los siguientes ejercicios ser til si actualizamos o creamos |
|---|
| 198 | los siguientes grupos de nodos: |
|---|
| 199 | |
|---|
| 200 | debian-servers |
|---|
| 201 | routers |
|---|
| 202 | switches |
|---|
| 203 | |
|---|
| 204 | Si edita el archivo /etc/nagios3/conf.d/hostgroups_nagios2.cfg, ver |
|---|
| 205 | una seccin debian-servers que slo contiene a localhost. Actualice |
|---|
| 206 | esta entrada para aadir todas las PCs del taller, incluyendo el NOC |
|---|
| 207 | (asumiendo que ha creado una entrada "noc" en su pcs.cfg). Recuerde |
|---|
| 208 | saltar la entrada de su PC, ya que est representada por localhost. |
|---|
| 209 | |
|---|
| 210 | # editor /etc/nagios3/conf.d/hostgroups_nagios2.cfg |
|---|
| 211 | |
|---|
| 212 | Actualice la entrada que dice: |
|---|
| 213 | |
|---|
| 214 | # A list of your Debian GNU/Linux servers |
|---|
| 215 | define hostgroup { |
|---|
| 216 | hostgroup_name debian-servers |
|---|
| 217 | alias Debian GNU/Linux Servers |
|---|
| 218 | members localhost |
|---|
| 219 | } |
|---|
| 220 | |
|---|
| 221 | Para que el parmetro "members" contenga algo como sigue. Use el diagrama |
|---|
| 222 | de red de su clase para confirmar el nmero exacto de mquinas y nombres |
|---|
| 223 | en su taller. |
|---|
| 224 | |
|---|
| 225 | members localhost,pc1,pc2,pc3,pc4,pc5,pc6,pc7,pc8,pc9,pc10,pc11,pc12, \ |
|---|
| 226 | pc13,pc14,pc15,pc16,pc17,pc18,pc19,pc20,pc21,pc22,pc23,pc24,pc25,\ |
|---|
| 227 | pc26,pc27,pc28,pc29,pc30,pc31,pc32,pc33,pc34,pc35,pc36 |
|---|
| 228 | |
|---|
| 229 | Asegrese de poner una "\" al final de cada lnea. De lo contrario obtendr |
|---|
| 230 | un error cuando reinicie Nagios. Recuerde que su propia PC es "localhost", as |
|---|
| 231 | que debe saltar esa entrada. |
|---|
| 232 | |
|---|
| 233 | - Una vez hecho esto, agregue un grupo de nodos ms para el/los switch(es) del |
|---|
| 234 | taller. Si hay ms de un switch (sw.ws.nsrc.org), incluya esto en la lnea |
|---|
| 235 | "members" de ms abajo, de lo contrario la entrada en hostgroups_nagios3.cfg |
|---|
| 236 | debera ser como sigue (COPIAR Y PEGAR): |
|---|
| 237 | |
|---|
| 238 | # A list of our switches |
|---|
| 239 | define hostgroup { |
|---|
| 240 | hostgroup_name switches |
|---|
| 241 | alias Classroom Switches |
|---|
| 242 | members sw |
|---|
| 243 | } |
|---|
| 244 | |
|---|
| 245 | |
|---|
| 246 | - Cuando termine no olvide verificar y reiniciar Nagios. |
|---|
| 247 | |
|---|
| 248 | 2. Vuelva al navegador y compruebe que estn presentes sus nuevos Host Groups. |
|---|
| 249 | |
|---|
| 250 | |
|---|
| 251 | PARTE VI |
|---|
| 252 | Informacin Extendida ("hacer los grficos ms bonitos") |
|---|
| 253 | ----------------------------------------------------------------------------- |
|---|
| 254 | |
|---|
| 255 | 1. Actualice extinfo_nagios2.cfg |
|---|
| 256 | |
|---|
| 257 | - Si quiere usar los iconos correspondientes para cada nodo definido en Nagios |
|---|
| 258 | ste es el sitio. Tenemos tres tipos de dispositivos: |
|---|
| 259 | |
|---|
| 260 | Enrutadores Cisco |
|---|
| 261 | Switches Cisco |
|---|
| 262 | Servidores Ubuntu |
|---|
| 263 | |
|---|
| 264 | Hay un repositorio bastante grande con imgenes para iconos disponible |
|---|
| 265 | aqu: |
|---|
| 266 | |
|---|
| 267 | /usr/share/nagios/htdocs/images/logos/ |
|---|
| 268 | |
|---|
| 269 | Estos se instalan por defecto como paquetes dependientes del nagios3 |
|---|
| 270 | en Ubuntu. En algunos casos encontrar iconos especficos al modelo |
|---|
| 271 | de su hardware, pero para hacer las cosas ms simples usaremos los |
|---|
| 272 | siguientes en este ejercicio: |
|---|
| 273 | |
|---|
| 274 | /usr/share/nagios/htodcs/images/logos/base/debian.* |
|---|
| 275 | /usr/share/nagios/htdocs/images/logos/cook/router.* |
|---|
| 276 | /usr/share/nagios/htdocs/images/logos/cook/switch.* |
|---|
| 277 | |
|---|
| 278 | - El prximo paso es editar el archivo /etc/nagios3/conf.d/extinfo_nagios2.cfg |
|---|
| 279 | e indicar a Nagios cul imagen debe usar para representar su dispositivo. |
|---|
| 280 | |
|---|
| 281 | # editor /etc/nagios3/conf.d/extinfo_nagios2.cfg |
|---|
| 282 | |
|---|
| 283 | As es como se vera una entrada de enrutador (ya existe una entrada |
|---|
| 284 | para debian-uesrs que funciona tal cual). Note que el modelo de enrutador |
|---|
| 285 | (3600) no es tan importante. La imagen representa un enrutador en general. |
|---|
| 286 | |
|---|
| 287 | |
|---|
| 288 | define hostextinfo { |
|---|
| 289 | hostgroup_name routers |
|---|
| 290 | icon_image cook/router.png |
|---|
| 291 | icon_image_alt Cisco Routers (7200) |
|---|
| 292 | vrml_image router.png |
|---|
| 293 | statusmap_image cook/router.gd2 |
|---|
| 294 | } |
|---|
| 295 | |
|---|
| 296 | Note que podemos simplemente usar "hostgroup_name routers", ya que ste ya |
|---|
| 297 | ha sido definido en el archivo hostgroups_nagios2.cfg. Esto hace que |
|---|
| 298 | configurar mltiples elementos semejantes sea ms fcil. |
|---|
| 299 | |
|---|
| 300 | Ahora agregue una entrada para sus switches. Cuando termine, revise sus cambios |
|---|
| 301 | y reinicie Nagios. Eche un vistazo al mapa de estado (Status Map) en la |
|---|
| 302 | interfaz web. Debera verse mucho ms bonito, con iconos en vez de smbolos |
|---|
| 303 | de interrogacin. |
|---|
| 304 | |
|---|
| 305 | |
|---|
| 306 | PARTE VII |
|---|
| 307 | Crear Grupos de Servicio |
|---|
| 308 | ----------------------------------------------------------------------------- |
|---|
| 309 | |
|---|
| 310 | 1. Cree grupos de servicio para SSH y HTTP para cada groupo de PCs. |
|---|
| 311 | |
|---|
| 312 | - La idea aqu es crear tres grupos de servicios. Cada grupo ser para |
|---|
| 313 | una cuarta parte del taller. Queremos ver estas PCs agrupadas e incluir |
|---|
| 314 | el estado de sus servicios SSH y HTTP. Para ello, cree y edite este archivo: |
|---|
| 315 | |
|---|
| 316 | # cd /etc/nagios3/conf.d (por si acaso) |
|---|
| 317 | # editor servicegroups.cfg |
|---|
| 318 | |
|---|
| 319 | He aqu un ejemplo con el grupo 1: |
|---|
| 320 | |
|---|
| 321 | define servicegroup { |
|---|
| 322 | servicegroup_name group1-services |
|---|
| 323 | alias Servicios del Grupo 1 |
|---|
| 324 | members pc1,SSH,pc1,HTTP,pc2,SSH,pc2,HTTP,pc3,SSH,pc3,HTTP,pc4,SSH,pc4,HTTP |
|---|
| 325 | } |
|---|
| 326 | |
|---|
| 327 | - Fjese que si la lnea de miembros es muy larga, puede usar "\" al final para |
|---|
| 328 | continuar en la lnea de abajo. |
|---|
| 329 | |
|---|
| 330 | - Note que "SSH" y "HTTP" necesitan estar en maysculas, ya que as es como estn |
|---|
| 331 | definidas en el service_description del archivo /etc/nagios3/conf.d/services_nagios2.cfg |
|---|
| 332 | |
|---|
| 333 | - Aada una entrada para otros grupos de servidores tambin. |
|---|
| 334 | |
|---|
| 335 | - CRITICO: Cuando cree una entrada para su grupo, recuerde usar "localhost" en lugar |
|---|
| 336 | del nombre de su PC "pcN", ya que slo ha definido su PC como "localhost" en el archivo |
|---|
| 337 | hostgroups_nagios2.cfg. |
|---|
| 338 | |
|---|
| 339 | - Guarde y verifique sus cambios y reinicie Nagios. Ahora, si oprime el enlace de |
|---|
| 340 | Service Groups en el men de la interfaz web, debera ver esta informacin agrupada. |
|---|
| 341 | |
|---|
| 342 | |
|---|
| 343 | PARTE VIII |
|---|
| 344 | Configure acceso para invitados (guest) en la interfaz web de Nagios |
|---|
| 345 | --------------------------------------------------------------------- |
|---|
| 346 | |
|---|
| 347 | 1. Vamos a editar el archivo /etc/nagios3/cgi.cfg para dar acceso read-only al usuario |
|---|
| 348 | "guest" en la interfaz web de Nagios |
|---|
| 349 | |
|---|
| 350 | - Nagios por defecto est configurado para dar acceso completo (r/w) a travs |
|---|
| 351 | de la interfaz web al usuario "nagiosadmin". Puede cambiar el nombre de este |
|---|
| 352 | usuario, agregar otros usuarios, cambiar cmo se autentifican los usuarios, |
|---|
| 353 | qu usuarios tienen acceso a qu recursos y mucho ms, por medio del archivo |
|---|
| 354 | cgi.cfg. |
|---|
| 355 | |
|---|
| 356 | - Primero, vamos a crear el usuario "guest" y un password en el archivo |
|---|
| 357 | httpasswd.users. |
|---|
| 358 | |
|---|
| 359 | # htpasswd /etc/nagios3/htpasswd.users guest |
|---|
| 360 | |
|---|
| 361 | Puede usar cualquier password que quiera (o ninguno). Por ejemplo, el |
|---|
| 362 | password "guest" sera una buena opcin. |
|---|
| 363 | |
|---|
| 364 | - Siguiente, edite el archivo /etc/nagios3/cgi.cfg y busque qu tipo de acceso |
|---|
| 365 | se le ha asignado al usuario nagiosadmin. Por defecto, ver las siguientes |
|---|
| 366 | directivas (note, hay comentarios entre cada directiva): |
|---|
| 367 | |
|---|
| 368 | authorized_for_system_information=nagiosadmin |
|---|
| 369 | authorized_for_configuration_information=nagiosadmin |
|---|
| 370 | authorized_for_system_commands=nagiosadmin |
|---|
| 371 | authorized_for_all_services=nagiosadmin |
|---|
| 372 | authorized_for_all_hosts=nagiosadmin |
|---|
| 373 | authorized_for_all_service_commands=nagiosadmin |
|---|
| 374 | authorized_for_all_host_commands=nagiosadmin |
|---|
| 375 | |
|---|
| 376 | Ahora digmosle a Nagios que permita al usuario "guest" tener algo de |
|---|
| 377 | acceso a la informacin a travs de la interfaz web. Puede elegir lo que |
|---|
| 378 | desee, pero lo que sera ms tpico es: |
|---|
| 379 | |
|---|
| 380 | authorized_for_system_information=nagiosadmin,guest |
|---|
| 381 | authorized_for_configuration_information=nagiosadmin,guest |
|---|
| 382 | authorized_for_system_commands=nagiosadmin |
|---|
| 383 | authorized_for_all_services=nagiosadmin,guest |
|---|
| 384 | authorized_for_all_hosts=nagiosadmin,guest |
|---|
| 385 | authorized_for_all_service_commands=nagiosadmin |
|---|
| 386 | authorized_for_all_host_commands=nagiosadmin |
|---|
| 387 | |
|---|
| 388 | - Note que no damos al usuario guest acceso a los comandos de sistema, comandos |
|---|
| 389 | de servicio ni comandos de host. |
|---|
| 390 | |
|---|
| 391 | - Al terminar los cambios, grabe el archivo cgi.cfg, verifique y reinicie Nagios. |
|---|
| 392 | |
|---|
| 393 | - Para ver si puede ingresar como "guest", deber eliminar sus "cookies" del |
|---|
| 394 | navegador, o abrir un navegador alternativo si lo tiene. No notar ninguna |
|---|
| 395 | diferencia en la interfaz web. La diferencia est en que algunas de las opciones |
|---|
| 396 | disponibles en el men no funcionarn (por ejemplo, forzar un chequeo de nodo |
|---|
| 397 | o servicio, programacin de chequeos, comentarios, etc). |
|---|
| 398 | |
|---|
| 399 | |
|---|
| 400 | FIN. |
|---|