Location: PHPKode > projects > Internet Task Management System > itms_mysql_build_0111/ITMS_install_guide.html
<html>
<head>
<meta http-equiv="Content-Type" content="text/html">
<title>Hardware and Software Installation Instructions</title>
</head>

<body>

<h1>Hardware and Software Installation Instructions</h1>
<p>Following these instructions will result in a computer that is prepared to
run ITMS.</p>
<a href="#installitms">Click to jump directly to the ITMS software installation guide.</a><br>
<h2>Hardware Preparation</h2>
You will need as a minimum:
<ul>
  <li>Pentium Pro or Pentium II 200Mhz or faster CPU</li>
  <li>32 Mb of Main memory</li>
  <li>800 Mb Hard disk (BSDI + additional software + ITMS + database)</li>
  <li>Internet Connection</li>
  <li>IP address with name registered in DNS</li>
  <li>Netmask</li>
  <li>Default route</li>
  <li>DNS server ip address</li>
</ul>
<h2>Fill out the Configuration Worksheet (Table 1) before beginning.</h2>
<p>Table 1: Configuration Worksheet (examples provided)
<table border="1">
  <tr>
    <td>Server name</td>
    <td>localhost.localdomain.com</td>
  </tr>
  <tr>
    <td>IP address</td>
    <td>192.168.150.10</td>
  </tr>
  <tr>
    <td>Netmask</td>
    <td>255.255.255.0</td>
  </tr>
  <tr>
    <td>Default Route</td>
    <td>192.168.150.254</td>
  </tr>
  <tr>
    <td>BSD/OS license key</td>
    <td>1234 5678 9876</td>
  </tr>
  <tr>
    <td>DNS server</td>
    <td>200.100.150.100</td>
  </tr>
</table>
<h2>BSDI Operating system</h2>
<p>You will need the BSDI 4.2 CD and perhaps the installation floppy. Follow the
instructions in the BSD/OS 4.2 Administrator's Guide to install BSD/OS. When
prompted to enter your license key, enter it. You must install the following
packages:</p>
<ul>
  <li>Required packages
  <li>Additional /usr
  <li>Developer
  <li>Manual Pages
  <li>Misc. Additional Binaries
  <li>Kernel Objects
</ul>
<p>The following files will need to be edited, with the bold entries replaced
with items from the preparation worksheet.
<table border="1">
  <tr>
    <td>Filename</td>
    <td>Contents</td>
  </tr>
  <tr>
    <td>
      <pre>
/etc/netstart
</pre>
    </td>
    <td>
      <pre>
hostname=localhost.localdomain.com
nis_domain=
interfaces=&quot;exp0&quot;
primary=&quot;exp0&quot;
defroute=&quot;192.168.150.254&quot;
# exp0::
ipaddr_exp0=&quot;192.168.150.10&quot;
netmask_exp0=&quot;255.255.255.0&quot;
linkarg_exp0=&quot;media auto&quot;
additional_exp0=
</pre>
    </td>
  </tr>
  <tr>
    <td>
      <pre>
/etc/named.conf
</pre>
    </td>
    <td>see pg 18 [BSD/OS Admin Guide]
      <pre>
options {
        directory &quot;/etc/namedb&quot;;
        forwarders {
                200.100.150.100;
        };
};

zone &quot;.&quot; {
        type hint;
        file &quot;root.cache&quot;;
};
</pre>
    </td>
  </tr>
</table>
<h2>Required Software Packages</h2>
<p>All the required software can be downloaded from the Internet, compiled and
installed. The order in which they are installed is important. The versions of
each package have been tested; substituting different versions may not work.</p>
<p>We will use the /usr/local/src directory to download and build the required
packages. You must first log in as root.</p>
<pre>
# mkdir /usr/local/src 
</pre>
<h3>Sudo</h3>
<table border="1">
  <tr>
    <td>URL</td>
    <td>http://www.courtesan.com/sudo/sudo.html</td>
  </tr>
  <tr>
    <td>Download</td>
    <td>ftp://ftp.courtesan.com/pub/sudo/sudo-1.6.3p7.tar.gz</td>
  </tr>
  <tr>
    <td>Version</td>
    <td>Sudo 1.6.3 patch 7</td>
  </tr>
  <tr>
    <td>Download to</td>
    <td>/usr/local/src/</td>
  </tr>
</table>
<p>Download and install the package</p>
<pre>
# cd /usr/local/src 
# wget ftp://ftp.courtesan.com/pub/sudo/sudo-1.6.3p7.tar.gz 
# gzcat sudo-1.6.3p7.tar.gz | tar –xvf – 
# cd sudo-1.6.3p7 
# ./configure \ 
    --prefix=/usr/contrib \ 
    -–with-env-editor \ 
    -–with-bsdauth \ 
    –-with-logfac=authpriv 
# make 
# make install
</pre>
<p>If you already know the names and unix accounts for some people you trust,
you may add them to the sudoers list. Use the visudo command to add them. Note:
by default, visudo uses the vi editor, which may not be your preferred editor.
If you instead want to use something else, you should set your EDITOR
environmental variable. For pico, you would set it to /usr/contrib/bin/pico. I
added myself on my system by including this entry: smothers ALL=(ALL) ALL
testing login as root sudo /bin/csh tail /var/log/secure (look for the sudo
entry) visudo (add a user) logout login as user sudo /bin/csh setenv EDITOR vi
visudo setenv EDITOR pico visudo
<h3>ApacheToolBox</h3>
<p>We use several software components which must all be integrated together.
Fortunately, the folks at ApacheToolBox have already done this integration work.
We have only a few special requirements, so we will deal those details as well.
Follow these steps to install the software components from ApacheToolbox.</p>
<p>The following two commands will create the mysql Unix group and the mysql
user account.</p>
<pre>
# addgroup mysql
# adduser –g mysql –G MySQL –h /usr/local \
  –P \* -s /sbin/nologin –S &quot;&quot; mysql
</pre>
<p>Download the apachetoolbox install script. Note, the URL for the install
script may be too long to fit on this page, so don't hit return, just keep
typing. Normally, after you have downloaded, unzipped, and untarred the package,
you just run the install.sh script. However, there are a couple of quirks to
work around. We need the install.sh to run as a /bin/bash script. Also, the yacc
will run out of memory unless we set the datasize to unlimited. And finally, the
BSDI make has trouble with the mysql Makefile, so we use the gnu make instead.</p>
<pre>
# cd /usr/local/src
# wget http://www.apachetoolbox.com/data/archives/Apachetoolbox-install-1.5.23.tar.gz
# gzcat Apachetoolbox-install-1.5.23.tar.gz | tar –xf –
# cd Apachetoolbox-1.5.23
# cp /usr/contrib/bin/wget bin
# sed 1s/sh/bash/ &lt; install.sh &gt; install.bash
# chmod +x install.bash 
# limit datasize unlimited
# mv bin/mysql bin/mysql.save 
# sed 's/ make/ gmake/' bin/mysql.save &gt; bin/mysql
# ./install.bash
</pre>
<p>You will see a menu. Type the numbers corresponding to the following: -MySQL
-Mod_SSL+OpenSSL -Mod_Auth_LDAP so that there is a plus sign in front of these.
<pre>
                       Apache Toolbox 1.5.18
             Support: http://www.apachetoolbox.com
-----------------------------------------------------------------------
[+] apache)  Apache submenu...
[+] php)     PHP submenu (v4.0.4pl1)...
[-] rpm)     Build an RPM with your choices?
[-] page2)   Apache Modules PAGE 2 ...
-----------------------------------------------------------------------
[-] 1) GD 1.8.4                 [+] 2) MySQL 3.23.33
[-] 4) Mod Python 2.7.2         [+] 5) Mod_SSL+OpenSSL
[-] 6) -Mod Throttle 312        [-] 7) -WebDAV 1.0.2-1.3.6
[-] 8) -Mod FastCGI             [-] 9) -Mod AuthNDS 0.5
[-] 10) -Mod Frontpage          [-] 11) -Mod GZIP 1.3.19.1a
[-] 12) -Mod DynaVHost          [-] 13) -Mod Roaming
[-] 14) -Mod AccessRef 1.0.1    [-] 15) -Mod AuthSYS
[-] 16) -Mod Bandwidth          [-] 17) -Mod Perl 1.25
[+] 18) -Mod Auth LDAP          [-] 19) -Apache Jakarta
[-] 20) -Mod Auth Radius        [-] 21) -Mod Auth POP3
[-] 22) -Mod Layout 2.10.2      [-] 23) -Mod DTCL
                 go) Compile selections...
                 q) Quit
                 99) Descriptions
-----------------------------------------------------------------------
Choice [?]

</pre>
<p>There is nothing to change in the apache submenu.</p>
<p>Type <b>php</b> to choose the php sub menu. Type the numbers corresponding to
the <b>mod_php</b>, <b>existing OpenSSL</b>, then choose go . Back at the main
Apachetoolbox menu, choose <b>ModAuthLDAP, Mod_SSL+OpenSSL, MySQL</b>.
<pre>
-----------------------------------------------------------------------
                       Apache Toolbox 1.5.18
             Support: http://www.apachetoolbox.com
-----------------------------------------------------------------------
[-] path) Change PHP's installation path: /usr/local
[+] 1) mod_php  [+] 2) v4.0.4pl1
[-] 3) IMAP     [-] 4) mhash
[-] 5) mcrypt   [-] 6) APC (like zendoptimizer)
[-] 7) PDFlib
[+] 8) Check for existing OpenSSL installation and use it.

   go) Back to main menu...
   99) Descriptions
-----------------------------------------------------------------------
Choice [?]

</pre>
<p>Now you are done making choices. Type go to go back to the main menu. Type go
again to start the compiling.</p>
<p>It will ask if you wish do download things, just answer <b>y</b><br>
It might ask if you want to change the default path to something. Answer <b>no</b><br>
It might ask if you want to include support for DBD, Gemini… Answer <b>no</b><br>
It may ask if you want to edit things, just answer <b>no</b>.<br>
</p>
<p>Eventually, you will see this message and you just do what it says:</p>
<pre>
-----------------------------------------------------------------------
If there where _no_ errors run &quot;cd apache_1.3.19;make&quot; now.
Follow the instructions to make the SSL certificate before you install 
apache.
Run &quot;make install&quot; in the apache source directory to install
apache 1.3.19 after you've successfully compiled it.
Please visit www.apachetoolbox.com for updates and the support forum.
-----------------------------------------------------------------------
% cd apache_1.3.19
% make
</pre>
<pre>
Do you wish to edit the apache configuration script? [y/n] n

[+] Done Configuring Apache source

</pre>
<pre>Now that apache is compiled, you must set up the SSL keys and certificates.</pre>
<pre>
+---------------------------------------------------------------------+
| Before you install the package you now should prepare the SSL       |
| certificate system by running the 'make certificate' command.       |
| For different situations the following variants are provided:       |
|                                                                     |
| % make certificate TYPE=dummy    (dummy self-signed Snake Oil cert) |
| % make certificate TYPE=test     (test cert signed by Snake Oil CA) |
| % make certificate TYPE=custom   (custom cert signed by own CA)     |
| % make certificate TYPE=existing (existing cert)                    |
|        CRT=/path/to/your.crt [KEY=/path/to/your.key]                |
|                                                                     |
| Use TYPE=dummy    when you're a  vendor package maintainer,         |
| the TYPE=test     when you're an admin but want to do tests only,   |
| the TYPE=custom   when you're an admin willing to run a real server |
| and TYPE=existing when you're an admin who upgrades a server.       |
| (The default is TYPE=test)                                          |
|                                                                     |
| Additionally add ALGO=RSA (default) or ALGO=DSA to select           |
| the signature algorithm used for the generated certificate.         |
|                                                                     |
| Use 'make certificate VIEW=1' to display the generated data.        |
|                                                                     |
| Thanks for using Apache &amp; mod_ssl.       Ralf S. Engelschall        |
|                                          hide@address.com        |
|                                          www.engelschall.com        |
+---------------------------------------------------------------------+
&lt;=== src
# 

</pre>
<p>Now that apache is compiled, you must set up the SSL keys and certificates.
Most of the default answers will be OK. Other than that, you are on your own. If
you change the name of your server, you will need to delete the files in the
conf/ssl* directories and rerun the # make certificate TYPE=blah</p>
<pre>
# make certificate TYPE=test
</pre>
<p>Once that's done then you can install apache</p>
<pre>
# make install
</pre>
<p>Go ahead and start up your server</p>
<pre>
# /usr/local/apache/bin/apachectl startssl
</pre>
<p>If you created your SSL keys in such a way that they are encrypted, you will
need to type in your PEM whenever you restart the server.</p>
<p>If the mysql installation script missed this, now is a good time to fix it:</p>
<pre>
# chown -R mysql.mysql /usr/var/lib/mysql/mysql
</pre>
<p>Test your server by visiting it with your web browser. If the server does not
start, try looking in the log files in /usr/local/apache/logs</p>
<p>Put the following in the /etc/rc.local
<pre>
/usr/local/mysql/bin/safe_mysqld –-user=mysql &amp;
</pre>
<hr>
<p><a name="installitms"><h1>Installing ITMS</h1>
<p>At this point your server should have the following services installed:</p>
<ul>
  <li>A webserver, such as Apache 1.3.x <a href="http://httpd.apache.org">http://httpd.apache.org</a></li>
  <li>PHP 4.x <a href="http://www.php.net">http://www.php.net</a></li>
  <li>MySQL 3.2x.x <a href="http://www.mysql.com">http://www.mysql.com</a></li>
</ul>
<p>ITMS can take advantage of the following services if they are installed:</p>
<ul>
  <li>An LDAP such as OpenLDAP 2.x.x <a href="http://www.openldap.org">http://www.openldap.org</a></li>
  <li>An SSL such as OpenSSL 0.9.x <a href="http://www.openssl.org">http://www.openssl.org</a></li>
</ul>
<p>For enhanced management of the database (not required):</p>
<ul>
  <li>phpMyAdmin 2.1.x <a href="http://www.phpwizard.net/projects/phpMyAdmin/">http://www.phpwizard.net/projects/phpMyAdmin/</a></li>
</ul>
<p>Now your server is ready for installing ITMS</p>
<pre>
# cd /usr/local/apache/htdocs
# mkdir itms
# cd itms
# wget http://itms.sourceforge.net/download/itms.tar.gz
# gunzip itms-1.0.tar.gz | tar –xf –
</pre>
<h3>Edit the config.php file</h3>
<p>All the system parameters are modifiable via the config.php file. Therefore
the config.php file should be modified to reflect your system settings.</p>
<p>If SSL is installed, put ITMS into the publishing directory SSL is pointed
to, otherwise put ITMS in a directory under the document root of your web
server.</p>
<p>If the code was put in an SSL publishing directory, set $SECURE_COOKIES =
&quot;true&quot;, otherwise set it to &quot;false&quot;.</p>
<p>If you want to authenticate via LDAP, set $ENABLE_LDAP to &quot;true&quot;
and add the appropriate entries to your LDAP directory.</p>
<p>Change all the other obvious variables to reflect your environment.</p>
<p>Create a database named &quot;itms&quot; and use the itms.sql file to define
the tables and attributes. This can be easily done if phpMyAdmin is installed,
see its documentation for details.</p>
<p>Once the database is set up and the code has been copied to the server, open
your web browser to the location defined by $ITMS_ROOT. Login with the default
user &quot;root&quot; password &quot;root&quot;. Immediately create your own
Admin user and log off and back in under this new account. Delete the
&quot;root&quot; user to prevent security issues with your ITMS installation.</p>
<p>Note: If you are having trouble logging in to ITMS under the default root password,
open the file password_debug.php in your web browser to see details about how your webserver
deals with the crypt php function.  IF the default crypted string is not working for you
try using the string under the line: <b>Output of crypt('root', substr('root', 0, 2)):</b>.</p>
<p>Documentation on how to use the application as an effective organizational
tool can be found in the online help.</p>
<hr>
<p>NOTE: If you are using PHP Version 4.2.0 or greater the register_globals directive in the php.ini defaults to 'off', which will cause problems in this version of ITMS, please set the register_globals directive to 'on' in the php.ini file. Future ITMS versions will be modified so that ITMS will still function with the register_globals directive set to 'off'.</p>
</body>

</html>
Return current item: Internet Task Management System