Slack Notifications Stopped Working
If Slack integration with Nagios xi stopped working for you with an error similar to the one below:
500 Can't connect to iaitdepartment.slack.com:443 (SSL connect attempt failed with unknown errorerror:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure)
this means that most likely you are using CentOS/RHEL 6 and older versions of TLS (v1.0 or 1.1).
The Slack announcement was made here:
https://api.slack.com/changelog/2019-07-deprecate-early-tls-versions
This issue will impact most CentOS/RHEL 6 users as it doesn't appear that the Perl packages available from official repos are able to use SNI in secure connections.
A quick work around would be to be to install NCPA on another machine(CentOS/RHEL 7 for example that have updated Perl packages) along with a copy of the slack_nagios.pl plugin, and then configure the slack_host_notification_handler and slack_service_notification_handler commands to execute the slack_nagios.pl script via ncpa:
$USER1$/check_ncpa.py -H CENTOS7MACHINE -t 'TOKEN' -M 'plugins/slack_nagios.pl' -q 'args=-field slack_channel="#hosts" -field HOSTALIAS="$HOSTNAME$" -field HOSTSTATE="$HOSTSTATE$" -field HOSTOUTPUT="$HOSTOUTPUT$" -field NOTIFICATIONTYPE="$NOTIFICATIONTYPE$"'
$USER1$/check_ncpa.py -H CENTOS7MACHINE -t 'TOKEN' -M 'plugins/slack_nagios.pl -q 'args=-field slack_channel="#services" -field HOSTALIAS="$HOSTNAME$" -field SERVICEDESC="$SERVICEDESC$" -field SERVICESTATE="$SERVICESTATE$" -field SERVICEOUTPUT="$SERVICEOUTPUT$" -field NOTIFICATIONTYPE="$NOTIFICATIONTYPE$"'
Configuring the Slack plugin: https://assets.nagios.com/downloads/nagiosxi/docs/Integrating-Slack-With-Nagios-xi.pdf
NCPA install and documentation: https://www.nagios.org/ncpa/
How to run third party scripts with NCPA: https://support.nagios.com/kb/article/nagios-xi-using-scripts-plugins-with-ncpa-722.html