Skip to content
NConf - (New) Enterprise Nagios configurator PHP7.0 ready - Mirror from official nconf/nconf
Branch: master
Clone or download
Bonsaif Bonsaif
Latest commit 6d41e5d May 10, 2017
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
ADD-ONS changed some file permissions Sep 22, 2011
INSTALL_ again a faulty db which had to be redumped Dec 9, 2011
UPDATE_ changed pattern used to parse for SNMP TRAP services within the colle… May 27, 2013
bin small changes to copyright Feb 17, 2017
config.orig post-merge cleanup Feb 20, 2013
config added emtpy directories which must exist Jun 10, 2011
design_templates/nconf_fresh Added additional object oriented mysql-connect to main.php and switch… Mar 21, 2017
img added github logo Nov 9, 2011
include Changelog changes and version.php (dev --> final) May 10, 2017
nbproject Added additional object oriented mysql-connect to main.php and switch… Mar 21, 2017
output added emtpy directories which must exist Jun 10, 2011
static_cfg added emtpy directories which must exist Jun 10, 2011
temp added emtpy directories which must exist Jun 10, 2011
.gitignore Fix with "not filled check" May 9, 2017
CHANGELOG
COPYRIGHT Change Changelog Mar 16, 2017
INSTALL.php_ switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
LICENSE migrated from Sunrise internal SVN repo; corresponds to SVN revision … Jun 10, 2011
README switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
UPDATE.php_ switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
add_item_step2.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
call_file.php
clone_host.php Fix with "not filled check" May 9, 2017
clone_host_write2db.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
clone_service.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
clone_service_write2db.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
delete_attr.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
delete_class.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
delete_item.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
dependency.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
detail.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
detail_admin_items.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
generate_config.php changing the style of the dialog box on the generating config part. May 20, 2013
handle_item.php Fix with "not filled check" May 9, 2017
history.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
id_wrapper.php changed a lot of messages Jun 15, 2011
index.php migrated from Sunrise internal SVN repo; corresponds to SVN revision … Jun 10, 2011
main.php Added additional object oriented mysql-connect to main.php and switch… Mar 21, 2017
modify_attr.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
modify_attr_write2db.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
modify_class.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
modify_class_write2db.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
modify_item_service.php
modify_item_write2db.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
multimodify_attr_write2db.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
overview.php Fix table navigation buttons with checkcommands May 9, 2017
show_attr.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
show_class.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017
static_file_editor.php switch from php-api mysql to msqli (first step procedurally, next ste… Mar 15, 2017

README

NConf README
============

NConf homepage:
http://www.nconf.org

Start guide:
http://www.nconf.org/dokuwiki/doku.php?id=nconf:help:documentation:start:main

Complete documentation:
http://www.nconf.org/dokuwiki/doku.php?id=nconf:help:documentation:detail:main

Table of contents
-----------------
A. Requirements
B. Manual installation
C. Manual update


A. Requirements
---------------

NConf system requirements:

    * Apache webserver
    * PHP 5 or higher, php-mysqli, php-ldap (only if using LDAP auth)
    * MySQL 5.0.2 or higher (with InnoDB)
    * Perl 5.6 or higher, perl-DBI, perl-DBD-MySQL
    * Nagios 3.x or Icinga 0.8x (binary necessary for testing generated config)


php.ini settings:

    * short_open_tag = On
    * register_globals = Off
    * magic_quotes_gpc = Off 


Compatibility:
NConf has been tested on Red Hat, Fedora and CentOS Linux.
It has not been tested on Windows or any UNIX, or with SELinux.


Security considerations:
NConf is intended to be deployed within a private network or intranet. As such, development focus is clearly not that of a secure Internet application. Although it can be run anywhere, we do not advise users to publish NConf as a public site. 


B. Manual installation
----------------------

1. Download and unpack
Download and unpack the NConf archive to your webserver's document root folder. 


2. Set permissions
Make sure the following directories are writable for your webserver user: 

   ./config
   ./output
   ./static_cfg
   ./temp


3. Create the database
Create a new MySQL database for NConf, create a user to access the database, grant the appropriate privileges (make sure InnoDB for MySQL is set up properly prior to creating the database). 

On the commandline, you would proceed like this: 

   $> mysql -u root -p
   Enter password:
   mysql> CREATE DATABASE DBNAME;
   mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER ON `DBNAME`.* TO 'DB_USER'@'localhost' IDENTIFIED BY 'DB_PASS';

Please refer to the MySQL manual on how to set up InnoDB (the steps might vary depending on your OS distribution). 


4. Create the database structure

$> mysql -u DBUSER -p DBNAME < INSTALL/create_database.sql


5. Configure NConf
Copy the contents of ./config.orig to ./config. Make sure you also copy the hidden files. 

Edit ./config/mysql.php, set at least the following values: 

   DBHOST 
   DBNAME 
   DBUSER 
   DBPASS

Edit ./config/nconf.php, set at least the following values: 

   NCONFDIR 
   NAGIOS_BIN


6. Clean up
Remove the INSTALL and UPDATE folders, as well as the INSTALL.php and UPDATE.php scripts. 


7. Get OS logo icons (optional, but nice)
If you like, download the OS logo icons and unpack them to ./img/logos/base/ 

The icons can be downloaded here:
http://www.monitoringexchange.org/p/47

8. Authentication
If you need authentication, configure ./config/authentication.php appropriately.


C. Manual update
----------------

1. Backup
Make a backup copy of your whole 'nconf/' folder and create a dump of your 'nconf' database. 
The update process will not overwrite your configuration, but if you have made changes to any other files, these changes will be lost! This is also true for icons that you might have installed manually ('img/logos/base/'). 

    Example: 

    cp -rp nconf/ nconf.BAK 
    mysqldump -u DBUSER -p DBNAME > nconf-dbdump.sql


2. Download and unpack
Download and unpack the NConf archive to a temporary location on your webserver. 

    Example: 

    tar -zxf nconf-VERSION.tgz -C /tmp/


3. Update existing files
Copy the unpacked files to the 'nconf/' folder and overwrite any existing files of your current NConf installation. 

    Example: 

    /bin/cp -rv /tmp/nconf/* /path/to/nconf/  (specify the full path to the 'cp' binary!)

This step cannot be undone! Make sure you have made a backup of your 'nconf/' folder. 


4. Check permissions
Make sure the following directories are still writable for your webserver user:

   ./config 
   ./output 
   ./static_cfg
   ./temp


5. Update the database
The 'UPDATE/' folder contains a subfolder for each previous release of NConf. The folders are named like this: x.x.x_to_y.y.y 

Make sure you know your current version of NConf. Next, chose the appropriate folder and look for a script named update_database_x.x.x_to_y.y.y.sql. 

Update the database like this: 

    $> mysql -u DBUSER -p DBNAME < UPDATE/x.x.x_to_y.y.y/update_database_x.x.x_to_y.y.y.sql

If you are updating from an older version of NConf, make sure you apply all available updates for all versions between your version and the latest version of NConf. Also, make sure you apply the updates in the right order! 

Important: make sure you don't skip any updates, and that you apply ALL of them in the right order. Failure to do so may result in data corruption and instability of NConf! 


6. Additional tasks
Check the version-specific 'README' file within the current subfolder for update-related instructions. If you have applied more than one update, make sure you study all README files in all subfolders. These files contain important instructions about necessary config changes etc. 

The release notes for the current release can also be found here:
http://www.nconf.org/dokuwiki/doku.php?id=nconf:download:releasenotes


7. Restore icons (optional)
If you were using additional icons prior to the update, you will have to copy these back from your backup folder. 


8. Clean up
Finally, remove the following files and directories:

   * INSTALL
   * INSTALL.php
   * UPDATE
   * UPDATE.php 

The update should now be complete.

Refresh browser cache:

If NConf does not look or feel right after the update, push CTRL-F5.
Your browser might have to reload some cached CSS & JavaScript files.  
You can’t perform that action at this time.