CHECK_RBL(7)

πŸ’– check_rbl β€” the manual page, but make it make sense πŸ’–

okay bestie, sit down, hydrate, because this is CHECK_RBL(7) from the User Contributed Perl Documentation section and it's genuinely iconic. yes, 7 as in miscellaneous, as in "the vibes section." and yes, it's check_rbl with an underscore, no cap. ✨


🌸 NAME 🌸

check_rbl β€” checks SMTP black- or white- listing status πŸ•΅οΈβ™€οΈ


πŸ’… DESCRIPTION πŸ’…

check_rbl is a Nagios plugin whose whole entire job is checking SMTP black- or white- listing status. that's it. that's the gig. main character energy, honestly. πŸ‘‘


⭐ VERSION ⭐

Version 1.7.0 πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

check_rbl -H hostname --server servername [options]

like, that's the shape of it. host, server, options. go off. 🫢


πŸ’– REQUIRED ARGUMENTS πŸ’–

these two? not optional. periodt.

  • -H, --host=STRING β€” the SMTP server you wanna check. heads up tho: if you give a hostname, it gets resolved to its IP first. πŸ”
  • -s, --server=STRING β€” the RBL server. and the way that this one may be repeated?? yeah. stack 'em up, queen. πŸ₯ž

✨ OPTIONS ✨

here's the whole menu, no skips, no summarising, we don't do that here:

  • -?, --usage β€” prints usage information. the quick lil reminder. πŸ™ˆ
  • -h, --help β€” prints the detailed help screen. the full lore. πŸ“–
  • -V, --version β€” prints version information. 🏷️
  • --extra-opts=[section][@file] β€” reads options from an ini file. see https://www.monitoring-plugins.org/doc/extra-opts.html for usage and examples. πŸ“„
  • -c, --critical=INTEGER β€” how many blacklisting servers it takes to trigger a critical warning. 🚨
  • -w, --warning=INTEGER β€” how many blacklisting servers it takes to trigger a warning. ⚠️
  • -d, --debug β€” prints debugging information. the receipts. 🧾
  • -U, --url=STRING β€” URL to check. will be ignored if host is set β€” so don't do both and then act surprised. πŸ’€
  • -r, --retry=INTEGER β€” number of times to try a DNS query (default is 4). πŸ”
  • --workers=INTEGER β€” number of parallel checks. multitasking icon. ⚑
  • --whitelistings, --wl β€” check whitelistings instead of blacklistings. plot twist. 🀍
  • --query-timeout=INTEGER β€” timeout of the RBL queries. ⏳
  • -a, --append=STRING β€” append string at the end of the plugin output. lil signature. πŸ’¬
  • -n, --nameserver=STRING β€” use this nameserver IP as DNS resolver (only one server is supported β€” one. singular. don't get greedy). πŸ–₯️
  • -t, --timeout=INTEGER β€” seconds before the plugin times out (default: 15). ⏰
  • -v, --verbose β€” show details for command-line debugging (can repeat up to 3 times). yes bestie, repeat. πŸ—£οΈ

🌈 EXAMPLE 🌈

check_rbl -t 30 -H matteocorti.ch -s zen.spamhaus.org -s bl.spamcop.net

look at that. two -s flags. she's doing the most and I love that for her. 😌


πŸ”₯ DIAGNOSTICS πŸ”₯

you can specify multiple --verbose options to increase the program verbosity. and --debug can be used to display the process and internals of the querying mechanism β€” aka the behind-the-scenes, the BTS, the director's commentary. 🎬


πŸ‘‘ EXIT STATUS πŸ‘‘

  • 0 if OK βœ…
  • 1 in case of a warning ⚠️
  • 2 in case of a critical status 🚨
  • 3 in case of an unknown problem ❓

πŸŽ€ DEPENDENCIES πŸŽ€

ngl the original literally says "check_updates depends on" here (yes, check_updates, we're all just gonna look at each other about it πŸ™ˆ) and then gives us this list:

  • Capture::Tiny
  • Data::Validate::Domain
  • Data::Validate::IP
  • Getopt::Long
  • IO::Select
  • Monitoring::Plugin
  • Monitoring::Plugin::Threshold
  • Net::DNS
  • Readonly

that's the whole squad. πŸ’œ


🧚 CONFIGURATION 🧚

options can be specified in an ini file. see https://www.monitoring-plugins.org/doc/extra-opts.html πŸ“


🌸 INCOMPATIBILITIES 🌸

None reported. she plays nice with others, fr fr. πŸ•ŠοΈ


⭐ SEE ALSO ⭐

Nagios documentation πŸ“š


πŸ’€ BUGS AND LIMITATIONS πŸ’€

No bugs have been reported. iconic behaviour, honestly.

please report any bugs or feature requests through the web interface at https://github.com/matteocorti/check_rbl/issues β€” the devs wanna hear from you, bestie. 🫢


✨ AUTHOR ✨

Matteo Corti <matteo@corti.li> β€” see AUTHORS for the complete list. πŸ“‡


Copyright (c) 2009-2022 Matteo Corti <matteo@corti.li>

Copyright (c) 2009 ETH Zurich.

Copyright (c) 2010 Elan Ruusamae <glen@delfi.ee>.

Copyright (c) 2022 Claudio Kuenzler <ck@claudiokuenzler.com>.

this module is free software; you can redistribute it and/or modify it under the terms of GNU general public license (gpl) version 3. see the LICENSE file for details. πŸ“œ


🚨 DISCLAIMER OF WARRANTY 🚨

okay this next bit is in ALL CAPS in the original and that's because it is serious β€” I'm not softening a single word of it:

BECAUSE THIS SOFTWARE IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE SOFTWARE, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE SOFTWARE "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE IS WITH YOU. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR, OR CORRECTION.

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE SOFTWARE AS PERMITTED BY THE ABOVE LICENCE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE SOFTWARE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE SOFTWARE TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

bestie. read it. it means what it says. 🫠

πŸ¦‹ ACKNOWLEDGMENTS πŸ¦‹

  • Elan RuusamΓ€e for the improved parallel support and several fixes πŸ™Œ
  • Victor V Kudlak for parallel support πŸ™Œ
  • Jan Kantert for whitelistings support πŸ™Œ

and that's the whole page!! perl v5.40.1, dated 2026-02-11 β€” that's the version and date this whole thing was served up with, so now you know who to thank. mwah, go check some RBLs πŸ’‹πŸ’–

πŸ“¦ where this page comes from