Table of Contents
Was this article helpful?
Try Vultr Today with

$50 Free on Us!

Want to contribute?

You could earn up to $600 by adding new articles.

How to Install RainLoop Webmail on Debian 9

Last Updated: Fri, Feb 8, 2019
Debian Email Linux Guides Server Apps System Admin
Archived content

This article is outdated and may not work correctly for current operating systems or software.

RainLoop is a simple, modern and fast web-based email client. RainLoop source code is hosted on Github. This guide will show you how to install RainLoop on a fresh Debian 9 Vultr instance.


  • Nginx

  • MariaDB

  • PHP version 5.4 or greater with the following extensions:

    • cURL

    • iconv

    • json

    • libxml

    • dom

    • openssl

    • DateTime

    • PCRE

    • SPL

    • PDO (optional)

Check the Debian version.

lsb_release -ds

# Debian GNU/Linux 9.4 (stretch)

Ensure that your system is up to date.

apt update && apt upgrade -y

Install necessary packages.

apt install -y sudo dirmngr wget curl vim

Create a new non-root user account with sudo access and switch to it.

adduser johndoe --gecos "John Doe"

usermod -aG sudo johndoe

su - johndoe

NOTE: Replace johndoe with your username.

Set up the timezone.

sudo dpkg-reconfigure tzdata

Install PHP, necessary PHP extensions, MariaDB and Nginx

Download and install PHP 7.0 and the necessary extensions.

sudo apt install -y php7.0 php7.0-cli php7.0-fpm php7.0-curl php7.0-json php7.0-mbstring php7.0-mysql php7.0-pgsql php7.0-sqlite3 php7.0-common php7.0-xml

Check the version.

php --version

# PHP 7.0.27-0+deb9u1 (cli) (built: Jan  5 2018 13:51:52) ( NTS )

# Copyright (c) 1997-2017 The PHP Group

# Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies

#     with Zend OPcache v7.0.27-0+deb9u1, Copyright (c) 1999-2017, by Zend Technologies

Install MariaDB.

sudo apt install -y mariadb-server

Check the version.

mysql --version

# mysql  Ver 15.1 Distrib 10.1.26-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Run the mysql_secure_installation script to improve the security of your MariaDB installation.

sudo mysql_secure_installation

Log into MariaDB as the root user.

sudo mysql -u root -p

# Enter password:

Create a new MariaDB database and user, and remember the credentials.


CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';

GRANT ALL ON 'dbname'.* TO 'username'@'localhost';



Install Nginx.

sudo apt install -y nginx

Check the version.

sudo nginx -v

# nginx version: nginx/1.10.3

Configure Nginx for RainLoop. Run sudo vim /etc/nginx/sites-available/rainloop.conf and add the following configuration.

server {

  listen 80;


  root /var/www/rainloop;

  index index.php;

  location / {

    try_files $uri $uri/ /index.php?$query_string;


  location ~ \.php$ {

    fastcgi_index index.php;

    fastcgi_split_path_info ^(.+\.php)(.*)$;

    fastcgi_keep_conn on;

    include fastcgi_params;

    fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;

    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;


  location ~ /\.ht {

    deny all;


  location ^~ /data {

     deny all;



Activate the new rainloop.conf configuration by linking the file to the sites-enabled directory.

sudo ln -s /etc/nginx/sites-available/rainloop.conf /etc/nginx/sites-enabled/

Test the configuration.

sudo nginx -t

Reload Nginx.

sudo systemctl reload nginx.service

Install RainLoop

Create a document root directory.

sudo mkdir -p /var/www/rainloop

Change the ownership of the /var/www/rainloop directory to johndoe.

sudo chown -R johndoe:johndoe /var/www/rainloop

Install unzip.

sudo apt install -y unzip

Download the latest release of RainLoop and unzip it.

cd /var/www/rainloop


unzip -d /var/www/rainloop


Change the ownership of the /var/www/rainloop directory to www-data.

sudo chown -R www-data:www-data /var/www/rainloop

Navigate to in your favorite browser and login to configure RainLoop webmail. The default login name is admin and the password is 12345.

Want to contribute?

You could earn up to $600 by adding new articles.