Roundcubemail

Posted on ven. 03 décembre 2010 in Systeme

Présentation

Roundcube is a web-based IMAP email client. Roundcube's most prominent feature is the pervasive use of Ajax technology. After about two years of development, the first stable release of Roundcube was announced in early 2008.

Roundcube is written in PHP and can be employed in conjunction with a LAMP "stack", or any other operating systems that support PHP are supported as well. The web server needs access to the IMAP server hosting the email and to an SMTP server to be able to send mails.

Roundcube is free and open-source software subject to the terms of the GNU General Public License (GPL) with exceptions for skins and plugins.

Installation

Pré-requis

apt-get install php5-fpm php5-mysql php5-pspell php5-curl

Roundcubemail

Les paquets présents dans les distributions étant souvent en retard, nous allons prendre directement la dernière version stable disponible.

wget http://sourceforge.net/projects/roundcubemail/files/latest/download?source=files -O roundcubemail.tar.gz
tar -zxfv roundcubemail.tar.gz -C /var/www/html/
mv /var/www/html/roundcubemail-* /var/www/html/roundcubemail
chown -R www-data:root /var/www/html/roundcubemail

Configuration serveur web

PHP

upload_max_filesize = 50M
post_max_size = 50M

Apache

<VirtualHost *:80>
        ServerName      roundcube.hostname.tld
        ServerAdmin     admin@hostname.tld
        DocumentRoot    /var/www/html/roundcubemail

        <Directory /var/www/html/roundcubemail>
                AllowOverride All
                Order Allow,Deny
                Allow from All
        </Directory>
</VirtualHost>

nginx

server {
       listen 80;
       server_name roundcube.hostname.tld;
       root /var/www/html/roundcubemail;

       index index.php index.html;

       client_max_body_size 50M;

       location ~ ^/favicon.ico$ {
                root /var/www/html/roundcubemail/web/skins/default/images;
                log_not_found off;
                access_log off;
                expires max;
       }

       location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
       }

       location ~ ^/(README|INSTALL|LICENSE|CHANGELOG|UPGRADING)$ {
                deny all;
       }
       location ~ ^/(bin|SQL)/ {
                deny all;
       }

       # Deny all attempts to access hidden files such as .htaccess or .htpasswd.
       location ~ /\. {
                deny all;
                access_log off;
                log_not_found off;
       }

       location ~ \.php$ {
                try_files $uri =404;
                include /etc/nginx/fastcgi_params;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                fastcgi_index index.php;
       }
}

Base de données

mysql -u root -p
CREATE DATABASE roundcube;
GRANT ALL PRIVILEGES ON roundcube.* TO roundcube@localhost IDENTIFIED BY "password";
FLUSH PRIVILEGES; 
quit

Configuration

http://roundcube.hostname.tld

Pluggins

Pour installer un pluggin :

cd /var/www/html/roundcubemail/plugins
wget url_du_pluggin
tar xzfv pluggin.tar.gz
# vim ../config/config.inc.php

http://trac.roundcube.net/wiki/Dev_Encryption http://mattrude.com/projects/roundcube-fail2ban-plugin/ https://github.com/cosminadrianpopescu/markdown_editor http://trac.roundcube.net/browser/github/plugins/emoticons http://www.stremlau.net/html5_notifier/ http://trac.roundcube.net/browser/github/plugins/vcard_attachments https://github.com/kepi/show-gravatar http://trac.roundcube.net/browser/github/plugins/password https://plugins.roundcube.net/packages/johndoh/sauserprefs https://github.com/northox/roundcube-yubikey-plugin https://github.com/eagle00789/RC_Filters