- 1 Installation
- 2 Configuration
- 3 Install Roundcube
- 4 Tips and tricks
- 5 See also
Since 1.1.0 roundcube needs iconv and/or mbstring PHP extensions.
Here's an example on how you could setup a database for Roundcube with MariaDB called
roundcubemail for the user
roundcube identified by the password
CREATE DATABASE roundcubemail; GRANT ALL PRIVILEGES ON roundcubemail.* TO 'roundcube'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES;
For any database you use, you will need to initialize the roundcubemail database tables. Here is an example of how to do this with MariaDB:
mysql -u root -p roundcubemail < /usr/share/webapps/roundcubemail/SQL/mysql.initial.sql
Copy the example configuration file and adjust it to your configuration:
cp /etc/webapps/roundcubemail/config/config.inc.php.sample /etc/webapps/roundcubemail/config/config.inc.php
Set your mail server settings, and set
enable_installer to enable the setup wizard:
$config['db_dsnw'] = 'mysql://roundcube:****@localhost/roundcubemail'; $config['default_host'] = 'tls://localhost'; $config['smtp_server'] = 'localhost'; $config['enable_installer'] = true;
Make sure to adjust following variables to these minimal values in your PHP config:
date.timezone = "UTC"
Copy the configuration file for Apache to its configuration directory:
cp /etc/webapps/roundcubemail/apache.conf /etc/httpd/conf/extra/roundcube.conf
And include it at the bottom of
Restart Apache (
Finally you can visit the Roundcube installation wizard in your browser: http://localhost/roundcube/installer
For security reasons, you should disable the installer when you have completed the wizard: remove
$config['enable_installer'] = true; from
~/roundcube/config directory contains sensitive information about your server, it's also a good idea to disallow access to this directory by adding these lines, too.
<Directory /usr/share/webapps/roundcubemail/config> Options -FollowSymLinks AllowOverride None Require all denied </Directory>
Tips and tricks
Setting Roundcube up for use with an IMAP server that only allows TLS authentication
It's quite common for modern IMAP servers to only allow encrypted authentication, say using STARTTLS. If you are setting Roundcube up for TLS authentication, the web-based installer won't help you. You will need to edit the
/etc/webapps/roundcubemail/config/config.inc.php by hand, adding the following lines:
$config['default_host'] = 'tls://mail.my_domain.org';
$config['imap_conn_options'] = array( 'ssl' => array( 'verify_peer' => true, 'allow_self_signed' => true, 'peer_name' => 'mail.my_domain.org', 'ciphers' => 'TLSv1+HIGH:!aNull:@STRENGTH', 'cafile' => '/etc/ssl/certs/ssl-cert-cyrus.my_domain.org.pem', ), );
mail.my_domain.org is the
CN host name in your SSL certificate (i.e. the hostname of your IMAP server), and
/etc/ssl/certs/ssl-cert-cyrus.my_domain.org.pem is the path to your SSL certificate. You might need to adjust the
ciphers element to correspond to the ciphers allowed by your IMAP server.
A complete list of PHP SSL configuration options can be found here.
PDF and OpenDocument file preview
Following Roundcube extensions enables you to preview PDF or OpenDocument file attachements. Install AUR and adjust following configuration file to enable the extensions:AUR from the
$config['plugins'] = array( 'pdfviewer', 'odfviewer' );
If you encounter any file permission issues, than try this command:
chown -R http:http /usr/share/webapps/roundcubemail/plugins/odfviewer/files
Synchronize address book with CardDav contacts
It's useful to use the Roundcube address book to have auto-completion features for address fields etc. If you have your contacts stored somewhere else and the remote application offers a CardDav server for synchronization, then you can use the AUR to access your remote address book in Roundcube. To enable it, adjust following lines in your config file:AUR extension from the
$config['plugins'] = array( 'carddav' );
Further usage instructions can be found here.