Monday, July 7, 2008

Fedora 9: RoundCube WebMail Install HowTo

Roundcube webmail is modern webmail solution which is easy to install and configure. Roundcube webmail runs on a standard PHP/MySQL configuration. The skins use the latest web standards such as XHTML and CSS. The roundcube project includes open-source classes/libraries like PEAR and the IMAP wrapper from IlohaMail.org.

Shown below are few of RoundCube webmail features:


  • Multilingual capabilities

  • Full support for MIME and HTML messages

  • Compose messages with attachments

  • Multiple sender identities

  • Basic address book

  • Find-as-you-type address book integration

  • Forwarding messages with attachments

  • Create or remove custom message folders

  • Built-in caching for fast mailbox access

  • Support for external SMTP server

  • Searching messages and contacts

  • Spell checking

  • Advanced user interface

  • Unlimited users and messages

  • Complete customization with skins


While Roundcube is GPLed available from many different linux platforms, including Fedora OS. Here's a quick screenshot of roundcube webmail:

roundcube webmail


Here's a quick howto install Roundcube webmail into your Fedora box.

Fedora 9: Roundcube Webmail Installation HowTo

Minimum Requirements:

a. Fedora OS box

b. Existing SMTP mail and IMAP server setup

c. Existing MySQL setup




1. As root, simply install roundcube via yum as shown

# yum -y roundcube

Roundcube webmail rpm packages installs itself to different folder locations. You can easily find roundcube configuratiion files from

a.  /etc/roundcube

b. /etc/httpd/conf.d/

2. Login inside your MySQL console and create Roundcube database and Roundcube user as shown

# mysql -u mysqlusername -pmysqlpassword

Replace mysqlusername and mysqlpassword to suit your MySQL setup.

3. Assuming that your MySQL is also running at localhost, create a local MySQL user named roundcube

mysql> GRANT USAGE ON *.* TO 'roundcube'@'localhost' IDENTIFIED BY 'roundcube-password' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 ;

Replace roundcube-password to suit your need.

4. Now create a Roundcube database named roundcube like so

mysql> create database roundcube;

5. Grant access to recently created MySQL local user named roundcube

mysql> GRANT SELECT, INSERT, UPDATE, DELETE ON `roundcube`.* TO 'roundcube'@'localhost';

6. Initialize the recently created roundcube database and fill it up with the needed roundcube tables from the built-in and default roundcube initial table contents

mysql> use roundcube; source /usr/share/doc/roundcubemail-0.2/SQL/mysql.initial.sql;

You should be seeing below similar mysql lines

Database changed
Query OK, 0 rows affected (0.39 sec)


Query OK, 0 rows affected (0.36 sec)

Query OK, 0 rows affected, 1 warning (0.34 sec)

Query OK, 0 rows affected (0.35 sec)

Query OK, 0 rows affected (0.18 sec)

Query OK, 0 rows affected (0.34 sec)

mysql> quit

7. Now, backup and modity /etc/roundcube/db.inc.php. Modify the lines to suit our current MySQL setup

$rcmail_config['db_dsnw'] = 'mysql://roundcube-mysql-user:roundcube-mysql-password@localhost/roundcube-database';

Save /etc/roundcube/db.inc.php and exit.

8. Backup and modify /etc/roundcube/main.inc.php and edit the lines

$rcmail_config['default_host'] = 'localhost';

The above would also remove a third box that says RoundCube server from roundcube URL. Make sure you have similar line as shown below

$rcmail_config['auto_create_user'] = TRUE;

Save /etc/roundcube/main.inc.php and exit.

9. Backup and modify /etc/httpd/conf.d/roundcubemail.conf. Modify to suit your need. By default, access to roundcube URL is only allowed from localhost. You can add your IP address and your network IP class here as well, like so

Alias /roundcubemail /usr/share/roundcubemail
<Directory /usr/share/roundcubemail/>
Order Deny,Allow
Deny from all
Allow from 127.0.0.1 83.83.83.83 your-ip-address
</Directory>


If you wish to change and customize roundcube default webmail URL, simply modify the line that refer to Alias default roundcube webmail directory.

Start your Apache to browse Roundcube webmail

# service httpd restart

By default, roundcube webmail can be accessed at http://localhost/roundcubemail/ . If you do not have a currently working SMTP, IMAP, MySQL server, roundcube would not work.

Launch your browser and point your URL to http://localhost/roundcubemail/ or

http://you-IP-address/roundcubemail/

The above roundcube webmail setup makes use of traditional default STMP setup and does not cover roundcube webmail configuration with virtual accounts, virtual aliases, virtual mail hosting and web hosting, it is simply a default webmail that works straight away with flat file MBOX (/etc/passwd, /etc/shadow) type of traditional mail box storage setup.

Visit Roundcube website here.

0 comments:

Sign up for PayPal and start accepting credit card payments instantly.
ILoveTux - howtos and news | About | Contact | TOS | Policy