Full setup of Ubuntu 6.06 LTS "Dapper Drake" for WebGUI 7.0.6
At first - excuse my bad english
Download the ubuntu 6.06 LTS Dapper Drake
http://ubuntu.intergenia.de/releases/6.06/ubuntu-6.06.1-server-i386.iso
burn the cd and install it with all defaults.
Here and everywhere we will use the next logins and passwords(replace them with Yours for security reasons):
------------------- Prologue -----------------
first ubuntu user:
login: firstuser
password: userone
root user:
password: userroot
apache homedir = /apachehome
mysql homedir = /usr/local/mysql
if You will see ">" at the begining of the line - then it is a command
-----------------end of prologue --------------
/* after installation login */
login: firstuser
password: userone
/* now we will create root user */
> sudo passwd root
/* You will be asked for enter password: userone to become root, and create root account */
password: userone
/* then enter password for root */
root user password: userroot
confirm: userroot
/*login as root */
exit
login: root
password: userrrot
/*create directory for downloads (u can create it with another name) */
> cd /
> mkdir distribs
> cd /distribs
/* now lets download all distribs we need */
> wget http://www.cpan.org/modules/by-module/Crypt/Crypt-SSLeay-0.51.tar.gz
> wget http://www.cpan.org/modules/by-module/DBD/DBD-mysql-3.0006.tar.gz
> wget http://mysql.directnet.ru/Downloads/MySQL-5.0/mysql-5.0.24.tar.gz
> wget ftp://ftp.chg.ru/packages/ImageMagick/ImageMagick-6.2.9-3.tar.gz
> wget http://www.openssl.org/source/openssl-0.9.7k.tar.gz
> wget http://www.cpan.org/src/stable.tar.gz
> wget http://archive.apache.org/dist/httpd/httpd-2.0.52.tar.gz
> wget http://apache.rediska.ru/httpd/libapreq/libapreq2-2.08.tar.gz
> wget http://perl.apache.org/dist/mod_perl-2.0-current.tar.gz
/* now we will install all compilers and packages for compiling */
> aptitude update
> aptitude upgrade
> aptitude install make autoconf
> aptitude install automake1.9
> aptitude remove automake1.4
/*just check that u have only one automake or select the 1.9 for default */
> update-alternatives --config automake
> aptitude install gcc libtool g++ expat libexpat1 libexpat1-dev
libpng3 libpng3-dev libtiff4 libtiff4-dev libtiffxx0c2 libxml-dev
libxml1 libjpeg62 libjpeg62-dev libfreetype6 libfreetype6-dev
libncurses5 libncurses5-dev zlib1g zlib1g-dev
/* now we will install perl */
/* check that u are in the distribs directory */
> cd /distribs
> tar -zxvf stable.tar.gz
> cd ./perl*
> rm -f config.sh Policy.sh
> sh Configure
/*everywhere type enter and config Your e-mails. We don't need threads enabled */
> make
> make test
> make install
/* now we will remove old perl package with all its subpackages */
> aptitude remove perl
/* reinstall make autoconf and automake there will be perl also don't worry choose YES */
> aptitude install make autoconf
> aptitude install automake1.9
> aptitude remove automake1.4
/*just check that u have only one automake or select the 1.9 for default */
> update-alternatives --config automake
/* here I prefer to reboot */
> shutdown -r now
/* login as root */
login: root
password: userrrot
/* check the perl version. it should be 5.8.8 */
> perl -v
/* now we will reinstall packages due to new perl */
> aptitude install gcc libtool g++ expat libexpat1 libexpat1-dev libpng3 libpng3-dev libtiff4 libtiff4-dev libtiffxx0c2 libxml-dev libxml1 libjpeg62 libjpeg62-dev libfreetype6 libfreetype6-dev libncurses5 libncurses5-dev zlib1g zlib1g-dev
/* reboot */
> shutdown -r now
/* login as root*/
/* now we will install openssl, Image magick, apache and mysql then reboot the system */
/* openssl */
> cd /distribs
> tar -zxvf openssl*.tar.gz
> cd ./openssl*
> ./configure
* then run make and install /
> make
/* the next install it into /usr/local/ssl */
> make install
/* ImageMagick */
> cd /distribs
> tar -zxvf ImageM*.tar.gz
> cd ./Image*
> ./configure \
> --with-modules=yes \
> --with-jpeg=yes \
> --with-png=yes \
> --with-tiff=yes \
> --with-quantum-depth=32
/* then run meke and install /
> make
> make install
/* check the ImageMagick version */
> convert -Version
/* MySQL */
> cd /distribs
> tar -zxvf mysql*.tar.gz
> cd ./mysql*
/* before compiling we will create user and group for it */
> groupadd mysql
> useradd -g mysql mysql
/* configure and compile */
> ./configure --prefix=/usr/local/mysql
> make
/* the next will install mysql in - /usr/local/mysql , data in /usr/local/mysql/data */
> make install
/* create *.cnf file */
cp support-files/my-medium.cnf /etc/my.cnf
/*create necessary tables */
> /usr/local/mysql/mysql_install_db --user=mysql
/* change owners */
> chown -R root /usr/local/mysql
> chown -R mysql /usr/local/mysql/var
> chgrp -R mysql /usr/local/mysql
/* autostart mysql on boot */
> cp support-files/mysql.server /etc/init.d/mysql
> chmod +x /etc/init.d/mysql
> update-rc.d mysql defaults
/* check mysql */
> /etc/init.d/mysql start
> netstat -tap
/* add mysql dir to path */
> vi /etc/environment
> i
add /usr/local/mysql/bin
> Esc
> ZZ
/* apache */
/* we will install it into the apachehome direcoty (change it for Your needs) */
> cd /distribs
> tar -zxvf httpd*.tar.gz
> cd ./httpd*
> ./configure \
> --prefix=/apachehome \
> --enable-rewrite=shared \
> --enable-deflate=shared \
> --enable-proxy=shared \
> --enable-proxy-ftp=shared \
> --enable-proxy-http=shared \
> --enable-proxy-connect=shared \
> make
> make install
/* autostart apache on boot */
> cp /apachehome/bin/apachectl /etc/
> chmod +x /etc/init.d/apachectl
> update-rc.d apachectl defaults
/* check it*/
/* check apache */
> /etc/init.d/apachectl start
> netstat -tap
/* now reboot the system */
> shutdown -r now
/* login as root */
> perl -MCPAN -e shell
/* here will go perl modules install by CPAN */
> install Bundle::CPAN
/* configure it */
> q
> perl -MCPAN -e shell
/* reconfig it again */
> q
> perl -MCPAN -e shell
/* lets go */
> install Cwd
> install Data::Dumper
> install ExtUtils::CBuilder
> install ExtUtils::MakeMaker
> install ExtUtils::XSBuilder
> install ExtUtils::Install
> install ExtUtils::ParseXS
> install ExtUtils::Install
> install ExtUtils::Manifest
> install ExtUtils::Mkbootstrap
> install File::Basename
> install File::Compare
> install File::Copy
> install File::Find
> install File::Path
> install File::Spec
> install Getopt::Long
> install IO::File
> install Test::Harness
> install Text::Abbrev
> install Text::ParseWords
> install Archive::Tar
> install Archive::Zip
> install Module::Signature
> install Pod::Readme
> install Apache::Test
/* you apache path is /apachehome , executable /apachehome/bin/apachectl , apxs = /apachehome/bin/apxs */
> install Test::More
/* in this place I prefer to run force install*/
> force install Module::Build **this command is optional
> q
/* reboot system */
> shutdown -r now
/* login as root */
> perl -MCPAN -e shell
/* now we will prepare environment for mod_perl */
> install Bundle::Apache2
/* everything should be ok, beside of Crypt::SSLeay (if there would be problems with it then u should install it manually)*/
/* manual install Crypt::SSLeay */
> cd /distribs
> tar -zxvf Crypt-SSLeay-0.51.tar.gz
> cd ./Crypt*
/* in config u would enter the ssl's path = /usr/local/ssl */
> perl Makefile.PL
> make
> make test
> make install
/* again */
> perl -MCPAN -e shell
> install Bundle::Apache2
/* everything should be ok */
> q
> cd /distribs
> tar -zxvf mod_perl*.tar.gz
> cd ./mod_perl*
> perl Makefile.pl MP_APXS=/apachehome/bin/apxs
> make
> make test
> make install
> vi /apachehome/conf/httpd.conf
/* find LoadModule dirs and add *\
/* to edit press on "i" and edit then press "esc", then to exit hold shit and press ZZ */
> i **edit file**
/* add next line */
LoadModule perl_module modules/mod_perl.so
> Esc
> ZZ **exit file**
> /etc/init.d/apachectl stop
> /etc/init.d/apachectl start
/* open in brouser and enter wrong path to see it indicated */
/* installing libapreq */
> perl -MCPAN -e shell
> install Apache2::Request
/* everything should be OK, if not the unstall it manually */
> cd /dustribs
> tar -zxvf libapreq*.tar.gz
> cd ./libapreq*
> perl Makefile.PL --with-apache2-apxs=/apachehome/bin/apxs
> make
> make test
> make install
> vi /apachehome/conf/httpd.conf
/* find LoadModule dirs and add *\
/* to edit press on "i" and edit then press "esc", then to exit hold shit and press ZZ */
> i **edit file**
/* add net line */
LoadModule apreq_module modules/mod_apreq2.so
> Esc
> ZZ ** exit file**
> /etc/init.d/apachectl stop
> /etc/init.d/apachectl start
/* open in brouser and enter wrong path to see it indicated */
> shutdown -r now
/*login as root */
> perl -MCPAN -e shell
> install LWP
> install Cache::Cache
> install HTML::Parser
> install HTML::Request
> install HTML::Headers
> install Test::More
> install Pod::Coverage
> install Text::Balanced
> install Digest::MD5
> install DBI
> q
> cd /distribs
> tar -zxvf DBD-mysql*.tar.gz
> cd ./DBD-m*
>perl Makefile.PL \
> --libs="-L/usr/local/mysql/lib/mysql -lmysqlclient -lz" \
> --cflags=-I/usr/local/mysql/include/mysql \
> --testhost=127.0.0.1
> make
> make test /* Some minor error messages can be ignored here */
> make install
> perl -MCPAN -e shell
> install Archive::Tar
> install Archive::Zip
> install IO::Zlib
> install Compress::Zlib
> install Net::SMTP
> install Tie::IxHash
> install Tie::CPHash
> install XML::Sax
> install XML::Parser
> install XML::SAX::Expat
> install XML::NamespaceSupport
> install XML::Simple
> install SOAP::Lite
> install DateTime
> install Time::HiRes
> install DateTime::Format::Strptime
> install DateTime::Cron::Simple
> install Image::Magick
> install Log::Log4perl
> install Net::LDAP
> install HTML::TagFilter
> install HTML::Highlight
> install HTML::Template
> install HTML::Template::Expr
> install Template
> install Parse::PlainConfig
> install XML::RSSLite
> install JSON
> install Finance::Qoute
> install Data::Structure::Util
> install Test::Deep
> install Test::MockObject
> install MIME::Tools
> install POE
> install POE::Component::IKC::Server
> install POE::Component::Client::UserAgent
> install Net::Subnets
> install DateTime::Format::Mail
> install Net::POP3
> install List::Util
> install Color::Calc
> install POE::Component::Client::HTTP
> install Cache::Memcached
> q
/* download and install WebGUI */
> cd /
> pwd /* u should see "/" */
> mkdir data
> cd /distribs
> wget http://update.webgui.org/7.x.x/webgui-7.0.6-stable.tar.gz
> tar -zxvf webgui*.tar.gz
> cp ./WebGUI /data/WebGUI
/* run "testEnvironment.pl" to detect and install missed perl modules (I'm a human and could mess some modules) */
/* now we will setup network for SPECTRE */
> vi /etc/hosts
/* just add youir hosts */
<!--- begin hosts file before -->
127.0.0.1 localhost
127.0.1.1 yuordomain.somewords yuordomain
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
**add here Your hosts***
<!-- hosts file end ------>
/* u shouldn't remove or modify any words, just add next */
/* u should add your domains */
<!-- begin hosts file after ---->
127.0.0.1 localhost
127.0.1.1 yuordomain.somewords yuordomain
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
127.0.0.1 www.mysite1.com
127.0.0.1 mysite1.com
127.0.0.1 www.mysite2.com
127.0.0.1 mysite2.com
127.0.0.1 www.mysite3.com
127.0.0.1 mysite3.com
127.0.0.1 www.mysite4.com
127.0.0.1 mysite4.com
<!-- end hosts file -->
> shutdown -r now
CONGRATULATIONS
See the PlainBlack's tutorial for installing WebGUI
Now You should setup Your mysql and firewall to make it secure
if You want to remove the root acount (I recommnend to this after WebGUI installation )
/* login as first user */
> login: firstuser
> password: userone
> sudo passwd -l root
> exit
To setup mail-server use this link (the postfix setup - page5)
<!----- here the full list of perl modules by testEnvironment.pl ------------>
/* run "testEnvironment.pl" to detect and install missed perl modules (I'm a human and could mess some modules) */
Checking for module LWP: OK
Checking for module HTTP::Request: OK
Checking for module HTTP::Headers: OK
Checking for module Test::More: OK
Checking for module Test::MockObject: OK
Checking for module Test::Deep: OK
Checking for module Pod::Coverage: OK
Checking for module Text::Balanced: OK
Checking for module Digest::MD5: OK
Checking for module DBI: OK
Checking for module DBD::mysql: OK
Checking for module HTML::Parser: OK
Checking for module Archive::Tar: OK
Checking for module Archive::Zip: OK
Checking for module IO::Zlib: OK
Checking for module Compress::Zlib: OK
Checking for module Net::SMTP: OK
Checking for module MIME::Tools: OK
Checking for module Net::POP3: OK
Checking for module Tie::IxHash: OK
Checking for module Tie::CPHash: OK
Checking for module XML::Simple: OK
Checking for module SOAP::Lite: OK
Checking for module DateTime: OK
Checking for module Time::HiRes: OK
Checking for module DateTime::Format::Strptime: OK
Checking for module DateTime::Cron::Simple: OK
Checking for module DateTime::Format::Mail: OK
Checking for module Image::Magick: OK
Checking for module Log::Log4perl: OK
Checking for module Net::LDAP: OK
Checking for module HTML::Highlight: OK
Checking for module HTML::TagFilter: OK
Checking for module HTML::Template: OK
Checking for module HTML::Template::Expr: OK
Checking for module Template: OK
Checking for module Parse::PlainConfig: OK
Checking for module XML::RSSLite: OK
Checking for module JSON: OK
Checking for module Net::Subnets: OK
Checking for module Finance::Quote: OK
Checking for module POE: OK
Checking for module POE::Component::IKC::Server: OK
Checking for module POE::Component::Client::HTTP: OK
Checking for module Data::Structure::Util: OK
Checking for module Apache2::Request: OK
Checking for module Cache::Memcached: OK
Checking for module URI::Escape: OK
Checking for module POSIX: OK
Checking for module List::Util: OK
Checking for module Color::Calc: OK
<!----- here the full list of perl modules ------------>