logo piwik

Réseau - Web - GNU/Linux

2013 22 août

Accès par webmail avec Roundcube - Debian 7.0 Wheezy

Rédigé par Marc GUILLAUME | Aucun commentaire
Article précédent Mail façon FAI - Debian 7.0 Wheezy Article suivant

Offrir un accès via une interface web (webmail) à vos utilisateurs.

Apparemment un nombre croissant d'utilisateurs ne veulent pas configurer un client de mail comme Thunderbird. À la place ils pensent que la meilleure façon d'accéder à leur courrier est d'utiliser un navigateur Internet. Chacun ses goûts. Donc configurons Roundcube en tant que logiciel de webmail pour leur faire plaisir. RoundCube est une application web écrite en Php qui offre une interface web intuitive et qui parle IMAP avec n'importe quel serveur.

Activer RoundCube avec le serveur web Apache

Vous devriez déjà avoir installé le paquet RoundCube. Le fichier /usr/share/doc/roundcube-core/README.Debian fournit des informations supplémentaires sur la manière de configurer RoundCube sur votre serveur Apache.

Si vous n'utilisez pas les hôtes virtuels d'Apache (juste un seul site)

Simplement si vous n'utilisez le serveur web sur votres serveur de mail que pour fournir l'interface webmail vous pouvez décommenter les directives Alias dans le fichier /etc/apache2/conf.d/roundcube et redémarrer Apache :

apache2ctl restart

Si vous utilisez Apache avec les hôtes virtuels (votre webmail co-existe avec d'autres sites web sur votre serveur)

Si vous avec plusieurs hôtes virtuels actifs sur votre serveur alors n'activez pas les directives Alias dans le fichier /etc/apache2/conf.d/roundcube à la place mettez-les dans une section <VirtualHost> dans le bon fichier de configuration d'hôte virtuel. Par exemple vous pouvez configurer votre webmail à l'adresse https://webmail.example.org/ vous rajoutez cette ligne dans votre instance HTTP (qui écoute sur le port 80 TCP) :

Redirect permanent / https://YOUR-MAILSERVER/roundcube

puis redémarrez Apache :

apache2ctl restart

Tester l'identification sur le webmail

Faites pointer votre serveur web sur le dossier /roundcube/ sur votre serveur de mail (c'est à dire https://YOUR-MAILSERVER/roundcube/). Si tout a fonctionné comme prévu vous serez accueilli par la fenêtre de connexion :

Écran de connexion à Roundcube

Vous devrier déjà pouvoir vous identifier en utilisant john@example.org et le mot de passe summersun. Comme serveur entrez localhost (nous nous débarasserons de ce champ dans une minute). Cliquez sur Login et vous devriez vous retrouver dans votre boîte mail :

Écran d'accueil de Roundcube

Affinage de la configuration

Éditons le fichier principal de configuration de RoundCube /etc/roundcube/main.inc.php] et apportons-y ces modifications :

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

Ceci désactive le champ Server pour toujours utiliser le serveur local en IMAP.

$rcmail_config['force_https'] = true;

Assure que vos utilisateurs ne pourront pas accidentellement communiquer leurs informations de connexion sur une connexion HTTP non sécurisée.

Je vous recommande de parcourir les différentes variables de configuration pour personnaliser RoundCube avec votre logo et ajuster les réglages concernant l'ergonomie et la sécurité. Toutes les fonctionnalités sont bien documentées.

Configuration de Sieve

Sieve est une fonctionnalité qui permet à vos utilisateurs d'utiliser des règles côté serveur pour le traitement des emails sur le serveur. Dovecot supporte ces règles et vous l'avez déjà configuré pour qu'il écoute sur un port réseau les requêtes utilisant le protocole managesieve qui permet d'ajouter, de retirer ou de modifier des règles. Par chance RoundCube sait parler « managesieve », il suffit juste que vous lui indiquez comment communiquer avec Dovecot. Commencez par copier le fichier de configuration type au bon endroit :

cp /usr/share/roundcube/plugins/managesieve/config.inc.php].dist /etc/roundcube/plugins/managesieve/config.inc.php]

Éditez ce fichier /etc/roundcube/plugins/managesieve/config.inc.php] et placez-y le port TCP sur lequel Dovecot attend les connexions managesieve :

$rcmail_config['managesieve_port'] = 4190;

Activez également le plugin managesieve de RoundCube en éditant cette ligne du fichier /etc/roundcube/main.inc.php] :

$rcmail_config['plugins'] = array('managesieve');

Maintenant lorsque vous cliquez sur l'option « Settings » dans le coin surpérieur droit de l'interface web de RoundCube vous allez voir quatre onglets dont le dernier s'appelle « Filters ». Cliquez sur cet onglet :

Interface sieve de Roundcube

Ce sont les règles auxquelles Dovecot obéit pour ce compte mail. Bon il n'y en a encore aucune. Mais vous pouvez en ajouter dans le panneau Filters en cliquant sur l'icône « + ». Vous pourrez alors ajouter une règle.

Le champ Filter name est juste un nom destiné à vous permettre de vous rappeler dans quel but vous avez créée cette règle (du genre « Déplacer les mails de Tina dans le dossier tina »). La section For incoming mail vous permet de définir les critères auxquels un mail doit répondre pour que cette règle s'applique. Et …execute the following actions décrit ce que doit faire Dovecot quand il reçoit un mail correspondant aux critères.

Voyons un autre exemple :

Exemple de filtre sieve dans Roundcube

Ce filtre s'applique à un mail entrant dont l'expéditeur a l'adresse « tina@example.org » et dont le sujet contient « cat pictures ». Dovecot va immédiatement envoyer une copie du mail à « jill@example.com ». Vous pouvez utiliser les filtres pour trier les mails dans des répertoires, effacer certains mails comportant des erreurs, y répondre automatiquement ou activer un message de répondeur d'absence.

Les règles sont sauvegardées dans le répertoire de mails de chaque utilisateur. Pour John@example.org ces règles sont sauvées dans : /var/vmail/example.org/john/sieve/managesieve.sieve. La règle ci-dessus ressemblerait à cela dans le format utilisable par la machine :

require ["copy"];
# rule:[Forward cat pictures to Jil
if allof (header :contains "From" "tina@example.org", header :contains "Subject" "cat pictures")
{
    redirect :copy "jill@example.com";
}

Voilà pour les règles côté serveur. Amusez-vous bien.

Écrire un commentaire

Quelle est la deuxième lettre du mot isolr ?

Fil RSS des commentaires de cet article

À propos

Yakati.info - Réseau - Web - GNU/Linux © 2017

Généré par PluXml en 0.05s  - Administration

Mes coordonnées

Marc Guillaume
contact[at]yakati.info
79150 ÉTUSSON

Crédits

Pour la gestion du contenu

Généré par PluXml, le Blog ou Cms sans base de données

Pour le contenu

Licence Creative Commons
Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International.

Pour le thème

Thème SOLID de blacktie.co adapté pour PluXml