tbrehm
2012-06-11 897af06af9522ded99b1e0f46730299e89856ffe
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
 
 
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