1 'Just For Fun' Network Management System Version 0.8.x
3 ======================================================
5 --------------------------------------------------------------
6 If you are a technical writer, want to be one, or happen to be
7 inspired... We need your contribution with the Documentation.
8 --------------------------------------------------------------
14 . *NIX (Development is on GNU/Linux, It has been tested on FreeBSD and Solaris too)
15 . Windows 2000/XP also works (A good crond for windows will be useful).
16 If you are installing on Windows please read the INSTALL.win32.txt file.
18 -Apache ( > 1.3.x or > 2.0.x)
20 -MySQL ( > 3.23.x or > 4.0.x ) or PostgreSQL ( Tested with 7.4.6 )
22 -RRDtool (www.rrdtool.org) (> 1.0.33 )
24 -PHP ( >= 4.1.2 or > 5.0.x )
25 Extensions: snmp, ssl, gd, sockets, mysql or pgsql, pcre, posix, ob, pcntl and session
27 -NET-SNMP utilities and trapd server (optional)
31 -TFTP Server (optional)
33 -JFF NMS Integration Packages (TACACS+ & Syslog) (optional, useful on routers)
35 -Graphviz & WebFonts (http://www.graphviz.org) (optional)
37 -NMAP PortScanner > 2.54B (http://www.insecure.org/nmap/) for TCP Port Discovery (optional)
39 -Fping (http://www.fping.com) for Reachability (Only on Linux/*NIX)
41 -tmpwatch (http://linux.maruhn.com/sec/tmpwatch.html) (Only on Linux/*NIX)
42 Used for deleting all temporary files
48 . Compile and/or Install MySQL / PgSQL
50 . Compile and/or Install Apache
52 . Compile and/or Install Graphviz and WebFonts (optional)
54 . Compile and/or Install NMAP
56 Nmap should be set-uid root if you want UDP port monitoring & discovery to work.
59 # chmod +s /usr/bin/nmap
60 # chmod a+x /usr/bin/nmap
62 . Compile and/or Install Fping
64 Verify that the user running the cron jobs, is able to execute fping and that it is set-uid root.
67 # chmod +s /usr/sbin/fping
68 # chmod a+x /usr/sbin/fping
70 And you should see something like this:
71 -rwsr-xr-x 1 root adm 28291 May 31 22:14 /usr/sbin/fping
73 . Compile and/or Install RRDtool
75 . Compile and/or Install PHP
80 PHP Modules Needed: sockets, snmp, gd, (pgsql and/or mysql), wddx (for satellites), pcre (syslog parsing)
82 Be sure to add the required modules to your /etc/php.ini file.
84 Remember to verify that your modules are loaded with /admin/adm/test.php or the JFFNMS setup screen.
88 ---------------------------------------------------
89 ---------------------------------------------------
90 Change This in your php.ini file.
93 register_argc_argv = On
94 error_reporting = E_ALL & ~E_NOTICE
96 include_path = .:/usr/share/pear
99 ---------------------------------------------------
100 ---------------------------------------------------
102 Also check if your Apache is loading mod_php.
104 Any change to the PHP ini file (ie. /etc/php.ini) requires Apache to be restarted to take effect.
106 --------------------------------------------------------------
107 . Read the docs/* files, these are examples of configuration.
108 --------------------------------------------------------------
110 . Optional: Install Integration Packages tac_plus and msyslog (read the README and INSTALL files of each program).
112 -If you have problems with mysql when compiling (mysql.h lines ~245 & ~256) change DB to db (lowercase);
113 -If you have a linking problem with compress add -lz to the Makefile libraries
114 -msyslog: Remember to change your init.d/syslog to the new binary and command line options. (read the example)
116 . Create User & Group
118 Note: replace apache by your Apache user (like apache, httpd, www-data, etc)
121 # useradd -g jffnms -d /opt/jffnms -s /bin/false -c 'JFFNMS User' jffnms
122 # usermod -G jffnms apache
124 . Unpack the release:
126 # tar xvzf jffnms-0.8.x.tar.gz
128 You will get a directory called jffnms-0.8.x/
130 # mv jffnms-0.8.x /opt/jffnms
134 # chown -R jffnms:jffnms /opt/jffnms
135 # chmod 770 /opt/jffnms
136 # chmod -R ug+rw /opt/jffnms
139 Install the JFFNMS crontab file
141 # crontab -u jffnms /opt/jffnms/docs/unix/crontab
143 Now modify the values at the top if they don't match your system:
145 # crontab -e -u jffnms
147 Allow JFFNMS to run cron jobs (AFAIK only needed in Solaris)
149 # echo jffnms >> /etc/cron.allow
151 . Create the Databases
153 Manually create the database "jffnms", set the permissions and then import the schema and data.
155 Replace the 'x' with the jffnms version number.
159 # mysql -u <mysql admin username> -p<password>
160 mysql> CREATE DATABASE jffnms;
161 mysql> GRANT ALL PRIVILEGES ON jffnms.* TO jffnms@localhost IDENTIFIED BY 'jffnms';
162 mysql> FLUSH PRIVILEGES;
165 # mysql -u jffnms -pjffnms jffnms < docs/jffnms-0.8.x.mysql
169 # psql template1 postgres
170 template1=# create user jffnms password 'jffnms' createdb;
171 template1=# \connect template1 jffnms
172 template1=# create database jffnms;
175 # psql jffnms jffnms < docs/jffnms-0.8.x.pgsql
177 This will create the jffnms Tables and required records.
180 . Configure Apache as follows (from docs/*):
182 1. As a Virtual Host (if you control a DNS server):
185 ServerAdmin you@yournet.com
186 DocumentRoot /opt/jffnms/htdocs
187 ServerName nms.yournet.com
188 LimitRequestLine 20000
191 2. As a sym-link (in Unix):
193 ln -s /opt/jffnms/htdocs /var/www/html/jffnms
195 (or the path your Apache uses).
197 JFFNMS needs to be at the main Document Root, a VirtualHost or a SymLink.
199 . Restart/Reload Apache, MySQL or PgSQL, xINETD (tftpd)
201 . PHP Module Load Errors are reported to /var/log/httpd/error_log (RedHat) or /var/log/apache/error_log (Gentoo)
203 . Point your browser to http://www.yourserver.com/jffnms or http://nms.yournet.com/ (depending on what you choose)
205 You should see the Setup screen, it should have auto-discovered your configuration.
206 Verify that everything is correct (OK, YES in green) before saving the config.
208 . Point your browser (again) to http://www.yourserver.com/jffnms or http://nms.yournet.com/ (depending on what you
214 And now, you are inside the system.
217 . You can read the manual at http://www.jffnms.org
220 =========================================================================
221 If you need anything, contact us at: jffnms-users@lists.sourceforge.net
223 Thank You for trying 'Just For Fun' Network Management System
225 Don't forget to Donate to the project if you find it useful for your work.
226 =========================================================================
228 Javier Szyszlican aka SzYsZ
229 Buenos Aires, Argentina
230 javier@jffnms.org (please try the mailing list first)