Voici la procédure pour activer le plugin vacation et le faire fonctionner avec les nouvelles versions de roundcube 0.8.*. domain.com est à changer par un domain qui existe vraiment sur la machine. Ce n’est
pas la même procédure qu’avant, car avec les nouvelles versions de roundcube, les anciens plugins ne
fonctionnent plus. Celui-ci a été modifié et traduit.

groupadd --gid 10002 vacation
useradd -o -d /var/spool/vacation -g 10002 -u 10002 -s /bin/false vacation

Ensuite, créer un dossier pour vacation

mkdir /var/spool/vacation
chown -R vacation:vacation /var/spool/vacation
chmod -R 700 /var/spool/vacation

Copier le script vacation.pl (fourni par postfixadmin)

cp /usr/share/doc/postfixadmin/examples/VIRTUAL_VACATION/vacation.pl /var/spool/vacation/

On installe les dépendances

apt-get install libmail-sender-perl libmail-sendmail-perl libmailtools-perl libmime-encwords-perl libemail-valid-perl liblog-log4perl-perl

Modifier les informations de base de données du script perl :

vim /var/spool/vacation/vacation.pl
our $db_type = 'mysql';
our $db_host = 'localhost';
our $db_username = 'postfixadmin';
our $db_name = 'postfixadmin';
our $vacation_domain = 'autoreply.domain.com';
our $db_password = 'MOTDEPASSE'; ...

Créer le domaine virtuel dans postfix :

vim /etc/postfix/transport
autoreply.domain.com vacation:

On regénère le fichier transport.db

postmap /etc/postfix/transport

Modifier le fichier master.cf

vim /etc/postfix/master.cf

ajouter en bas :

vacation unix - n n - - pipe
flags=DRhu user=vacation argv=/var/spool/vacation/vacation.pl -f$sender ${recipient} ${original_recipient}

Ajouter dans /etc/postfix/main.cf

transport_maps = hash:/etc/postfix/transport
vacation_destination_recipient_limit = 1

On redémarre postfix :

/etc/init.d/postfix restart

Renseigner le domaine virtuel dans postfixadmin :

vim /etc/postfixadmin/config.inc.php
$CONF['vacation_domain'] = 'autoreply.domain.com';

Extraire pfadmin_autoresponder.tar.gz dans /var/lib/roundcube/plugins

Activer le plugin dans roundcube

vim /etc/roundcube/main.inc.php
$rcmail_config['plugins'] = array('pfadmin_autoresponder');

Modifier les infos BDD et domaine du plugin.

vim /var/lib/roundcube/plugins/pfadmin_autoresponder/config/config.inc.php

Voilà. Il ne reste plus qu’à tester en se rendant dans les préférences de roundcube, et checker dans le mail.log qu’il n’y a pas d’erreur.

roundcube_autoresponse

This article has 2 comments

  1. Grobs

    Merci pour le partage. Sur la dernière version de Roundcube (et sans doute sur plusieurs versions précédentes), le plugin fait l’erreur suivante lors de la création d’une réponse automatique :

    DUPA.[1146] Table ’roundcube.alias’ doesn’t exist. Après quelques recherches, j’ai vu que la table en question avait été supprimée dans Roundcube (cf. https://github.com/roundcube/roundcubemail/issues/3851)
    . Vous serait-il possible de metre à jour de le code en question (fonctions en cause : removefromalias() et addtoalias() dans pfadmin_functions.php). Je l’aurais bien fait moi-même mais je ne suis pas certain de comprendre cette partie du code. Merci d’avance !

    1. Grobs

      Au temps pour moi. Après relecture du code, il ne s’agissait pas d’un bug mais d’une erreur de ma part. Ma config pointait sur la base de roundcube et non sur celle de postfix, d’où l’erreur.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *