17 C
Senior Writer and partner

Install RainLoop a web-based email client on Ubuntu 18.04

Email plays an important role in companies and on a personal level. Sometimes it is convenient to have a personal email server, but sometimes it is not. So for this, we would use the web interface of each of the email services. In general, all these web clients fulfill their purpose and there is no need for a third party client. Although sometimes it is necessary to have an alternative to them, there are desktop clients such as Thunderbird but there are also web-based. That’s why today I’ll show you how to install RainLoop on Ubuntu 18.04.

RainLoop is a modern email client created in PHP. It is quite lightweight and does not consume too many resources. So we’re talking about a web-based client. It is compatible with many email providers, but also with its own mail server. So we have a new option to handle mail quickly and easily. RainLoop is open source since it is released under the GNU AFFERO license. However, it has an enterprise version with more features focused on businesses.

In the community version these are some of its features:

  • Modern user interface.
  • Complete support of IMAP and SMTP protocols including SSL and STARTTLS.
    Extending functionality with plugins installed through the admin panel.
  • Perfect rendering of complex HTML mails.
  • Drag’n’drop for mails and attachments.
  • Keyboard shortcuts support.
  • Autocompletion of e-mail addresses

In addition, the application has integration to popular services such as Dropbox, Twitter, Google, and Facebook.

- Advertisement -

So, let us start to install RainLoop.

1. Install Apache and PHP

Being a web-based application, the first thing we have to do is install Apache and PHP for everything to work. So open a terminal or connect to your server using SSH and run the following command:

:~$ sudo apt install apache2 php php-curl php-json php-iconv php-xml php-dom php-mysql php-pdo libapache2-mod-php

1.- Install Apache and PHP
1.- Install Apache and PHP

Once the process is complete. PHP and Apache will be installed and ready to run. Then, it is a good idea to enable and check the status of the service.

:~$ sudo systemctl enable apache2
:~$ sudo systemctl status apache2

2.- The Apache2 service
2.- The Apache2 service

2. Install MariaDB

Now, you need to install a database manager. This step is optional because RainLoop does not require it. However, it is good to do so in order to extend its functionality.

So run the following command:

:~$ sudo apt install mariadb-server

3.- Install Mariadb
3.- Install MariaDB

Then, set a root password using the mysql_secure_installation script.

:~$ sudo mysql_secure_installation

4.- Configuring MariaDB
4.- Configuring MariaDB

After defining the root password, you will have to answer other configuration questions. You can answer whatever you want, in this post, I will answer like this: Y, N, Y, Y.

3. Install RainLoop

It is now possible to install RainLoop. First of all, you have to download it using wget. So run the following command:

:~$ cd /tmp/
:~$ wget http://www.rainloop.net/repository/webmail/rainloop-community-latest.zip

5.- Download and install RainLoop
5.- Download and install RainLoop

Next, you have to create a new folder for RainLoop and then, decompress it.

:~$ sudo mkdir /var/www/rainloop
:~$ sudo unzip rainloop-community-latest.zip -d /var/www/rainloop

6.- Decompress the file
6.- Decompress the file

If you do not have unzip installed, you just need to install it with sudo apt install unzip.

It is now necessary to set the correct permissions for the RainLoop file folder.

:~$ cd /var/www/rainloop
:~$ sudo find . -type d -exec chmod 755 {} \;
:~$ sudo find . -type f -exec chmod 644 {} \;

Now, it is necessary to change the owner of the folder so that there are no problems in which the application can handle it.

:~$ sudo chown -R www-data:www-data .

The next step is to create a new VirtualHost in Apache so that RainLoop can run properly. In addition, this will considerably improve the way we access the application.

:~$ sudo nano /etc/apache2/sites-available/rainloop.conf

And add the following:

<VirtualHost *:80>
  ServerName yourdomain.com
  DocumentRoot "/var/www/rainloop/"

  ErrorLog "/var/log/apache2/rainloop_error_log"
  TransferLog "/var/log/apache2/rainloop_access_log"

  <Directory />
    Options +Indexes +FollowSymLinks +ExecCGI
    AllowOverride All
    Order deny,allow
    Allow from all
    Require all granted

  <Directory /var/www/rainloop/data>
    Options -Indexes
    Deny from all

7.- Creating a new virtual host for RainLoop
7.- Creating a new virtual host for RainLoop

Then, save the file and close it. To apply the changes, you need to enable the new virtualhost and then restart Apache.

:~$ sudo a2ensite rainloop.conf
:~$ sudo systemctl reload apache2

4. Set up RainLoop using the web interface

Now, you can access the RainLoop address from your web browser. Go to http://your-server/?admin to access to the admin panel.

8.- Default admin page
8.- Default admin page

The default credentials are admin and 12345.

Once you have logged in, you will be able to change your password and review all the settings you want.

9.- RainLoop admin panel
9.- RainLoop admin panel

For example, it is recommended to change the default administrative password.

10.- Change the password
10.- Change the password

In the section of domains, you can configure the domains you want. Whether it’s a personal one or a more popular one like Gmail.

11.- Domain section
11.- Domain section

12 domain
12 domain

Next, go to the main screen of RainLoop and put your credentials.


RainLoop provides us with a modern interface for our email. It is especially useful when we have a personal mail server running.

Share this post with your friends.

- Advertisement -
Everything Linux, A.I, IT News, DataOps, Open Source and more delivered right to you.
"The best Linux newsletter on the web"


Please enter your comment!
Please enter your name here

Latest article