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> |