wiki/HowtoMail/Roundcube.md
2020-11-30 15:14:17 +01:00

3.9 KiB
Raw Blame History

Howto Roundcube

Sous licence libre GPL, roundcube est un client de messagerie utilisant l'IMAP. D'autres alternatives existent tel que rainloop, SOGo, Squirrelmail,...

Installation

Rien de plus simple :

# apt install roundcube

Le fichier de configuration principale est /etc/roundcube/defaults.inc.php

Plugin sieve

Celui-ci permet l'usage des filtres.

# apt install roundcube-plugins-extra

On pourra l'activer ainsi :

$config['plugins'] = array('sieverules');

La configuration des règles se feront dans /etc/roundcube/plugins/sieverules/config.inc.php.

Plugin vacation

Il est utilisé lorsque l'utilisateur du compte mail est en vacances par exemple.

https://github.com/bukowski12/roundcube-vacation-plugin

On utilise généralement ce plugin avec le driver FTP lorsque l'on est dans un setup avec les utilisateurs en compte Unix. Il faut donc préalablement avoir installé Proftpd, avec le module ldap proftpd-mod-ldap et bien charger le module dans la configuration de proftpd.

Au niveau de proftpd on utilise la configuration ldap suivante, dans /etc/proftpd/ldap.conf :

<IfModule mod_ldap.c>
LDAPServer ldap://localhost/??sub
LDAPBindDN "cn=admin,dc=example,dc=com" "PASSWORD"
LDAPUsers "ou=people,dc=smsmode,dc=com" (uid=%u) (uidNumber=%u)

LDAPAuthBinds       on
</IfModule>

Au niveau de la configuration du plugin vacation, on utilise la configuration suivante dans /etc/roundcube/plugins/vacation/config.ini :

[default]
driver = "ftp"
;server = "localhost"
subject = "Absence / Out of office"
body = "default.txt"
;disable_forward = true


[dotforward]
binary = "/usr/bin/vacation"
flags = ""
message = ".vacation.msg"
database = ".vacation.db"
alias_identities = true
set_envelop_sender = false
always_keep_message = true

Il ne faut pas oublier également d'installer le paquet vacation.

Plugin password

Son utilisé résulte sur la possibilité de changer son propre mot de passe avec de nombreux connecteurs tel que dovecot, LDAP, etc.

On pourra l'activer ainsi :

$config['plugins'] = array('sieverules');

Pour les comptes mails stockés dans LDAP il faudra installer php-net-ldap2 et mettre en place le fichier /etc/roundcube/plugins/password/config.inc.php suivant :

<?php
$rcmail_config['password_driver'] = 'ldap';
$rcmail_config['password_minimum_length'] = 6;
$rcmail_config['password_ldap_host'] = 'localhost';
$rcmail_config['password_ldap_port'] = '389';
$rcmail_config['password_ldap_version'] = '3';
$rcmail_config['password_ldap_basedn'] = 'dc=example,dc=com';
$rcmail_config['password_ldap_method'] = 'user';
$rcmail_config['password_ldap_search_filter'] = '(uid=%login)';
$rcmail_config['password_ldap_pwattr'] = 'userPassword';
$rcmail_config['password_ldap_encodage'] = 'ssha';
?>

Mailbox doesnt exist

Si nous avons par exemple l'erreur suivante : "UID MOVE : Mailbox doesnt exist : Trash"

On devra activer cette option :

$config['create_default_folders'] = true;

Mode debug

Activer la directive suivante :

$config['imap_debug'] = true;

Les messages d'erreurs seronts dans le log /var/log/syslog

Import de contacts en CSV

https://www.pokorra.de/2017/01/import-contacts-via-csv-into-roundcube/

FAQ

Après une upgrade

Problème denvoi de pièce jointe

On a des erreurs de ce genre dans les logs de Roundcube /var/log/roundcube/errors lorsquon essaye denvoyer une pièce jointe dans un e-mail.

[01-Jan-2020 00:00:00 +0200]: <abcd1234> PHP Error: compte@domaine.com can't read /tmp/rcmAttmntQ2clsS (not in temp_dir) in /usr/share/roundcube/plugins/filesystem_attachments/filesystem_attachments.php on line 216 (POST /?_task=mail&_unlock=loading1599225495530&_lang=undefined&_framed=1&_action=send)

Cest probablement le tempdir qui a changé de propriétaire au moment de lupgrade.

# chown www-roundcube:roundcube /var/lib/roundcube/temp