NINO - Installation guide

Installation:

Download
NINO Installation instructions for Windows
NINO Installation instructions for LiNUX
HOWTO Install from source
NINO upgrade notes
Upgrade readme
NINO readme
Basic configuration steps after installation
NINO Security - Default users, groups and passwords





Download and installation

The NINO Setup package for windows is build with the standard Apache, MySQL and Perl distributions and the additional service tools. The NINO source tar.gz file is also available. These packages can be downloaded:

All third party packages can also be downloaded seperately:






HOWTO Install from source

To install NINO from a source package the next steps need to be taken.

The NINO source tar.gz package contains the NINO Perl scripts and HTML docs.

       htdocs/nino     HTML docs and Java classes
       conf            Configuration files, such as Apache httpd-nino.conf to be included from the main httpd.conf
       mod_perl/       NINO application
       scripts/        NINO startup scripts /etc/init.d
       ucd/            snmpd.conf example for UCD / Net-snmp agents

For manual install without the install script or troubleshooting, proceed the steps in the next section:





NINO upgrade notes

NINO versions 1 to 4.1.4 use the crontab to execute monitoring scripts. Upgrading to version 4.1.5 or higher do not use the crontab. Please use the cleanup script or remove NINO scripts from the crontab:

list:   crontab -l
edit:   crontab -e

If older nino startup scripts are installed in the /etc/init.d, they need to removed. The nino script in the /var/nino/scripts directory can be used to startup all NINO processes. Please copy this to the /etc/init.d directory and use chkconfig to activate the startup script.

cp /var/nino/scripts/nino /etc/init.d
chkconfig --add nino

All NINO configuration settings are located in directory: /var/nino/conf/ The NINO configuration, monitoring presets and other settings are stored in snmp.ini. All user & groups security settings are stored in the files passwd and groups. The NodeMap node positions are stored in /var/nino/mod_perl/nodes.txt. It is important to make a backup of this files.

Do not install the NINO database using a browser, this will initialize the database and will erase all devices and group settings. The http://localhost/nino/install.html is only needed to install NINO from scratch.



Apache configuration Notes

NINO has a sample httpd-nino.conf that can be included in the main apache httpd.conf. The next include statement needs to be added:

Include /var/nino/conf/httpd-nino.conf

The example httpd-nino.conf needs to be adapted to your directory structure. This is the default structure, using /var/nino.

<IfModule mod_alias.c>


    ScriptAlias /mod_perl/ "/var/nino/mod_perl/"

    <Directory "/var/nino/mod_perl/">

# If the perl module is installed, this will allow execution of mod_perl
# to compile your scripts to subroutines which it will execute directly,
# avoiding the costly compile process for most requests.
#
# mod_perl for apache 2.0

        SetHandler perl-script
        PerlResponseHandler ModPerl::Registry
        PerlOptions +ParseHeaders

# mod_perl for apache 1.3
#
#        SetHandler perl-script
#        PerlHandler Apache::Registry
#
# End mod_perl
# For normal CGI next lines are needed:

        Options FollowSymLinks ExecCGI
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

    Alias /nino/ "/var/nino/htdocs/nino/"

    <Directory "/var/nino/htdocs/nino">
        Options Indexes MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
</IfModule>

NINO will be installed in the C:\var directory. The directories C:\var\Apache, C:\var\mysql C:\var\nino and C:\var\Perl will be added. Customize drive and directory settings will need additional configuration of the Apache httpd.conf, NINO snmp.ini and Apache <-> Mod_Perl settings.

Build RPM package

For LiNUX a standard packaging tool is available to install software. RPM (RedHat Package Manager) is the most popular packaging system. In this section the packaging of NINO will be explained. The most important components for RPM are:

The first step is to create a source tar.gz file suitable for RPM. Download the NINO source tar.gz file and put it in the /tmp directory. Then unpack it, make your changes and repack your version suitable for RPM.

In this example the nino version is 4.1.6 and the package name is nino. The source file must have the name <pkgname>-<version>.tar.bz2 . Also the root directory must have the name <pkgname>-<version>. The nino416.tar.gz is stored in /tmp, so now we can start:

cd /tmp
  gunzip nino416.tar.gz
  mkdir -p nino-4.1.6/var
  cd nino-4.1.6/var
  tar -xvf ../../nino416.tar

Apply your changes in the package and rebuild the RPM version of the source:

  cd /tmp
  tar -cvf nino-4.1.6.tar nino-4.1.6/*
  bzip2 nino-4.1.6.tar
  cp nino-4.1.6.tar.bz2 /usr/src/redhat/SOURCES

Edit your RPM .spec file and build RPM package

  rpmbuild -ba nino.spec

The RPM packages will be created and stored in:

  /usr/src/redhat/RPMS/i386

This is the default NINO spec file:


Summary: NINO Network Management
Name: nino
License: GPL
Version: 4.1.6
URL: http://sourceforge.net/projects/nino/
Source: nino-4.1.6.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}
BuildArch: noarch

# Depends on NetSNMP::SNMP.pm
#
# Mandrake:
%if %{_vendor} == MandrakeSoft
Release: mdk
Vendor: Mandrakesoft
Distribution: Mandrakelinux
Group: Monitoring
Requires: MySQL-client
Prereq: net-snmp, apache2-mod_perl, rpm-helper
# RedHat or Fedora:
%else
%if %{_vendor} == redhat
Release: fdr
Group: Applications/System
Requires: mysql, perl-Time-HiRes, perl-DBI
Prereq: net-snmp, net-snmp-perl, mod_perl, httpd
%else
Release: plf
Group: Applications/System
Prereq: net-snmp, rpm-helper
%endif
%endif



%description
NINO is a network management solution to monitor your
network, systems and applications: integrated, one tool for
all.  Features: SNMP, Service Response performance
monitoring, graphs with zoom, topology view, events, reporting
using HTML templates.

%prep

%setup -q

# No compiling needed, just put everything in /var/nino
# and run the /var/nino/scripts/install in %post

%build

%install
rm -rf %{buildroot}
mkdir -p %{buildroot}/var/nino
mkdir -p %{buildroot}%{_initrddir}

cp -Rfp var %{buildroot}/
cp var/nino/scripts/nino %{buildroot}%{_initrddir}

# Install startup scripts, configure httpd.conf
%post
%if %{_vendor} == MandrakeSoft
%_post_service nino
%else
chkconfig --add nino
%endif
cd /var/nino/scripts
/var/nino/scripts/install

%preun
%if %{_vendor} == MandrakeSoft
%_preun_service nino
%else
chkconfig --del nino
%endif

cd /var/nino/scripts
/var/nino/scripts/cleanup

%clean
rm -rf %{buildroot}

%files
%defattr(-,root,root)
/var/nino
%{_initrddir}/nino

%changelog
- Change template "Edit" image, changes to authorization functions, add more logging to monitoring, add maintenance function to optimize MySQL. Added event/availability report for node groups. Graphtype (line, filled or summed) can now be saved in preset. Improved on missed polls (only once -2) to get rid of graph spikes and Node Down/Up events. Improved SQL queries in eventaction.



NINO Admin pages

Click on the menu ADMIN to get into the admin menu. There are several functions available:

NINO Security - Default users, groups and passwords

NINO version 3:

Some admin pages in NINO version 3 are password protected. This protection is not very strong and standard authentication methods are not used in version 3. In version 4 this is improved. The default password for NINO is private. The default SNMP read community string is public and the read/write community string is private. Common used community strings or passwords are (please do NOT use): admin, secret, security, cisco, public, private.

NINO version 4:

Since version 4 the standard Apache authentication method is used. NINO can administrate Apache users, groups and passwords. The default administrative user is admin, the default password is admin. After installation of NINO this password should be changed. The authorization is managed within NINO, so per function (cluster of NINO functions) one or more groups can be authorized. There are several clusters of functions:

Apache needs to be configured to authenticate users. The most secure authentication is to use only the Apache SSL (encrypted) server. In the httpd.conf the authentication configuration needs to be added, see example below:

# Users & group authentication in Apache:

<LocationMatch "mod_perl">
  AuthName "NINO authentication"
  AuthType Basic
  AuthUserFile  /etc/httpd/conf/passwd
  AuthGroupFile  /etc/httpd/conf/groups
  Require group systemadmin
  Require group networkadmin
  Require group helpdesk
</LocationMatch>

# or let all valid users authenticate and let NINO do the authorization.  

<LocationMatch "mod_perl">
  AuthName "NINO authentication"
  AuthType Basic
  AuthUserFile  /etc/httpd/conf/passwd
  AuthGroupFile  /etc/httpd/conf/groups
  Require valid-user
</LocationMatch>

NINO version 4 windows distribution:

The windows distribution will install a pre-configured Apache and MySQL. The default user accounts in the windows distribution are listed below:

UserPasswordRole
adminadminNINO System Administrator
systemsystemNINO System Administrator
operatoroperatorNINO Network Operator
helpdeskhelpdeskHelpdesk Operator

Default mysql password in the windows distribution: private