Debian (Etch/Lenny), ispCP, MySQL, Apache 2.x, Mailserver
Current Version: 0.3.1 Stable with API
http://roundcube.net/
For any Help –> http://www.isp-control.net/forum/thread-7816.html
# cd /usr/local/src # mkdir roundcube # cd roundcube
# wget http://heanet.dl.sourceforge.net/project/roundcubemail/roundcubemail/0.3.1/roundcubemail-0.3.1.tar.gz
# tar xvfz roundcubemail-0.3.1.tar.gz
# mkdir /var/www/ispcp/gui/tools/roundcube
# cp -r roundcubemail-0.3.1/* /var/www/ispcp/gui/tools/roundcube
# chown -R vu2000:www-data /var/www/ispcp/gui/tools/roundcube # cd /var/www/ispcp/gui/tools/roundcube # chmod 755 temp logs
# mysql -u root -p
Your MySQL Root password
replace yourpassword with your
CREATE DATABASE roundcubemail DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'yourpassword'; quit
# mysql -u roundcube -p roundcubemail < SQL/mysql.initial.sql
adjust your Roundcube Database Password accordingly
# cd /var/www/ispcp/gui/tools/roundcube/config # cp db.inc.php.dist db.inc.php # cp main.inc.php.dist main.inc.php
# pico db.inc.php
and edit the following lines
$rcmail_config['db_dsnw'] = 'mysql://roundcube:YourPASSWORD@localhost/roundcubemail';
# pico main.inc.php
line 44: $rcmail_config['message_cache_lifetime'] = '30m'; line 55: $rcmail_config['default_host'] = 'localhost'; line 127: $rcmail_config['session_lifetime'] = 30; line 180: $rcmail_config['create_default_folders'] = TRUE;
# pico /etc/apache2/sites-available/00_master.conf
and add the following entry:
Alias /cube /var/www/ispcp/gui/tools/roundcube/
(if you like you can also simply replace Webmail, ich prefer the additional alternative)
# pico /etc/apache2/sites-available/06-roundcube
insert the following content:
<VirtualHost XXX.XXX.XXX.XXX:80> ServerAdmin webmaster@yourdomain.tld DocumentRoot /var/www/ispcp/gui/tools/roundcube ServerName cube.yourdomain.tld ServerAlias cube.* ErrorLog /var/log/apache2/users/cube-error.log TransferLog /var/log/apache2/users/cube-access.log CustomLog /var/log/apache2/cube-traf.log traff CustomLog /var/log/apache2/cube-combined.log combined <IfModule suexec_module> SuexecUserGroup vu2000 vu2000 </IfModule> <Directory /var/www/ispcp/gui/tools/roundcube> Options -Indexes Includes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all </Directory> <IfModule mod_fcgid.c> <Directory /var/www/ispcp/gui/tools/roundcube> FCGIWrapper /var/www/fcgi/master/php5-fcgi-starter .php Options +ExecCGI </Directory> <Directory "/var/www/fcgi/master"> AllowOverride None Options +ExecCGI MultiViews -Indexes Order allow,deny Allow from all </Directory> </IfModule> <IfModule mod_fastcgi.c> ScriptAlias /php5/ /var/www/fcgi/master/ <Directory "/var/www/fcgi/master"> AllowOverride None Options +ExecCGI MultiViews -Indexes Order allow,deny Allow from all </Directory> </IfModule> <IfModule mod_php5.c> <Directory /var/www/ispcp/gui/tools/roundcube> php_admin_value open_basedir "/var/www/ispcp/gui/tools/roundcube/:/etc/ispcp/:/var/run/ispcp.lock:/proc/:/bin/df:/bin/mount:/var/log/rkhunter.log:/var/log/chkrootkit.log:/usr/share/php/" php_admin_value session.save_path "/var/www/ispcp/gui/phptmp/" php_admin_value upload_tmp_dir "/var/www/ispcp/gui/phptmp/" </Directory> </IfModule> </VirtualHost>
The data for <VirtualHost xxx.xxx.xxx.xxx:80, ServerAdmin und ServerName need to be adjusted with regard to your own conditions.
# a2ensite 06-roundcube
# /etc/init.d/apache2 force-reload
Since Roundcube 0.3 has an API we can start to use Plugins.
There is a “ispCP Password-Changer Plugin” available (thanks to TheCry)
So is the customer able to change his password in Roundcube directly.
# cd /var/www/ispcp/gui/tools/roundcube/plugins # wget http://www.deluxe-styles.de/ispcp/ispcp_pw_changer.tar.gz # tar -xvzf ispcp_pw_changer.tar.gz # chown -R vu2000:www-data ispcp_pw_changer # cd /var/www/ispcp/gui/tools/roundcube/plugins/ispcp_pw_changer
Now we need do config the Plugin
# mv config.inc.php.dist config.inc.php # vi config.inc.php
Please set now your MySQL Login in the config, and Copy the two Key “ispcp_db_pass_key” and “ispcp_db_pass_iv” from ”/var/www/ispcp/gui/include/ispcp-db-keys.php” into the fields.
Now we only need to enable the Plugin in the main.inc.php
# vi /var/www/ispcp/gui/tools/roundcube/config
And modify it like this:
$rcmail_config['plugins'] = array('ispcp_pw_changer');
Needs Dovecot with pysieved
- http://www.isp-control.net/documentation/howto/mail/replace_courier_with_dovecot
- http://www.isp-control.net/documentation/howto/mail/install_avelsieve_for_webmail
Since Roundcube 0.3 the Managsieve Plugin is included per default, you only need to enable it.
# vi /var/www/ispcp/gui/tools/roundcube/config/main.inc.php
And add the Plugin in to the Plugin array
// List of active plugins (in plugins/ directory) $rcmail_config['plugins'] = array('ispcp_pw_changer', 'managesieve');
Thats it!