Gentoo Archives: gentoo-commits

From: "John Christian Stoddart (chiguire)" <chiguire@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo commit in xml/htdocs/doc/es: nagios-guide.xml
Date: Wed, 13 Aug 2008 13:29:11
Message-Id: E1KTGPT-00049F-9X@stork.gentoo.org
1 chiguire 08/08/13 13:29:07
2
3 Added: nagios-guide.xml
4 Log:
5 first (draft) spanish translation
6
7 Revision Changes Path
8 1.1 xml/htdocs/doc/es/nagios-guide.xml
9
10 file : http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/doc/es/nagios-guide.xml?rev=1.1&view=markup
11 plain: http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/doc/es/nagios-guide.xml?rev=1.1&content-type=text/plain
12
13 Index: nagios-guide.xml
14 ===================================================================
15 <?xml version="1.0" encoding="UTF-8"?>
16 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/es/nagios-guide.xml,v 1.1 2008/08/13 13:29:06 chiguire Exp $ -->
17 <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
18
19 <guide disclaimer="draft">
20 <title>Monitoreo de Sistemas Gentoo con Nagios</title>
21
22 <author title="Author">
23 <mail link="swift@g.o">Sven Vermeulen</mail>
24 </author>
25 <author title="Traductor">
26 <mail link="chiguire"/>
27 </author>
28
29 <abstract>
30 La herramienta Nagios es una opción popular entre los distintos
31 usuarios de software libre a la hora de monitorear sistemas y
32 redes. Esta guía ayuda descubrir e integrar Nagios con una
33 infraestuctura Gentoo existente.
34 </abstract>
35
36 <license/>
37
38 <version>0.1</version>
39 <date>2008-07-06</date>
40
41 <chapter>
42 <title>Introducción</title>
43 <section>
44 <title>Monitoreando un Sistema</title>
45 <body>
46
47 <p>
48 Los usuarios de sistemas únicos generalmente no necesitan herramientas
49 para ayudarlos a identificar el estado de su sistema. Sin embargo, al
50 tener que administrar más sistemas, necesitaremos una vista a vuelo de
51 pájaro de su estado de salud: ¿tendrán las particiones suficiente
52 espacio libre?, ¿estará sobrecargado el CPU?, ¿cuántos usuarios
53 estarán conectados?, ¿están estos sistemas actualizados respecto a
54 seguridad?, etc.
55 </p>
56
57 <p>
58 Las herramientas para monitorear sistemas, como el software Nagios que
59 discutimos en esta guía, ofrecen una forma sencilla de manejar
60 distintos datos del sistema. En entornos mayores, como los
61 empresariales, estas herramientas sumarizan datos de varios sistemas
62 en una única ubicación, permitiendo el manejo del monitoreo de manera
63 centralizada.
64 </p>
65 </body>
66 </section>
67
68 <section>
69 <title>Acerca de Nagios</title>
70 <body>
71
72 <p>
73 El software <uri link="http://www.nagios.org">Nagios</uri> es una
74 herramienta de software popular para monitorear anfitriones, servicios
75 y redes bajo Unix (aunque puede también puede capturar datos de los
76 sistemas operativos de la familia Windows de Microsoft). Soporta:
77 </p>
78
79 <ul>
80 <li>
81 la obtención de datos acerca de recursos de sistemas locales, tales
82 como espacio en disco, uso del CPU, consumo de memoria, ...
83 </li>
84 <li>
85 descubrimiento de la disponibilidad de servicios (tales como SSH,
86 SMTP y otros protocolos),
87 </li>
88 <li>
89 descubrimiento de redes fuera de línea (cuando un grupo de
90 sistemas de reconocida disponibilidad aparecen fuera de alcance),
91 </li>
92 </ul>
93
94 <p>
95 y más.
96 </p>
97
98 <p>
99 Básicamente, el software Nagios consiste de una herramienta central
100 (que maneja los datos), un módulo de servidor web (que maneja el
101 despliegue de datos) y un conjunto de plugins (que recolectan los
102 datos y los envián al sistema central).
103 </p>
104 </body>
105 </section>
106
107 <section>
108 <title>Acerca de este Documento</title>
109 <body>
110
111 <p>
112 El propósito principal de este documento es presentar el software
113 Nagios a los usuarios de Gentoo y explicar cómo integrarlo dentro del
114 entorno Gentoo. La guía no está supuesta de describir Nagios en gran
115 detalle - esta función se la dejamos a los escritores de la
116 documentación de Nagios.
117 </p>
118 </body>
119 </section>
120 </chapter>
121
122 <chapter>
123 <title>Configurando Nagios</title>
124 <section>
125 <title>Instalando Nagios</title>
126 <body>
127
128 <p>
129 Antes de comenzar a instalar Nagios, debemos decidir cuál será el
130 sistema maestro (donde instalar Nagios completo y donde almacenar
131 todos los datos) y qué clase de datos queremos obtener. No
132 instalaremos Nagios en todos los sistemas a monitorear, más bien
133 lo haremos solo en el sistema maestro y los **TODO** en los sistemas
134 desde donde recibiremos los datos.
135 </p>
136
137 <p>
138 Instalaremos el software Nagios en el servidor maestro:
139 </p>
140
141 <warn>
142 Nagios 3 todavía está enmascarado por plataforma (~arch masked), así
143 que el primer paso es desenmascarar.
144 </warn>
145
146 <pre caption="Instalando Nagios">
147 # <i>emerge nagios</i>
148 </pre>
149
150 <p>
151 Siga las instrucciones que proporciona el ebuild al final de la
152 instalación (acerca de agregar <c>nagios</c> al nivel de ejecución
153 activo, sobre la configuración del servidor web, accesos de lectura y
154 más).
155 </p>
156
157 <p>
158 De veras. ¡Léalas!
159 </p>
160
161 <!-- TODO directory structure: plugins and so forth -->
162
163 </body>
164 </section>
165
166 <section>
167 <title>Restringiendo el Acceso a la interfaz web de Nagios</title>
168 <body>
169
170 <p>
171 El interfaz web de Nagios permite la ejecución de comandos en los
172 sistemas monitoreados por los plugins. Por esto (y también porque los
173 datos podrían contener información de naturaleza sensible) es mejor
174 restringir el acceso a este interfaz.
175 </p>
176
177 <p>
178 Para eso introduciremos dos restricciones de acceso: uno a nivel de IP
179 (qué sistemas pueden conectarse al interfaz) y otro con una
180 autentificación básica (usando un esquema de usuario/contraseña).
181 </p>
182
183 <p>
184 Primero, modificamos el archivo
185 <path>/etc/apache2/modules/99_nagios3.conf</path> y cambiamos las
186 definiciones <c>allow from</c>:
187 </p>
188
189 <pre caption="Definiciones Allow from">
190 <comment>(Este ejemplo permite acceso solo desde el anfitrión y la red local)</comment>
191 Order allow,deny
192 Allow from 127.0.0.1 192.168.1.1/24
193 </pre>
194
195 <p>
196 Luego, cree una tabla de autorización Apache para definir los usuarios
197 con acceso al interfaz y su autorización. Este archivo se llama
198 <path>.htaccess</path> y contiene la ubicación donde de la información
199 de autentificación.
200 </p>
201
202 <pre caption="Ejemplo de archivo .htaccess">
203 AuthName "Nagios Access"
204 AuthType Basic
205 AuthUserFile /etc/nagios/auth.users
206 Require valid-user
207 </pre>
208
209 <p>
210 Coloque este archivo dentro de los directorios
211 <path>/usr/share/nagios/htdocs</path> y
212 <path>/usr/lib/nagios/cgi-bin</path>.
213 </p>
214
215 <p>
216 Cree el archivo <path>/etc/nagios/auth.users</path> con las
217 credenciales apropiadas por usuario. Por defecto, el ebuild de nagios
218 define un único usuario llamado <c>nagiosadmin</c>. Crearemos este
219 usuario primero:
220 </p>
221
222 <pre caption="Creando el usuario nagiosadmin">
223 # <i>htpasswd2 -c /etc/nagios/auth.users nagiosadmin</i>
224 </pre>
225 </body>
226 </section>
227
228 <section>
229 <title>Obteniendo Acceso a Nagios</title>
230 <body>
231
232 <p>
233 Una vez instaladas Nagios y sus dependencias, inicie Apache y Nagios:
234 </p>
235
236 <pre caption="Iniciando los servicios">
237 # <i>/etc/init.d/nagios start</i>
238 # <i>/etc/init.d/apache2 start</i>
239 </pre>
240
241 <p>
242 Ahora con el navegador, conéctese a <uri
243 link="http://localhost/nagios">http://localhost/nagios</uri>. Haga
244 logon como el usuario <c>nagiosadmin</c> y navegue a la página <e>Host
245 Detail</e>. Allí debería poder ver los datos del monitoreo del sistema
246 local.
247 </p>
248 </body>
249 </section>
250 </chapter>
251
252 <chapter>
253 <title>Instalando los Demonios Clientes</title>
254 <section>
255 <title>Introducción</title>
256 <body>
257
258 <p>
259 Existen varias maneras de monitorear anfitriones remotos.
260 </p>
261
262 <ol>
263 <li>
264 Usando el demonio <e>NRPE</e> en el anfitrión remoto y que Nagios
265 se comunique con él por medio del plugin <path>check_nrpe</path>
266 </li>
267 <li>
268 Usando una conexión SSH sin contraseña para ejecutar comandos remotamente
269 </li>
270 <li>
271 Capturando eventos SNMP y creando alertas con Nagios
272 </li>
273 </ol>
274
275 <p>
276 Nos concentraremos en el método NRPE, que es el más popular y
277 dejaremos a los demás métodos como ejercicios interesantes.
278 </p>
279 </body>
280 </section>
281
282 <section>
283 <title>Instalando NRPE</title>
284 <body>
285
286 <p>
287 Con NRPE cada anfitrión remoto corre un instancia de un demonio (el
288 demonio NRPE), que permite al sistema central Nagios interrogar
289 respecto a ciertos datos. Se puede ejecutar el demonio NRPE por sí
290 mismo o por medio de un programa inetd. Dejaremos el método inetd como
291 un ejercicio para el lector y usaremos como ejemplo la ejecución de
292 NRPE por sí mismo.
293 </p>
294
295 <p>
296 Primero, instalar el plugin NRPE:
297 </p>
298
299 <pre caption="Instalando el plugin NRPE">
300 # <i>emerge nagios-nrpe</i>
301 </pre>
302
303 <p>
304 Luego modifique el archivo <path>/etc/nagios/nrpe.cfg</path> para
305 permitirle al sistema central Nagios acceso al demonio NRPE y
306 personalizar la instalación a gusto. Otro cambio importante al archivo
307 <path>nrpe.cfg</path> es la lista de comandos soportados por NRPE. Por
308 ejemplo, para usar la versión 2.12 de <c>nagios-nrpe</c> con Nagios 3,
309 deberá cambiar la trayectoria <path>/usr/nagios/libexec</path> a
310 <path>/usr/lib/nagios/plugins</path>. Finalmente, ejecute el demonio
311 NRPE:
312 </p>
313
314 <pre caption="Ejecutando el demonio NRPE">
315 # <i>/etc/init.d/nrpe start</i>
316 </pre>
317
318 <p>
319 De último debemos configurar el sistema central Nagios para conectarse
320 a esta instancia particular de NRPE y solicitar los datos
321 requeridos. A modo de presentación de la sintaxis de los objetos
322 Nagios, nuestra próxima sección cubrirá esto un poco más
323 detalladamente.
324 </p>
325 </body>
326 </section>
327
328 <section>
329 <title>Configurando un Anfitrión Remoto</title>
330 <body>
331
332 <note>
333 El siguiente tutorial práctico es solo un ejemplo para presentarle al
334 usuario el modelo de objetos según Nagios. No tome esto como un
335 ejemplo de la mejor praxis de configuración de Nagios.
336 </note>
337
338 <p>
339 Primero, modifique <path>/etc/nagios/nagios.cfg</path> y coloque una
340 directiva <c>cfg_dir</c>. Esto ordenará a Nagios leer todos los
341 archivos de configuración de objetos en el directorio especificado -
342 en nuestro ejemplo el directorio contendrá las definiciones de los
343 sistemas remotos.
344 </p>
345
346 <pre caption="Modificando el archivo /etc/nagios/nagios.cfg">
347 cfg_dir=/etc/nagios/objects/remote
348 </pre>
349
350 <p>
351 Luego cree el directorio y comienze con el primer archivo,
352 <path>nrpe-command.cfg</path>. En este archivo configuraremos un
353 comando Nagios llamado <c>check_nrpe</c> que usaremos para conectar a
354 un plugin (identificado por <c>$ARG1$</c>) en un sistema remoto
355 (identificado por <c>$HOSTADDRESS$</c>). La variable <c>$USER1$</c> es
356 un puntero por defecto al directorio de instalación de Nagios (por
357 ejemplo <path>/usr/nagios/libexec</path>).
358 </p>
359
360 <pre caption="Definiendo el comando check_nrpe">
361 # <i>nano /etc/nagios/objects/remote/nrpe-command.cfg</i>
362
363 define command {
364 command_name check_nrpe
365 command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
366 }
367 </pre>
368
369 <p>
370 Luego, creamos el archivo <path>nrpe-hosts.cfg</path> donde definimos
371 los anfitrion(es) remotos a monitorear. En este ejemplo definiremos
372 dos:
373 </p>
374
375 <pre caption="Definiendo dos anfitriones remotos">
376 # <i>nano /etc/nagios/objects/remote/nrpe-hosts.cfg</i>
377
378 define host {
379 use linux-server
380 host_name webber
381 alias Gentoo Linux Web Server
382 address 192.168.2.1
383 }
384
385 define host {
386 use linux-server
387 host_name isync
388 alias Gentoo Linux RSync server
389 address 192.168.2.2
390 }
391 </pre>
392
393 <p>
394 Finalmente definimos los servicios que queremos revisar en estos
395 anfitriones. En el ejemplo chequearemos la carga del sistema y el uso
396 de almacenamiento en disco.
397 </p>
398
399 <pre caption="Definiendo los servicios a revisar">
400 # <i>nano /etc/nagios/objects/remote/nrpe-services.cfg</i>
401
402 define service {
403 use generic-service
404 host_name webber,isync
405 service_description Current Load
406 check_command check_nrpe!check_load
407 }
408
409 define service {
410 use generic-service
411 host_name webber,isync
412 service_description Root Partition
413 check_command check_nrpe!check_disk
414 }
415 </pre>
416
417 <p>
418 Bueno, eso es todo. Ahora al revisar los detalles de servicios en el
419 sitio de monitoreo, veremos que los anfitriones remotos están
420 conectados y transmitiendo sus datos al servidor Nagios.
421 </p>
422 </body>
423 </section>
424
425 <section>
426 <title>Usando una Conexión SSH sin Contraseña</title>
427 <body>
428
429 <p>
430 Tal como hicimos creando el comando <c>check_nrpe</c>, podemos crear
431 un comando que ejecute un comando remotamente por medio de una
432 conexión SSH sin contraseña. Dejamos esto como un interesante
433 ejercicio al lector.
434 </p>
435
436 <p>
437 Algunos datos al respecto:
438 </p>
439
440 <ul>
441 <li>
442 Asegúrese de establecer la conexión SSH sin contraseña para un
443 usuario dedicado (y que definitivamente no sea el usuario root) -
444 de todas formas la mayoría de las revisiones no requieren
445 privilegios de superusuario.
446 </li>
447 <li>
448 La creación de una conexión SSH sin contraseña puede hacerse con
449 <c>ssh-keygen</c> y luego instalándola en el sistema destino
450 agregando la clave pública al archivo
451 <path>.ssh/authorized_keys</path>
452 </li>
453 </ul>
454 </body>
455 </section>
456 </chapter>
457
458 <chapter>
459 <title>Más Recursos</title>
460 <section>
461 <title>Agregando Revisiones Específicas a Gentoo</title>
462 <body>
463
464 <p>
465 Es bastante sencillo extender la funcionalidad de Nagios para incluir
466 chequeos específicas a Gentoo, tales como los de seguridad (GLSAs). El
467 desarrollador Gentoo Wolfram Schlich tiene <uri
468 link="http://dev.gentoo.org/~wschlich/misc/nagios/nagios-plugins-extra/nagios-plugins-extra-4/plugins/">disponible</uri>
469 el guión <c>check_glsa.sh</c>, entre otros.
470 </p>
471 </body>
472 </section>
473
474 <section>
475 <title>Recursos Nagios</title>
476 <body>
477
478 <ul>
479 <li>
480 <uri>http://www.nagios.org</uri> es el sitio, web oficial de Nagios
481 </li>
482 <li>
483 <uri>http://www.nagiosexchange.org</uri> es donde se pueden
484 encontrar plugins y guiones para Nagios
485 </li>
486 <li>
487 <uri>http://www.nagiosforge.org</uri>, donde los desarrolladores
488 albergan proyectos para agregarle funcionalidad a Nagios
489 </li>
490 <li>
491 <uri>http://www.nagioswiki.org</uri>, para más información y
492 tutoriales acerca de Nagios
493 </li>
494 </ul>
495 </body>
496 </section>
497 </chapter>
498 </guide>