Skip to content

VitexSoftware/Icinga-Editor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2a43ae6 · Sep 24, 2021
Feb 13, 2021
Feb 13, 2018
Feb 8, 2017
Jun 19, 2020
Jun 19, 2020
Jan 4, 2017
Feb 26, 2019
Jun 19, 2020
Jun 21, 2020
Jan 23, 2018
Jan 23, 2018
Feb 13, 2018
Oct 31, 2017
Aug 19, 2018
Jun 4, 2020
Sep 24, 2021
Nov 2, 2013
Jun 18, 2020
Aug 20, 2018
Oct 5, 2017
Jun 4, 2020
Oct 1, 2017
Jun 13, 2020
Oct 1, 2017
Aug 1, 2016
Aug 12, 2016
Jun 13, 2020
Aug 12, 2016

Repository files navigation

Icinga Configurator

Gui for generating Icinga 1.x configuration files and much more...

Source Code Latest Version Software License Build Status Coverage Status Translate Status

Features

  • Generate configuration for multiplete users
  • Provide deploy scripts for auto configure NSClient++
  • Checked Services presets - to apply on host or hostgroup
  • Scannig tcp ports for known services
  • Outdated sensors overview
  • Recursive import configuration form icinga/nagios config files
  • Export configurations to another instance Icinga-editor using HTTP
  • Network topology map
  • Tool to watch traceroute ping
  • Automatic Downtime Schedule for devices every night down (Host is server switch)
  • Host icon downloader

Instalation

Debian 8+

Install Icinga itself

apt install icinga-cgi icinga-cgi-bin icinga-idoutils

Then Editor:

wget -O - http://v.s.cz/info@vitexsoftware.cz.gpg.key|sudo apt-key add -
echo deb http://v.s.cz/ stable main > /etc/apt/sources.list.d/ease.list
apt update
apt install icinga-editor

Centos 6.8

Make sure you have Icinga installed. ( http://packages.icinga.org/epel/ )

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
yum install php56w php56w-opcache php56w-pdo php56w-intl php56w-mysqlnd php56w-pear php56w-gd
pear install Mail
pear install Mail_mime
service httpd restart
service mysqld start
mysqladmin create icinga_editor
echo "GRANT ALL ON icinga_editor.* to 'icinga_editor'@'localhost' IDENTIFIED BY 'LojAstod9';" | mysql -u root -p
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
mv composer.phar /usr/local/bin/composer
curl --silent --location https://rpm.nodesource.com/setup_6.x | bash -
yum install -y nodejs
cd /opt/
npm install bootstrap@3
echo "Alias /javascript/twitter-bootstrap /opt/node_modules/bootstrap/dist" > /etc/httpd/conf.d/twitterbootstrap.conf
yum install jquery
echo "Alias /javascript/jquery /usr/share/javascript/jquery/latest" > /etc/httpd/conf.d/jquery.conf
git clone https://github.com/nostalgiaz/bootstrap-switch.git
cp bootstrap-switch/dist/js/bootstrap-switch.js node_modules/bootstrap/dist/js/
cp bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.css node_modules/bootstrap/dist/css/
git clone https://github.com/VitexSoftware/Icinga-Editor.git
cp Icinga-Editor/debian/conf/icinga-editor.conf /etc/httpd/conf.d/
cp /opt/Icinga-Editor/debian/conf/icinga-editor /etc/sudoers.d
sed -i -e 's/\/usr\/share\/icinga-editor/\/opt\/Icinga-Editor\/src\//g' /etc/httpd/conf.d/icinga-editor.conf
mysql -u root icinga_editor < /opt/Icinga-Editor/debian/sql/install/mysql
mkdir -p /etc/icinga/generated/
chown apache /etc/icinga/generated/ -R
chcon -t httpd_sys_rw_content_t /etc/icinga/generated -R
mkdir -p /usr/share/icinga/htdocs/
ln -s /usr/share/icinga/images /usr/share/icinga/htdocs/images/
mkdir -p /usr/share/icinga/htdocs/images/logos/custom/
chcon -t httpd_sys_rw_content_t /usr/share/icinga/htdocs/images/logos/custom/ -R
chown apache /usr/share/icinga/htdocs//images/logos/custom/ -R
chcon -t httpd_sys_rw_content_t /usr/share/icinga/htdocs/images/logos/ -R
cp Icinga-Editor/bin/toicmdfile.sh /usr/bin
sed -i -e 's/..\/includes/\..\/src\/includes/g' Icinga-Editor/bin/iecfgimporter.php
cd Icinga-Editor/bin
./iecfgimporter.php
ln -s /usr/share/icinga/images/logos/ /opt/Icinga-Editor/src/logos

Configuration import

Debian package contains comandline tool iecfgimporter This tool you can use to import several config files or whole configuration into database. (It is used after first package install to fulfill initial database content)

Sorry

See in Action

Production Site

Latest version of Debian package is installed here: https://www.vitexsoftware.cz/icinga-editor/

  • Production site with SMS and XMPP (jabber) notifications Enabled.
  • Twitter inc. recognize our notifications as spam thus Twitter notifications are depricated now.

Screenshots

Application Dashboard: Dashboard

Hosts Listing: Hosts

Topology map: Map

Nrpe config tool: NRPE

Regenerate all all icinga config files for all users. REGENALL

Script for deployment editation: Script

Windows pasive configuration script for NSClient++: WinNsca