Реализация проверок net.tcp.service и net.udp.service

В этом разделе подробно описана реализация проверок net.tcp.service и net.udp.service для различных сервисов, которые можно указать в параметре service.

Параметры элемента данных net.tcp.service:

  • ftp – создает TCP-соединение и ожидает, что первые 4 символа ответа будут 220 , после чего посылает QUIT\r\n. По умолчанию используется порт 21, если он не указан;
  • http – создает TCP-соединение без ожидания и отсылки чего-либо. По умолчанию используется порт 80, если он не указан;
  • https – использует (и работает только с) libcurl, не проверяет подлинность сертификата, не проверяет имя хоста в SSL-сертификате, только извлекает заголовок ответа (запрос HEAD). По умолчанию используется порт 443, если он не указан;
  • imap – создает TCP-соединение и ожидает, что первые 4 символа ответа будут * OK, после чего посылает a1 LOGOUT\r\n. По умолчанию используется порт 143, если он не указан;
  • ldap – открывает соединение на сервер LDAP и выполняет операцию поиска (LDAP search) с фильтром, выставленным в (objectClass=*). Ожидает успешного извлечения первого параметра у первого элемента. По умолчанию используется порт 389, если он не указан;
  • nntp – создает TCP-соединение и ожидает, что первые 3 символа ответа будут 200 или 201, после чего посылает QUIT\r\n. По умолчанию используется порт 119, если он не указан;
  • pop – создает TCP-соединение и ожидает, что первые 3 символа ответа будут +OK, после чего посылает "QUIT\r\n". По умолчанию используется порт 110, если он не указан;
  • smtp – создает TCP-соединение и ожидает, что первые 3 символа ответа будут 220, после которых идет пробел, конец строки или минус. Строки, содержащие минус, относятся к многострочному ответу, и ответ будет заново читаться до тех пор, пока не будет получена строка без минуса. После этого отсылается QUIT\r\n. По умолчанию используется порт 25, если он не указан;
  • ssh – создает TCP-соединение. Если соединение было установлено, обе стороны обмениваются строками идентификации (SSH-major.minor-XXXX), где major и minor являются версиями протокола, а XXXX – строкой. Подсистема проверяет, найдена ли соответствующая спецификации строка, и затем отсылает назад строку "SSH-major.minor-zabbix_agent\r\n" или "0\n" при несовпадении. По умолчанию используется порт 22, если он не указан;
  • tcp – создает TCP-соединение без ожидания и отсылки чего-либо. В отличие от остальных проверок, требует указания параметра "порт";
  • telnet – создает TCP-соединение и ожидает приглашение на ввод имени пользователя (: в конце строки). По умолчанию используется порт 23, если он не указан.

Параметры элемента данных net.udp.service:

  • ntp – отсылает по UDP пакет SNTP и проверяет ответ в соответствии с RFC 4330. По умолчанию используется порт 123, если он не указан.