root/trunk/docs/CentOS/INSTALL

Revision 1396, 11.8 kB (checked in by scitech, 2 weeks ago)

Fixed #1565: Some issues on CentOS 5.2

Line 
1 ispCP Ï(OMEGA) HowTo Install for CentOS 5.2
2 ================================================================================
3 For other Linux distributions please check the other INSTALL files.
4 ================================================================================
5
6 Table of Content
7 ================
8 1) Version Info
9 2) Requirements
10 3) Introduction
11 4) Installation
12 5) Update
13 6) Credits
14
15 ================================================================================
16 1) Version Info
17 ---------------
18 ispCP ÏVersion:        1.0.0 RC6
19 INSTALL Script:        1.1
20 Maintainer:
21 Homepage:              http://isp-contol.net
22 Linux Distros:         CentOS 5.2
23
24 ================================================================================
25 2) Requirements
26 ---------------
27 There is no must have for a system using ispCP Ï This is only a recommendation:
28
29 Pentium III or K6-4 with 500 MHz
30 512 MB RAM
31 100 MB disk space (only for install of ispCP Ï
32 Debian (or even any other *NIX-Distribution)
33
34 All required packages are listed in ./docs/CentOS
35
36 ================================================================================
37 3) Introduction
38 ---------------
39 ispCP Ïdelivers a complete hosting automation appliance by offering significant
40 security, total-cost-of-ownership, and performance advantages over competing
41 commercial solutions.
42
43 With ispCP Ïyou can configure your server and applications, create user with
44 domains with a few point-and-click operations that take less than a minute.
45 There is no limit to the number of resellers, users and domains that can be
46 created. The core of ispCP Ïare 3 easy-to-use, web-based control panels. ispCP
47 provides graphic user interfaces for the administrators, resellers and users.
48
49 ================================================================================
50 4) Preparation
51 --------------
52 For the following steps, you will need to be logged in as root.
53
54 1. First, you will need to install the RPMForge repository for some of the
55    packages required. It is recommended to follow the directions located at
56    http://wiki.centos.org/Repositories/RPMForge, especially concerning the
57    priorities plugin.
58
59 2. Next, make sure your system packages are updated. This is as simple as running:
60         # yum update
61
62 3. You now need to disable SELinux, if it is enabled. You can do this by running
63    the following command:
64         # setenforce 0
65    Now, you will want to make sure it is off for future boots. Set "SELINUX" to
66    "disabled" by editing /etc/selinux/config.
67
68 4. Untar or unzip the distribution files to a secure directory:
69         # cd /root
70         # tar xjvf ispcp-omega-1.0.0-rc6.tar.bz2
71
72 5. Change to the newly created directory:
73         # cd ./ispcp-omega-1.0.0
74
75 6. Next, install the software packages we need. A list is conveniently provided
76    and can be used to install by running the following:
77         # yum install `cat ./docs/CentOS/centos-packages`
78    After that, we need to install a few perl modules that aren't packaged. You
79    can run the following command to install them:
80         # cat ./docs/CentOS/centos-perl | xargs -I {} perl -MCPAN -e 'install {}'
81
82    Note: If you've never run 'perl -MCPAN -e shell' before, you'll have to do this
83          first and answer 'no' to autoconfigure perl.
84
85 7. Next, we add remi repository because Centos 5 ships with php 5.1.6 that do not work nice:
86
87         # wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-2.noarch.rpm
88         # wget http://rpms.famillecollet.com/el5.i386/remi-release-5-4.el5.remi.noarch.rpm
89         # rpm -Uvh remi-release-5*.rpm epel-release-5*.rpm
90
91    Then in /etc/yum.repos.d/remi.repo add
92    Edit the  /etc/yum.repos.d/remi.repo files in /etc/yum.repos.d/ and set up priorities
93    by adding the line:
94
95         priority=1
96
97    to a repository entry. Do same thing to /etc/yum.repos.d/epel.repo and /etc/yum.repos.d/epel-testing.repo
98    Next lets update php:
99
100         # yum --enablerepo=remi update php*
101
102 8. Now, remove Sendmail so Postfix will be the default MTA
103
104         # yum remove sendmail
105
106 9. Install the Courier IMAP server. Packages for this are not in the default
107    repositories, but are available from third-party packagers such at at
108    http://www.thatfleminggent.com/. The following three packages are the latest
109    versions as of the last update, but you should check the package list at the
110    previous site to make sure you have the latest versions.
111
112         # wget http://www.thatfleminggent.com/packages/centos/5/i386/courier-authlib-0.60.6-1.el5.mf.i386.rpm
113         # wget http://www.thatfleminggent.com/packages/centos/5/i386/courier-authlib-userdb-0.60.6-1.el5.mf.i386.rpm
114         # wget http://www.thatfleminggent.com/packages/centos/5/i386/courier-imap-4.3.1-2.el5.mf.i386.rpm
115         # rpm -i courier-authlib-0.60.6-1.el5.mf.i386.rpm
116         # rpm -i courier-authlib-userdb-0.60.6-1.el5.mf.i386.rpm
117         # rpm -i courier-imap-4.3.1-2.el5.mf.i386.rpm
118
119   You will also need to do some minor configuration by adding a user and group
120   for courier. The following commands will acomplish this:
121         # groupadd courier -g 3000
122         # useradd -u 3000 -c 'Courier Mail Server' -d /dev/null -g courier -s /bin/false courier
123
124 10. Now we need to configure MySQL. To do this, it must be running. To make sure
125    it is running, run the following command:
126         # service mysqld start
127    After it starts, you can run the mysql_secure_installation script. This will
128    set up MySQL with an administrator password and make sure any non-secure
129    default items like the test database are removed. This is very important if
130    the server will be for shared hosting.
131         # /usr/bin/mysql_secure_installation
132    Make sure to remember the root password for MySQL. You will need it later.
133
134 11. Install mod_fcgid. Packages for this are not in the default
135     repositories, but are available from third-party packagers such at at
136     http://centos.karan.org/. The following package are the latest
137     versions as of the last update, but you should check the package list at the
138     previous site to make sure you have the latest versions.
139
140         # wget http://centos.karan.org/el5/extras/testing/i386/RPMS/mod_fcgid-2.2-4.el5.kb.i386.rpm
141         # rpm -i mod_fcgid-2.2-4.el5.kb.i386.rpm
142
143 12. Remove all files from /etc/httpd/conf.d
144
145         # rm -f /etc/httpd/conf.d/*
146 ================================================================================
147 4) Installation
148 ---------------
149 For the following steps, you will need to be logged in as root and MySQL will
150 need to be running.
151
152 1. (optional) Check the ispcp.conf and adapt it to your requirements.
153
154 2. Build the System by using make:
155         # make -f Makefile.centos install
156
157 3. Copy all the directories into your system (you may make backups)
158         # cp -RLf /tmp/ispcp/* /
159         # cp -Rv /tmp/ispcp/etc/init.d /etc/rc.d/
160         # ln -s /etc/rc.d/init.d /etc/init.d
161         # mkdir /var/mail/virtual
162
163 4. Now, setup some items for BIND configuration:
164         # mv /var/named/data /var/named/data2
165         # ln -s /var/named/chroot/var/named/data /var/named/data
166         In file /var/named/chroot/etc/named.caching-nameserver.conf after line:
167                 include "/etc/named.rfc1912.zones";
168         add
169                 include "/etc/named-ispcp.conf";
170         Modify /var/named/chroot/etc/named.caching-nameserver.conf according your needs (default it binds only to localhost)
171
172 5. Next, we create the SASL database directory and link the configuration for
173    Postfix
174         # touch /etc/sasldb2
175         # mkdir -p /var/spool/postfix/etc
176         # cp /etc/sasldb2 /var/spool/postfix/etc/sasldb2
177
178    Now, edit /usr/lib/sasl2/smtpd.conf to use the SASL database. Replace the
179    contents of that file with the following:
180         pwcheck_method: auxprop
181         auxprop_plugin: sasldb
182         mech_list: PLAIN LOGIN CRAM-MD5 DIGEST-MD5
183
184 6. A little bit of Apache configuration is needed:
185
186         # echo 'include vhosts/*.conf' >> /etc/httpd/conf/httpd.conf
187
188         # chown apache:apache /var/www/ispcp/gui/tools/webmail/data
189
190 7. Now it's time to set up the frontend. When prompted for fastcgi version select fcgid ( press "c").
191    We need to change into the right directory and run the setup tool:
192         # cd /var/www/ispcp/engine/setup
193         # perl ispcp-setup
194
195         If you get no error, all went good; if you get one, look at
196         http://isp-control.net to solve the problem.
197
198 ================================================================================
199 4) Post-Installation
200 --------------------
201 1. There is a bug in some versions of courier that prevent courier-authdaemon
202    from stopping with the default service script. You will need to make an edit
203    to fix this. Edit /etc/init.d/courier-authlib and
204         change: ${libexecdir}/authlib/authdaemon stop
205         into:   killall authdaemond.plain
206
207 2. Modify some system values:
208         # chmod 777 /var/www/ispcp/gui/phptmp
209
210         * Install Daemon:
211         # chkconfig --add ispcp_daemon
212         # chkconfig --add ispcp_network
213         # chkconfig --levels 345 ispcp_daemon on
214         # chkconfig --levels 345 ispcp_network on
215         # service ispcp_daemon start
216         # service ispcp_network start
217
218 3. Clean the temporary folders:
219         # rm -R /tmp/ispcp
220
221 ================================================================================
222 5) Update
223 ---------
224 For the following steps, you will need to be logged in as root and MySQL will
225 need to be running.
226
227 1. Untar or unzip the distribution files to a secure directory:
228     # cd /root
229     # tar xjvf ispcp-omega-1.0.0-rc6.tar.bz2
230
231 2. Change to the newly created directory:
232     # cd ./ispcp-omega-1.0.0
233
234 3. Next, install the software packages we need. A list is conveniently provided
235    and can be used to install by running the following:
236     # yum install `cat ./docs/CentOS/centos-packages`
237    After that, we need to install a few perl modules that aren't packaged. You
238    can run the following command to install them:
239     # cat ./docs/CentOS/centos-perl | xargs -I {} perl -MCPAN -e 'install {}'
240
241 4. (optional) Check the ispcp.conf and adapt it to your requirements.
242 5. Build the System by using make:
243     # make -f Makefile.centos install
244
245 6. Save files
246     # cp -v /var/www/ispcp/engine/ispcp-db-keys.pl /tmp/ispcp/var/www/ispcp/engine/
247     # cp -v /var/www/ispcp/engine/messager/ispcp-db-keys.pl /tmp/ispcp/var/www/ispcp/engine/messager/
248     # cp -v /var/www/ispcp/gui/include/ispcp-db-keys.php /tmp/ispcp/var/www/ispcp/gui/include/
249     # cp -v /var/www/ispcp/gui/themes/user_logos/* /tmp/ispcp/var/www/ispcp/gui/themes/user_logos/
250
251    If updating from RC3 or higher:
252     # cp -v /var/www/ispcp/gui/tools/pma/config.inc.php /tmp/ispcp/var/www/ispcp/gui/tools/pma/
253
254 7. Delete old files to avoid security risks:
255         # rm -fR /var/www/ispcp/gui/{admin,client,include,orderpanel,themes,reseller}/
256         # rm -fR /var/www/ispcp/gui/*.php
257
258 8. Copy /usr and /var directories into your system (you may make backups)
259         # cp -Rv /tmp/ispcp/usr/* /usr/
260         # cp -Rv /tmp/ispcp/var/* /var/
261
262 9. Backup ispcp.conf and copy the /etc directory into your system (you may make backups):
263         # mv -v /etc/ispcp/ispcp.conf /etc/ispcp/ispcp.old.conf
264
265    If updating from RC5:
266         # cp -Rv /tmp/ispcp/etc/ispcp/* /etc/ispcp
267
268    else:
269         # cp -Rv /tmp/ispcp/etc/* /etc/
270
271 10. Now it's time to update your installation. Change into the engine directory:
272         # cd /var/www/ispcp/engine/setup
273
274 11. Start the engine update:
275         # perl ispcp-update
276
277 12. Update ispCP ω step-by-step
278
279         If you get no error, all went good; if you get one, look at
280         http://isp-control.net to solve the problem.
281
282 13. Clean the temporary folders:
283         # rm -fR /tmp/ispcp/
284
285 ================================================================================
286 6) Credits
287 ----------
288
289 ispCP Ïis a project of ispCP | isp Control Panel.
290 Please visit our site under http://isp-control.net for further information on
291 ispCP Ï ispCP and other themes.
292
293 We hope you enjoy using ispCP Ï If you like it, help us, to make it better. We
294 would be glad on any help provided!
Note: See TracBrowser for help on using the browser.