{"id":551,"date":"2026-09-06T01:17:42","date_gmt":"2026-09-06T04:17:42","guid":{"rendered":"https:\/\/www.linuxpro.com.br\/2026\/09\/a-historia-do-nagios\/"},"modified":"2026-09-10T23:07:09","modified_gmt":"2026-09-11T02:07:09","slug":"a-historia-do-nagios","status":"publish","type":"post","link":"https:\/\/www.linuxpro.com.br\/es\/2026\/09\/a-historia-do-nagios\/","title":{"rendered":"La historia de Nagios: el santo que se convirti\u00f3 en el pager"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" alt=\"Mascote do LinuxPro pressionando alerta vermelho no painel Nagios\" src=\"\/wp-content\/uploads\/2026\/09\/nagios-v4.webp\" width=\"1052\" height=\"652\" \/><\/p>\n<p>En 14 de marzo de 1999 Ethan Galstad lanz\u00f3 NetSaint 0.0.1. Pensaba que unas doce personas se apuntar\u00edan. El bicho hac\u00eda ping al host, ejecutaba un plugin, enviaba correo y pager cuando el servicio ca\u00eda \u2014 y de nuevo cuando volv\u00eda. En 2002 el nombre cambi\u00f3 a Nagios: \u201cNagios Ain\u2019t Gonna Insist On Sainthood\u201d, hagios = santo, porque NetSaint choc\u00f3 con la marca. Veintisiete a\u00f1os despu\u00e9s Nagios Core 4.5.14 (5 de agosto de 2026) sigue siendo GPLv2, sigue siendo C, sigue siendo la forma en que toda una generaci\u00f3n de administradores Linux aprendi\u00f3 a vigilar m\u00e1quinas. La N manuscrita de la portada es el mismo dibujo torcido de siempre.<\/p>\n<p><!-- more --><\/p>\n<h2>1996: un ping en DOS y un pager<\/h2>\n<p>Galstad, en EE. UU., escribi\u00f3 un peque\u00f1o programa MS-DOS para hacer ping a un servidor Novell NetWare y activar un buscapersonas num\u00e9rico. La comprobaci\u00f3n y el aviso ya ven\u00edan de una herramienta de terceros \u2014 la semilla del modelo de plugin. En 1998 pens\u00f3 en monitorizaci\u00f3n alojada y lo reescribi\u00f3 para Linux. En marzo de 1999 public\u00f3 el c\u00f3digo. Los plugins salieron del tarball poco despu\u00e9s y se convirtieron en un proyecto aparte: hoy todav\u00eda es <code data-no-translation=\"\">nagios-plugins<\/code> \/ Monitoring Plugins. Sin ese recorte \u2014 un binario tonto que solo programa tareas, y un ej\u00e9rcito de <code data-no-translation=\"\">check_*<\/code> \u2014 Nagios no se habr\u00eda convertido en est\u00e1ndar.<\/p>\n<h2>2002: el santo que no insisti\u00f3<\/h2>\n<p>Marca parecida, abogado, acuerdo. Galstad cambi\u00f3 el nombre aun as\u00ed. Nagios se pronuncia \u201cn\u00e1-gui-ous\u201d. La arquitectura qued\u00f3: daemon en C, archivo de texto como fuente de verdad (<code data-no-translation=\"\">nagios.cfg<\/code>, hosts.cfg, services.cfg), CGI en Perl\/C en Apache, estado OK \/ WARNING \/ CRITICAL \/ UNKNOWN, hard\/soft state, flap detection, notificaci\u00f3n por contacto. NRPE para comprobar Linux desde dentro. NSCA para el check pasivo (es el host el que empuja). Quien haya configurado 400 host a mano recuerda el detalle: Nagios no dibuja gr\u00e1ficos. Nagios <em>grita<\/em>.<\/p>\n<p>En junio de 2005 fue Project of the Month en SourceForge. En 2006 eWeek lo incluy\u00f3 en la lista de herramientas \u201cmust have\u201d para la empresa. Todav\u00eda no hab\u00eda empresa. Estaban Ethan y la lista.<\/p>\n<h2>2.0, 3.0, 4.0: NEB, escala, Core<\/h2>\n<p>Nagios 2.0 (febrero de 2006): interfaz nueva y el Event Broker (NEB): API para que los m\u00f3dulos vean la estructura interna. De ah\u00ed salieron NDOUtils (estado en MySQL), de ah\u00ed lo que XI y Centreon aprovecharon. Nagios 3.0 (marzo de 2008): monitorizaci\u00f3n adaptativa y aliento para instalaciones grandes. Nagios 4 (2014) reescribi\u00f3 el scheduler: menos CPU para la misma cantidad de checks.<\/p>\n<p>Hacia 2007 Galstad fund\u00f3 Nagios Enterprises. El Core qued\u00f3 bajo GPLv2. El producto de pago \u2014 Nagios XI, despu\u00e9s Log Server, Network Analyzer, Fusion \u2014 apila interfaz, asistente, informes y soporte encima del mismo motor. Open core antes de que la moda tuviera nombre. En 2024 la empresa cumpli\u00f3 25 a\u00f1os. XI, Log Server, Analyzer y Fusion ya van por la l\u00ednea 2026R1. La World Conference 2026 se celebra en St. Paul, Minnesota, del 14 al 17 de septiembre, en la sede.<\/p>\n<h2>La escisi\u00f3n: Icinga, Naemon, Checkmk<\/h2>\n<p>En 2009 parte de la comunidad \u2014 cansada del ritmo y de la l\u00ednea entre lo que era libre y lo que iba a XI \u2014 fork\u00f3 el proyecto. Naci\u00f3 <strong>Icinga<\/strong>. Despu\u00e9s lleg\u00f3 Naemon (2014), fork del Core 4. Check_MK de Mathias Kettner (hoy Checkmk) empez\u00f3 como un conjunto de plugins y se convirti\u00f3 en producto. Centreon, Shinken, Opsview. La API de plugins era tan sencilla que el ecosistema entero cabe en un <code data-no-translation=\"\">check_disk -w 20% -c 10%<\/code>. El precio: configuraci\u00f3n en archivos de texto que no escala sin herramientas. Ah\u00ed es donde entra <a href=\"\/es\/2026\/09\/a-historia-do-nagiosql\/\">NagiosQL<\/a>.<\/p>\n<h2>Lo que ense\u00f1\u00f3 Nagios<\/h2>\n<ul>\n<li>Host y service son objetos. La dependencia (parent) evita la tormenta de alertas cuando cae el switch.<\/li>\n<li>Check es un proceso externo. Cualquier lenguaje. Timeout. C\u00f3digo de salida 0\/1\/2\/3.<\/li>\n<li>La notificaci\u00f3n tiene ventana, escalado, tiempo de inactividad y acuse de recibo.<\/li>\n<li>El mapa de estado CGI \u2014 los cuadraditos verdes y rojos \u2014 es la est\u00e9tica de una era. Grafana no exist\u00eda.<\/li>\n<\/ul>\n<p>O <a href=\"\/es\/2026\/09\/a-historia-do-zabbix\/\">Zabbix<\/a> tom\u00f3 el otro camino: \u00edtem en la base de datos, agente que recolecta, disparador que eval\u00faa, gr\u00e1fico nativo. Prometheus, en este blog, es la tercera v\u00eda: <a href=\"\/es\/2026\/09\/monitorando-servidores-linux-com-prometheus\/\">pull, m\u00e9trica, Node Exporter<\/a>.<\/p>\n<h2>2026: Core 4.5.14, XI 2026R1<\/h2>\n<p>El Core 4.5.14 sali\u00f3 el 5 de agosto de 2026. GitHub <code data-no-translation=\"\">NagiosEnterprises\/nagioscore<\/code>. NRPE 4.x sigue siendo la forma cl\u00e1sica de hablar con Linux. La distro empaqueta 4.4\/4.5. XI 2026R1.4 a\u00f1adi\u00f3 un asistente para Nutanix y para switch. No es el motor de la nube \u2014 Zabbix y Prometheus se comieron esa parte \u2014 pero en un NOC de empresa que ya tiene mil <code data-no-translation=\"\">.cfg<\/code>, no se va.<\/p>\n<h2>Nagios en la pr\u00e1ctica, en cinco minutos<\/h2>\n<p>Historia aparte, el motor a\u00fan se instala y ejecuta con dos comandos. En Debian o Ubuntu:<\/p>\n<pre data-no-translation=\"\"><code class=\"language-bash\" data-no-translation=\"\">sudo apt update\nsudo apt install nagios4 monitoring-plugins nagios-nrpe-plugin\n<\/code><\/pre>\n<p>La configuraci\u00f3n es lo que toda la serie ense\u00f1\u00f3 a odiar y a amar: <strong>el archivo de texto es la verdad<\/strong>. Todo vive en <code data-no-translation=\"\">\/etc\/nagios4\/<\/code>, y cada cosa monitorizada es un objeto. Un host nuevo cabe en ocho l\u00edneas:<\/p>\n<pre data-no-translation=\"\"><code class=\"language-text\" data-no-translation=\"\">define host {\n    use             generic-host\n    host_name       servidor-web\n    address         192.168.0.20\n    max_check_attempts  3\n}\n\ndefine service {\n    use                 generic-service\n    host_name           servidor-web\n    service_description Espaco em disco\n    check_command       check_disk!20%!10%!\/\n}\n<\/code><\/pre>\n<p>Ese <code data-no-translation=\"\">check_disk!20%!10%!\/<\/code> es el alma del proyecto: Nagios no sabe lo que es un disco. Simplemente llama a un programa externo, pasa argumentos separados por <code data-no-translation=\"\">!<\/code> y observa el <strong>c\u00f3digo de salida<\/strong> \u2014 0 es OK, 1 es WARNING, 2 es CRITICAL, 3 es UNKNOWN. Cualquier cosa que respete ese contrato se convierte en un check, en cualquier lenguaje:<\/p>\n<pre data-no-translation=\"\"><code class=\"language-bash\" data-no-translation=\"\"># rodando um plugin na m\u00e3o, como o daemon faria\n\/usr\/lib\/nagios\/plugins\/check_disk -w 20% -c 10% -p \/\necho $?      # 0 = OK, 1 = WARNING, 2 = CRITICAL, 3 = UNKNOWN\n\n# um \"plugin\" seu funciona igual: escreva o arquivo abaixo em\n# \/usr\/lib\/nagios\/plugins\/check_meu e marque como executavel\n#\n#   #!\/bin\/bash\n#   if pgrep -x meu-daemon &gt;\/dev\/null; then\n#       echo \"OK - rodando\"; exit 0\n#   fi\n#   echo \"CRITICAL - parado\"; exit 2\n\nsudo chmod +x \/usr\/lib\/nagios\/plugins\/check_meu\n\/usr\/lib\/nagios\/plugins\/check_meu; echo $?\n<\/code><\/pre>\n<p>Antes de recargar, valida \u2014 Nagios se niega a arrancar con una configuraci\u00f3n rota, y el verificador se\u00f1ala el archivo y la l\u00ednea:<\/p>\n<pre data-no-translation=\"\"><code class=\"language-bash\" data-no-translation=\"\">sudo nagios4 -v \/etc\/nagios4\/nagios.cfg\nsudo systemctl reload nagios4\n<\/code><\/pre>\n<p>Para comprobar desde un servidor remoto \u2014 carga, memoria, procesos, cosas que ping no ve \u2014 se instala <strong>NRPE<\/strong> en el destino y se llama desde fuera con <code data-no-translation=\"\">check_nrpe<\/code>. Es el modelo activo. Cuando el destino est\u00e1 detr\u00e1s de NAT o firewall y es \u00e9l quien tiene que hablar, se invierte con <strong>NSCA<\/strong>: el host env\u00eda el resultado al servidor. Dos mecanismos, la misma idea de c\u00f3digo de salida.<\/p>\n<h2>L\u00ednea de tiempo<\/h2>\n<ul>\n<li><strong>1996<\/strong> \u2014 Ethan Galstad escribe un programa MS-DOS que hace ping a servidores NetWare y env\u00eda mensajes a un busca.<\/li>\n<li><strong>1998<\/strong> \u2014 la idea se convierte en monitorizaci\u00f3n alojada y se reescribe para Linux.<\/li>\n<li><strong>14\/03\/1999<\/strong> \u2014 lanzamiento de NetSaint 0.0.1, con el c\u00f3digo abierto.<\/li>\n<li><strong>2002<\/strong> \u2014 conflicto de marca obliga a cambiar el nombre: nace Nagios, \u201cNagios Ain\u2019t Gonna Insist On Sainthood\u201d.<\/li>\n<li><strong>jun\/2005<\/strong> \u2014 Project of the Month en SourceForge.<\/li>\n<li><strong>feb\/2006<\/strong> \u2014 Nagios 2.0 incorpora el Event Broker (NEB), la API que abrir\u00eda camino a NDOUtils, XI y Centreon.<\/li>\n<li><strong>2007<\/strong> \u2014 Galstad funda Nagios Enterprises; el Core sigue siendo GPLv2 y XI nace como producto de pago.<\/li>\n<li><strong>mar\/2008<\/strong> \u2014 Nagios 3.0: monitorizaci\u00f3n adaptativa y aliento para instalaciones grandes.<\/li>\n<li><strong>2009<\/strong> \u2014 parte de la comunidad hace un fork del proyecto y crea el <strong>Icinga<\/strong>.<\/li>\n<li><strong>2014<\/strong> \u2014 Nagios 4 reescribe el scheduler; en el mismo per\u00edodo surge Naemon, fork del Core 4.<\/li>\n<li><strong>2024<\/strong> \u2014 Nagios Enterprises cumple 25 a\u00f1os.<\/li>\n<li><strong>05\/08\/2026<\/strong> \u2014 sale Nagios Core 4.5.14, todav\u00eda en C y todav\u00eda GPLv2.<\/li>\n<\/ul>\n<h2>Cierre<\/h2>\n<p>Un ping en DOS, un santo que perdi\u00f3 la marca y un demonio que solo programa plugins. La siguiente generaci\u00f3n bifurc\u00f3. La empresa hizo XI. El Core, GPLv2, sigue respondiendo <code data-no-translation=\"\">nagios -v \/etc\/nagios\/nagios.cfg<\/code>. 4.5.14, St. Paul, buscapersonas al principio, webhook al final. La N subrayada sigue torcida a prop\u00f3sito.<\/p>\n<p>La GUI que escribe el cfg: <a href=\"\/es\/2026\/09\/a-historia-do-nagiosql\/\">NagiosQL<\/a>. El rival let\u00f3n: <a href=\"\/es\/2026\/09\/a-historia-do-zabbix\/\">Zabbix<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>Em 14 de mar\u00e7o de 1999 Ethan Galstad soltou o NetSaint 0.0.1. Ele achava que umas doze pessoas iam ligar. O bicho pingava host, rodava plugin, mandava e-mail e pager quando o servi\u00e7o ca\u00eda \u2014 e de novo quando voltava. Em 2002 o nome virou Nagios: \u201cNagios Ain\u2019t Gonna Insist On Sainthood\u201d, hagios = santo, &#8230; <a title=\"La historia de Nagios: el santo que se convirti\u00f3 en el pager\" class=\"read-more\" href=\"https:\/\/www.linuxpro.com.br\/es\/2026\/09\/a-historia-do-nagios\/\" aria-label=\"Leer m\u00e1s sobre A hist\u00f3ria do Nagios: o santo que virou o pager\">Leer m\u00e1s<\/a><\/p>","protected":false},"author":0,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[21,2,111,120],"tags":[250,126,248,249],"class_list":["post-551","post","type-post","status-publish","format-standard","hentry","category-infra","category-linux","category-opensource","category-servidores","tag-icinga","tag-monitoramento","tag-nagios","tag-nrpe"],"_links":{"self":[{"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/posts\/551","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/comments?post=551"}],"version-history":[{"count":4,"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/posts\/551\/revisions"}],"predecessor-version":[{"id":1517,"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/posts\/551\/revisions\/1517"}],"wp:attachment":[{"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/media?parent=551"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/categories?post=551"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/tags?post=551"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}