Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- echo ""
- echo "Nagios config generator"
- sleep 2
- clear
- echo ""
- echo "Enter server ID: "
- read id
- clear
- echo ""
- echo "Enter server domain: "
- read domain
- echo ""
- clear
- echo ""
- echo "Enter server IP: "
- read ip
- echo ""
- clear
- echo "define host{" > /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " use linux-server" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " host_name $id.$domain" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " alias $id" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " address $ip" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " hostgroups servers" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " }" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "define service{" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " use generic-service" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " host_name $id.$domain" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " service_description PING" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " check_command check-host-alive" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " }" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- clear
- echo ""
- echo "Does this server have a control panel (y/n): "
- read cp
- clear
- if [ "$cp" == "y" ]; then
- clear
- echo ""
- echo "Which control panel? 1 for cPanel or 2 Directadmin: "
- read whichcp
- clear
- if [ "$whichcp" == "1" ]; then
- clear
- echo ""
- echo "Monitor cPanel (y/n): "
- read cpanel
- clear
- echo ""
- echo "Monitor WHM (y/n): "
- read whm
- clear
- if [ "$cpanel" == "y" ]; then
- clear
- echo ""
- echo "Enter username of a cPanel account: "
- read cpaneluser
- clear
- echo ""
- echo "Enter password of a cPanel account: "
- read cpanelpass
- echo "define service{" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "use generic-service" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "host_name $id.$domain" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "service_description cPanel" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "check_command check_cpanel!$cpaneluser:$cpanelpass" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " }" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- fi
- if [ "$whm" == "y" ]; then
- clear
- echo ""
- echo "Enter username of an account with WHM access: "
- read whmuser
- clear
- echo ""
- echo "Enter password of a of an account with WHM access: "
- read whmpass
- echo "define service{" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "use generic-service" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "host_name $id.$domain" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "service_description WHM" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "check_command check_whm!$whmuser:$whmpass" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " }" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- fi
- fi
- if [ "$whichcp" == "2" ]; then
- clear
- echo ""
- echo "Monitor DirectAdmin (y/n): "
- read directadmin
- clear
- if [ "$directadmin" == "y" ]; then
- echo "define service{" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "use generic-service" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "host_name $id.$domain" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "service_description DirectAdmin" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "check_command check_directadmin" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " }" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- fi
- fi
- fi
- clear
- echo ""
- echo "Add http monitoring (y/n): "
- read http
- clear
- echo ""
- echo "Add ssh monitoring (y/n): "
- read ssh
- clear
- echo ""
- echo "Add ftp monitoring (y/n): "
- read ftp
- clear
- if [ "$http" == "y" ]; then
- echo "define service{" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "use generic-service" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "host_name $id.$domain" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "service_description Apache" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "check_command check_http" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " }" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- fi
- if [ "$ssh" == "y" ]; then
- clear
- echo "Enter SSH port: "
- read sshport
- clear
- echo "define service{" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "use generic-service" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "host_name $id.$domain" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "service_description SSHd" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "check_command check_ssh!$sshport" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " }" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- fi
- if [ "$ftp" == "y" ]; then
- echo "define service{" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "use generic-service" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "host_name $id.$domain" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "service_description FTPd" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "check_command check_ftp" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo " }" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- echo "" >> /usr/local/nagios/etc/objects/servers/$id.cfg
- fi
- /etc/init.d/nagios restart
Add Comment
Please, Sign In to add comment