|
|
Installation
|
-----------
|
|
It is recommended to use a clean (fresh) CentOS 5.4 install. Then follow the steps below to setup your server with ISPConfig 3:
|
|
Installation of some basic requirements:
|
|
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
|
|
enable the contrib and centosplus repositories.
|
|
vi /etc/yum.repos.d/CentOS-Base.repo
|
|
1. Edit the file /etc/yum.repos.d/CentOS-Base.repo and edit the lines below.
|
|
[base]
|
exclude=postfix
|
|
[update]
|
exclude=postfix
|
|
[centosplus]
|
enabled=1
|
includepkgs=postfix
|
|
[contrib]
|
enabled=1
|
|
rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
|
|
cd /tmp
|
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm
|
rpm -i rpmforge-release-0.5.1-1.el5.rf.i386.rpm
|
yum update
|
|
You should disable selinux now, as some programs will not start when selinux is enabled:
|
|
system-config-securitylevel-tui
|
|
then reboot the server.
|
|
Then remove the postfix without mysql support
|
|
yum remove postfix
|
|
1) Install Postfix fron centosplus with mysql support, Dovecot, MySQL, phpMyAdmin with the following command line (on one line!):
|
|
yum install ntp httpd mysql-server php php-mysql php-mbstring phpMyAdmin postfix getmail
|
|
For 32Bit systems:
|
|
rpm -i http://dl.atrpms.net/all/dovecot-1.2.11-3_108.el5.i386.rpm
|
rpm -i http://dl.atrpms.net/all/dovecot-sieve-0.1.15-4.el5.i386.rpm
|
|
For 64Bit Systems:
|
|
rpm -ivh http://dl.atrpms.net/all/dovecot-1.2.11-3_108.el5.x86_64.rpm
|
rpm -ivh http://dl.atrpms.net/all/dovecot-sieve-0.1.15-4.el5.x86_64.rpm
|
|
|
chkconfig --levels 235 mysqld on
|
/etc/init.d/mysqld start
|
|
chkconfig --levels 235 httpd on
|
/etc/init.d/httpd start
|
|
chkconfig --levels 235 dovecot on
|
/etc/init.d/dovecot start
|
|
chkconfig --levels 235 sendmail off
|
chkconfig --levels 235 postfix on
|
/etc/init.d/sendmail stop
|
/etc/init.d/postfix start
|
|
|
Set the mysql database password:
|
|
/usr/bin/mysql_secure_installation
|
|
|
2) Install Amavisd-new, Spamassassin and Clamav (1 line!):
|
|
yum install amavisd-new spamassassin clamav clamd unzip bzip2 unrar
|
|
sa-update
|
chkconfig --levels 235 amavisd on
|
chkconfig --levels 235 clamd on
|
/usr/bin/freshclam
|
/etc/init.d/amavisd start
|
/etc/init.d/clamd start
|
|
If you use the amavisd from rpmforge (as we do in this guide) and not the one from centos, you will have to do these additional steps:
|
|
add the following line in /etc/sysconfig/amavisd:
|
|
CONFIG_FILE="/etc/amavisd/amavisd.conf
|
|
run:
|
|
mkdir /var/run/amavisd /var/spool/amavisd /var/spool/amavisd/tmp /var/spool/amavisd/db
|
chown amavis /var/run/amavisd /var/spool/amavisd /var/spool/amavisd/tmp /var/spool/amavisd/db
|
ln -s /var/run/clamav/clamd.sock /var/spool/amavisd/clamd.sock
|
yum install perl-DBD-mysql
|
|
|
3) Install apache, PHP5 and phpmyadmin (1 line!):
|
|
yum install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-mbstring php-mcrypt php-mhash php-mssql php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel phpmyadmin
|
|
|
4) Install pure-ftpd and quota
|
|
yum install pure-ftpd quota
|
|
chkconfig --levels 235 pure-ftpd on
|
/etc/init.d/pure-ftpd start
|
|
5) Install bind dns server
|
|
yum install bind-chroot
|
|
chmod 755 /var/named/
|
chmod 775 /var/named/chroot/
|
chmod 775 /var/named/chroot/var/
|
chmod 775 /var/named/chroot/var/named/
|
chmod 775 /var/named/chroot/var/run/
|
chmod 777 /var/named/chroot/var/run/named/
|
cd /var/named/chroot/var/named/
|
ln -s ../../ chroot
|
cp /usr/share/doc/bind-9.3.6/sample/var/named/named.local /var/named/chroot/var/named/named.local
|
cp /usr/share/doc/bind-9.3.6/sample/var/named/named.root /var/named/chroot/var/named/named.root
|
touch /var/named/chroot/etc/named.conf
|
touch /var/named/chroot/etc/named.conf.local
|
|
vi /var/named/chroot/etc/named.conf
|
|
--------------------------------------------------------------------------------------------------
|
//
|
// named.conf
|
//
|
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
|
// server as a caching only nameserver (as a localhost DNS resolver only).
|
//
|
// See /usr/share/doc/bind*/sample/ for example named configuration files.
|
//
|
|
options {
|
listen-on port 53 { 127.0.0.1; };
|
listen-on-v6 port 53 { ::1; };
|
directory "/var/named/chroot/var/named";
|
dump-file "/var/named/chroot/var/named/data/cache_dump.db";
|
statistics-file "/var/named/chroot/var/named/data/named_stats.txt";
|
memstatistics-file "/var/named/chroot/var/named/data/named_mem_stats.txt";
|
allow-query { localhost; };
|
recursion yes;
|
};
|
|
logging {
|
channel default_debug {
|
file "data/named.run";
|
severity dynamic;
|
};
|
};
|
|
zone "." IN {
|
type hint;
|
file "named.root";
|
};
|
|
include "/var/named/chroot/etc/named.conf.local";
|
--------------------------------------------------------------------------------------------------
|
|
chkconfig --levels 235 named on
|
/etc/init.d/named start
|
|
6) Install vlogger dependencies and webalizer
|
|
yum install webalizer perl-DateTime-Format-HTTP perl-DateTime-Format-Builder
|
|
Installing Jailkit:
|
|
yum install gcc
|
cd /tmp
|
wget http://olivier.sessink.nl/jailkit/jailkit-2.11.tar.gz
|
tar xvfz jailkit-2.11.tar.gz
|
cd jailkit-2.11
|
./configure
|
make
|
make install
|
rm -rf jailkit-2.11*
|
|
Edit the file /etc/sudoers
|
|
vi /etc/sudoers
|
|
and change the line:
|
|
Defaults requiretty
|
|
to:
|
|
# Defaults requiretty
|
|
|
7) Install ISPConfig 3
|
|
|
cd /tmp
|
wget http://www.ispconfig.org/downloads/ISPConfig-3.0.2.tar.gz
|
tar xvfz ISPConfig-3.0.2.tar.gz
|
cd ispconfig3_install/install/
|
|
Now start the installation process by executing:
|
|
php -q install.php
|
|
The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
|
|
http://192.168.0.100:8080/
|
|
the default login is:
|
|
user: admin
|
password: admin
|
|
In case you get a permission denied error from apache, please restart the apache webserver process.
|
|
Optional:
|
|
Install a webbased Email Client
|
|
yum install squirrelmail
|