wget https://raw.githubusercontent.com/panticz/installit/master/install.icinga.sh -O - | bash -
#!/bin/bash # ensure that this script is run by root if [ $(id -u) -ne 0 ]; then sudo $0 exit fi debconf-set-selections <<\EOF postfix postfix/mailname string $(hostname) postfix postfix/main_mailer_type select Internet Site icinga-common icinga/check_external_commands select false icinga-cgi icinga/adminpassword-repeat string icingaadmin icinga-cgi icinga/adminpassword string icingaadmin icinga-cgi icinga/httpd select apache2 EOF # install the latest version . /etc/os-release if [ "${ID}" == "debian" ]; then # add debmon.org Icinga repository DIST=$(grep PRETTY_NAME /etc/os-release | cut -d "(" -f2 | cut -d ")" -f1) echo "deb http://debmon.org/debmon debmon-${DIST} main" > /etc/apt/sources.list.d/debmon.list wget -q http://debmon.org/debmon/repo.key -O - | apt-key add - apt-get update fi # install icinga apt-get install -y icinga # disable double log output to syslog sed -i 's|use_syslog=1|use_syslog=0|g' /etc/icinga/icinga.cfg # show 1000 results by default sed -i 's|result_limit=50|result_limit=1000|g' /etc/icinga/cgi.cfg # restart icinga /etc/init.d/icinga restart # redirect by default to /icinga/ echo 'RedirectMatch "^/$" "/icinga/"' >> /etc/apache2/conf-available/icinga.conf # allow "Re-schedule Next Host Check" from Icinga webgui sed -i 's|check_external_commands=0|check_external_commands=1|g' /etc/icinga/icinga.cfg chmod 2710 /var/lib/icinga/rw # restart werbserver service apache2 restart
Admin login
http://YOUR_IP/icinga/
user: icingaadmin
pass: icingaadmin
Icinga Apache configuration
/etc/apache2/conf-available/icinga.conf
Icinga repository
http://packages.icinga.org/
Enable automatic updates
# http://www.panticz.de/debian-ubuntu-automatic-upgrades
wget -q --no-check-certificate https://raw.githubusercontent.com/panticz/scripts/master/enable_auto_update.sh -O - | bash -
configure contact
sed -i 's|root@localhost|YOUR@EMAIL-ADDRESS.com|g' /etc/icinga/objects/contacts_icinga.cfg
change password
htpasswd -c /etc/icinga/htpasswd.users icingaadmin
plugins
http://www.panticz.de/Icinga-plugins
LDAP
a2enmod authnz_ldap
echo "pass1234" > /etc/apache2/ldap_password.inc
chmod 600 /etc/apache2/ldap_password.inc
sed -i 's|=icingaadmin|=*|g' /etc/icinga/cgi.cfg
/etc/icinga/apache2.conf
- AuthUserFile /etc/icinga/htpasswd.users
+ AuthBasicProvider ldap
+ AuthLDAPBindDN "ldap@example.com"
+ AuthLDAPBindPassword "exec:/bin/cat /etc/apache2/ldap_password.inc"
+ AuthLDAPURL "ldap://ldap.example.com:3268/dc=example,dc=com?sAMAccountName?sub?(objectClass=*)" NONE
+ AuthLDAPRemoteUserIsDN off
+ Require ldap-group CN=IPG.DevOps,OU=_IntranetPermissionGroups,DC=example,DC=com
service apache2 restart
# config
https://wiki.icinga.org/display/Dev/Icinga+Core+Debug+Config
# cgi
http://docs.icinga.org/latest/de/cgiparams.html#cgiparams-ahas
http://icinga.example.com/cgi-bin/icinga/status.cgi?servicestatustypes=20&noheader=1
Links
http://www.debmon.org/ - Debian Monitoring Project
http://packages.debian.org/wheezy/icinga
http://packages.icinga.org/debian/ - Icinga repository
https://www.icinga.org/icinga2/ - Icinga 2 preview
http://www.sysadminslife.com/monitoring-2/icinga-1-9-installation-unter-debian-squeeze-wheezy-aktuellste-version/