Install ISPConfig 3 - Roundcube plugins on Debian 10

The ispconfig3_roundcube plugins integrate your ISPConfig mail account settings in Roundcube. In this tutorial, I will take you through the process of installing them.

Prerequisites

  • Roundcube has to be installed using apt. If not, you may need to change the file paths used in this tutorial.
  • Make sure your ISPConfig and Roundcube installation are up to date

Adding a remote user

The ISPConfig 3 plugins use the API to connect to your system. Therefore we need to create a remote user in the control panel.

Log in to your panel, go to System -> Remote Users, and click "Add new remote user". In the form, give your new user a name and a password. I'll use rc-example with the password examplepass. Don't use the same credentials, but create your own. My example panel will be located at https://panel.example.com:8080 with a valid SSL certificate

Enable the following function for your remote user:

  • Roundcube plugins functions

And enable remote access for the IPv4 and IPv6 address of your webmail server.

Download the plugins

Run the following commands:

cd /tmp
wget https://github.com/w2c/ispconfig3_roundcube/archive/master.zip
unzip master.zip
cd ./ispconfig3_roundcube-master
cp -r ./ispconfig3_* /usr/share/roundcube/plugins
ln -s /usr/share/roundcube/plugins/ispconfig* /var/lib/roundcube/plugins/

The plugins are now in the correct folder, with a symlink from /var/lib/roundcube/plugins. The next step is to configure them to use our remote user. Run this to copy the example config and edit it:

cp /usr/share/roundcube/plugins/ispconfig3_account/config/config.inc.php.dist /usr/share/roundcube/plugins/ispconfig3_account/config/config.inc.php
nano /usr/share/roundcube/plugins/ispconfig3_account/config/config.inc.php

You will see this config file:

$config['identity_limit'] = false;
$config['remote_soap_user'] = '{REMOTE USERNAME}';
$config['remote_soap_pass'] = '{REMOTE PASSWORD}';
$config['soap_url'] = 'https://{YOUR SERVER}:8080/remote/';
$config['soap_validate_cert'] = true;

I'll change this to:

$config['identity_limit'] = false;
$config['remote_soap_user'] = 'rc-example';
$config['remote_soap_pass'] = 'examplepass';
$config['soap_url'] = 'https://panel.example.com:8080/remote/';
$config['soap_validate_cert'] = true;

Make sure to replace the red underlined text with your own credentials and panel address. Change soap_validate_cert to false if you use https but don't have a trusted SSL certificate installed.

Enabling the plugins

To enable the plugins, open the roundcube configuration:

nano /etc/roundcube/config.inc.php

And search for these lines:

// List of active plugins (in plugins/ directory)
$config['plugins'] = array();

To enable the plugins, add this between the brackets:

"jqueryui", "ispconfig3_account", "ispconfig3_autoreply", "ispconfig3_pass", "ispconfig3_spam", "ispconfig3_fetchmail", "ispconfig3_filter", "ispconfig3_forward", "ispconfig3_wblist"

The line will then look like this:

// List of active plugins (in plugins/ directory)
$config['plugins'] = array("jqueryui", "ispconfig3_account", "ispconfig3_autoreply", "ispconfig3_pass", "ispconfig3_spam", "ispconfig3_fetchmail", "ispconfig3_filter", "ispconfig3_forward", "ispconfig3_wblist");

A few notes to this:

  • The jqueryui plugin has to be placed in front of the other plugins.
  • If you don't want to use a plugin, for example the fetchmail plugin, leave out ispconfig3_fetchmail.
  • If you use more than one mailserver, add ispconfig3_autoselect to the list, and leave $config['default_host'] empty. ispconfig3_autoselect will automatically pick the right server for the user that logs in. You can edit it's own configuration file to enable tls/ssl connections between Roundcube and the external mailserver in ispconfig3_autoselect/config/config.inc.php.dist

After saving the configuration file, a new tab "Account" will show up in the webmail settings:

New settings tab

We're done!

If you experience any trouble, take a look at the troubleshooting FAQ on https://github.com/w2c/ispconfig3_roundcube/wiki/Troubleshooting---FAQ

If you have any questions or comments, you can leave them in the replies or create a forum post.

Share this page:

4 Comment(s)