DOKK / manpages / debian 12 / xymon / protocols.cfg.5.en
PROTOCOLS.CFG(5) File Formats Manual PROTOCOLS.CFG(5)

protocols.cfg - Configuration of TCP network services

$XYMONHOME/etc/protocols.cfg

protocols.cfg contains definitions of how xymonnet(1) should test a TCP-based network service (i.e. all common network services except HTTP and DNS). For each service, a simple dialogue can be defined to check that the service is functioning normally, and optional flags determine if the service has e.g. a banner or requires SSL- or telnet-style handshaking to be tested.

protocols.cfg is a text file. A simple service definition for the SMTP service would be this:


[smtp]
send "mail\r\nquit\r\n"
expect "220"
options banner

This defines a service called "smtp". When the connection is first established, xymonnet will send the string "mail\r\nquit\r\n" to the service. It will then expect a response beginning with "220". Any data returned by the service (a so-called "banner") will be recorded and included in the status message.

The full set of commands available for the protocols.cfg file are:

[NAME]
Define the name of the TCP service, which will also be the column-name in the resulting display on the test status. If multiple tests share a common definition (e.g. ssh, ssh1 and ssh2 are tested identically), you may list these in a single "[ssh|ssh1|ssh2]" definition, separating each service-name with a pipe-sign.

Defines the strings to send to the service after a connection is established, and the response that is expected. Either of these may be omitted, in which case xymonnet(1) will simply not send any data, or match a response against anything.

The send- and expect-strings use standard escaping for non-printable characters. "\r" represents a carriage-return (ASCII 13), "\n" represents a line-feed (ASCII 10), "\t" represents a TAB (ASCII 8). Binary data is input as "\xNN" with NN being the hexadecimal value of the byte.

Define the default TCP port-number for this service. If no portnumber is defined, xymonnet(1) will attempt to lookup the portnumber in the standard /etc/services file.

Defines test options. The possible options are
banner - include received data in the status message
ssl - service uses SSL so perform an SSL handshake
telnet - service is telnet, so exchange telnet options

$XYMONHOME/etc/protocols.cfg

xymonnet(1)

Version 4.3.30: 4 Sep 2019 Xymon