GNU/Linux >> Tutoriels Linux >  >> Cent OS

Installez Roundcube Webmail sur CentOS 8/RHEL 8 avec Apache/Nginx

Cube rond est un client de messagerie Web open source gratuit et complet écrit en PHP. Un webmail est un client de messagerie dans votre navigateur, ce qui signifie qu'au lieu de lire et d'envoyer des e-mails à partir d'un client de messagerie de bureau comme Mozilla Thunderbird, vous pouvez accéder à votre e-mail à partir d'un navigateur Web. Ce tutoriel va vous montrer comment installer le webmail Roundcube sur CentOS 8/RHEL 8 avec un serveur web Apache ou Nginx.

Fonctionnalités du cube rond

La fonctionnalité Roundcube inclut :

  • Carnet d'adresses
  • Gestion des dossiers
  • Recherche de messages
  • Filtre de messages
  • Vérification orthographique
  • Compatibilité MIME
  • Cryptage et signature PGP
  • Les utilisateurs peuvent changer leur mot de passe dans Roundcube.

Version Roundcube 1.4.2

Roundcube 1.4.2 est sorti le 2 janvier 2020. Cette version comprend :

  • Une peau réactive appelée Elastic avec prise en charge complète des appareils mobiles
  • Fonctionnalité de renvoi d'e-mail (rebond)
  • Amélioration de l'intégration de Mailvelope
  • Prise en charge du cache Redis et Memcached
  • Compatibilité avec SMTPUTF8 et GSSAPI
  • Plus de nombreuses améliorations et corrections de bugs

Prérequis

Pour suivre ce tutoriel, on suppose que

  • Le serveur SMTP Postfix et le serveur Dovecot IMAP ont été installés sur votre serveur CentOS 8/RHEL 8
  • Vous avez déjà installé une pile LAMP ou LEMP sur le serveur CentOS 8/RHEL 8.

Si ce n'est pas le cas, veuillez cliquer sur les liens ci-dessus et suivre les instructions pour remplir les conditions préalables. Passons maintenant à l'installation de Roundcube.

Étape 1 :Téléchargez la messagerie Web Roundcube sur CentOS 8/RHEL 8

Connectez-vous à votre serveur CentOS/RHEL via SSH, puis exécutez la commande suivante pour télécharger la dernière version stable 1.4.9 à partir du référentiel Roundcube Github.

wget https://github.com/roundcube/roundcubemail/releases/download/1.4.9/roundcubemail-1.4.9-complete.tar.gz

Remarque :Vous pouvez toujours utiliser le format d'URL ci-dessus pour télécharger Roundcube à partir de la ligne de commande. Si une nouvelle version sort, remplacez simplement 1.4.9 par le nouveau numéro de version. Vous pouvez vérifier s'il y a une nouvelle version sur la page de téléchargement de Roundcube.

Extrayez l'archive tar, déplacez le dossier nouvellement créé vers la racine Web (/var/www/ ) et renommez-le en roundcube en même temps.

tar xvf roundcubemail-1.4.9-complete.tar.gz

sudo mkdir /var/www/

sudo mv roundcubemail-1.4.9 /var/www/roundcube

Étape 2 :Installer les dépendances

Roundcube nécessite le php-imap module pour créer des sous-dossiers dans les boîtes aux lettres, mais php-imap n'est pas inclus dans le référentiel CentOS 8/RHEL 8 par défaut, nous devons donc utiliser le référentiel Remi pour installer ce module PHP.

Installez le Remi Repo.

sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm

Réinitialisez ensuite les flux du module PHP.

sudo dnf module reset php

Activez le php:remi-7.4 flux de modules.

sudo dnf module enable php:remi-7.4 -y

Ensuite, vous pouvez exécuter la commande suivante pour installer les modules PHP requis ou recommandés par Roundcube.

sudo dnf install php-ldap php-imagick php-common php-gd php-imap php-json php-curl php-zip php-xml php-mbstring php-bz2 php-intl php-gmp

Étape 3 :Créer une base de données MariaDB et un utilisateur pour Roundcube

Connectez-vous au shell MariaDB en tant que root.

mysql -u root -p

Créez ensuite une nouvelle base de données pour Roundcube à l'aide de la commande suivante. Ce tutoriel le nomme roundcube , vous pouvez utiliser le nom de votre choix pour la base de données.

CREATE DATABASE roundcube DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

Ensuite, créez un nouvel utilisateur de base de données sur localhost à l'aide de la commande suivante. Encore une fois, ce tutoriel le nomme roundcubeuser , vous pouvez utiliser le nom de votre choix. Remplacer password avec votre mot de passe préféré.

CREATE USER roundcubeuser@localhost IDENTIFIED BY 'password';

Accordez ensuite toutes les autorisations de la nouvelle base de données au nouvel utilisateur afin que plus tard le webmail Roundcube puisse écrire dans la base de données.

GRANT ALL PRIVILEGES ON roundcube.* TO roundcubeuser@localhost;

Videz la table des privilèges pour que les modifications prennent effet.

flush privileges;

Quittez MariaDB Shell :

exit;

Exécutez la commande suivante pour importer les tables initiales dans roundcube base de données. Vous devez entrer le mot de passe root MariaDB.

mysql -u root -p roundcube < /var/www/roundcube/SQL/mysql.initial.sql

Étape 4 :Créer un hôte virtuel Apache ou un fichier de configuration Nginx pour Roundcube

Apache

Si vous utilisez le serveur Web Apache, créez un hôte virtuel pour Roundcube.

sudo nano /etc/httpd/conf.d/roundcube.conf

Remarque :Si vous avez suivi mon tutoriel Postfix/Dovecot, un hôte virtuel existe déjà. Vous devez éditer le fichier suivant. (Supprimez les textes de ce fichier qui ont été ajoutés dans la partie 2 et ajoutez les nouveaux textes ci-dessous.)

sudo nano /etc/httpd/conf.d/mail.your-domain.com.conf

Mettez le texte suivant dans le fichier. Remplacez mail.your-domain.com avec votre vrai nom de domaine et n'oubliez pas de définir un enregistrement DNS A pour celui-ci.

<VirtualHost *:80>
  ServerName mail.your-domain.com
  DocumentRoot /var/www/roundcube/

  ErrorLog /var/log/httpd/roundcube_error.log
  CustomLog /var/log/httpd/roundcube_access.log combined

  <Directory />
    Options FollowSymLinks
    AllowOverride All
  </Directory>

  <Directory /var/www/roundcube/>
    Options FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
  </Directory>

</VirtualHost>

Enregistrez et fermez le fichier. Rechargez Apache pour que les modifications prennent effet.

sudo systemctl reload httpd

Vous devriez maintenant pouvoir voir l'assistant d'installation Web de Roundcube sur http://mail.your-domain.com/installer .

Nginx

Si vous utilisez le serveur Web Nginx, créez un hôte virtuel pour Roundcube.

sudo nano /etc/nginx/conf.d/roundcube.conf

Remarque :Si vous avez suivi mon tutoriel Postfix/Dovecot, un hôte virtuel existe déjà. vous devez éditer le fichier suivant. (Supprimez les textes de ce fichier qui ont été ajoutés dans la partie 2 et ajoutez les nouveaux textes ci-dessous.)

sudo nano /etc/nginx/conf.d/mail.your-domain.com.conf

Mettez le texte suivant dans le fichier. Remplacez le nom de domaine et n'oubliez pas de définir un enregistrement DNS A pour celui-ci.

server {
  listen 80;
  listen [::]:80;
  server_name mail.your-domain.com;
  root /var/www/roundcube/;
  index index.php index.html index.htm;

  error_log /var/log/nginx/roundcube.error;
  access_log /var/log/nginx/roundcube.access;

  location / {
    try_files $uri $uri/ /index.php;
  }

  location ~ \.php$ {
   try_files $uri =404;
    fastcgi_pass unix:/run/php-fpm/www.sock;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
  }

  location ~ /.well-known/acme-challenge {
    allow all;
  }
 location ~ ^/(README|INSTALL|LICENSE|CHANGELOG|UPGRADING)$ {
    deny all;
  }
  location ~ ^/(bin|SQL)/ {
    deny all;
  }
 # A long browser cache lifetime can speed up repeat visits to your page
  location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
       access_log        off;
       log_not_found     off;
       expires           360d;
  }
}

Enregistrez et fermez le fichier. Testez ensuite les configurations Nginx.

sudo nginx -t

Si le test réussit, rechargez Nginx pour que les modifications prennent effet.

sudo systemctl reload nginx

Vous devriez maintenant pouvoir voir l'assistant d'installation Web de Roundcube sur http://mail.your-domain.com/installer .

Étape 5 :Activer HTTPS

Il est fortement recommandé d'utiliser TLS pour chiffrer votre messagerie Web. Nous pouvons activer HTTPS en installant un certificat TLS gratuit émis par Let's Encrypt.

Si vous utilisez Apache, exécutez cette commande pour obtenir et installer le certificat TLS.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d mail.your-domain.com

Si vous utilisez Nginx, exécutez la commande suivante pour obtenir et installer le certificat TLS.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d mail.your-domain.com

  • --nginx  :Utilisez le plug-in nginx.
  • --apache :Utilisez le plug-in Apache.
  • --agree-tos  :acceptez les conditions d'utilisation.
  • --redirect  :Forcer HTTPS par redirection 301.
  • --hsts  : ajoutez l'en-tête Strict-Transport-Security à chaque réponse HTTP. Forcer le navigateur à toujours utiliser TLS pour le domaine. Protège contre le SSL/TLS Stripping.
  • --staple-ocsp  : Active l'agrafage OCSP. Une réponse OCSP valide est agrafée au certificat que le serveur propose pendant TLS.

Le certificat devrait maintenant être obtenu et installé automatiquement.

Remarque :Si vous avez suivi mon tutoriel Postfix/Dovecot, et que maintenant vous installez Roundcube sur le même serveur, alors certbot vous dira probablement qu'un certificat pour mail.your-domain.com existe déjà comme indiqué ci-dessous, vous pouvez donc choisir d'installer le certificat TLS existant dans le fichier de configuration de votre serveur Web.

Étape 6 :Configurer les autorisations

Tout d'abord, nous devons modifier le contexte SELinux du répertoire Web, afin qu'il puisse être utilisé pour diffuser du contenu Web.

sudo chcon -t httpd_sys_content_t /var/www/roundcube/ -R

Le serveur Web doit écrire dans le temp et logs annuaire. Modifiez le contexte SELinux pour le rendre accessible en écriture.

sudo chcon -t httpd_sys_rw_content_t /var/www/roundcube/temp/ /var/www/roundcube/logs/ -R

Accordez ensuite l'autorisation d'écriture au serveur Web.

Apache :

sudo setfacl -R -m u:apache:rwx /var/www/roundcube/temp/ /var/www/roundcube/logs/

Nginx :

sudo setfacl -R -m u:nginx:rwx /var/www/roundcube/temp/ /var/www/roundcube/logs/

Par défaut, SELinux interdit à Apache/Nginx de faire des requêtes réseau à d'autres serveurs, mais plus tard, Apache/Nginx doit demander l'état du certificat TLS au serveur Let's Encrypt CA pour l'agrafage OCSP, nous devons donc dire à SELinux d'autoriser Apache/Nginx avec ce qui suit commande.

sudo setsebool -P httpd_can_network_connect 1

Si vous utilisez Nginx, vous devez également exécuter la commande suivante pour donner à l'utilisateur nginx des autorisations de lecture et d'écriture sur 3 répertoires.

sudo setfacl -R -m u:nginx:rwx /var/lib/php/opcache/ /var/lib/php/session/ /var/lib/php/wsdlcache/

Redémarrez Apache/Nginx.

sudo systemctl restart httpd

sudo systemctl restart nginx

Étape 7 :Ajouter une entrée DNS locale

Il est recommandé de modifier le /etc/hosts fichier sur le serveur de messagerie et ajoutez l'entrée suivante afin que Roundcube n'ait pas à interroger le DNS public, ce qui accélérera un peu le chargement de la page Web.

127.0.0.1  localhost mail.your-domain.com

Étape 8 :terminer l'installation dans le navigateur Web

Dans votre navigateur Web, accédez à la page d'installation de Roundcube.

https://mail.your-domain.com/installer

Le programme d'installation Web vérifiera d'abord si les extensions PHP, la base de données et les bibliothèques tierces sont installées. Si vous suivez ce didacticiel, toutes les conditions doivent être remplies.

Cliquez sur le bouton Suivant. Dans la 2ème page, vous devez remplir les détails de la base de données MariaDB que vous avez créée à l'étape 3.

La section IMAP et SMTP vous permet de configurer la manière de recevoir et d'envoyer des e-mails. Entrez les valeurs suivantes pour IMAP.

  • Hébergeur IMAP :ssl://mail.your-domain.com port :993

Entrez les valeurs suivantes pour les paramètres SMTP.

  • Port SMTP :tls://mail.your-domain.com port :587 . Notez que vous devez utiliser tls:// comme préfixe pour le port 587. Le ssl:// le préfixe doit être utilisé pour le port 465.

Ensuite, vous pouvez faire défiler jusqu'aux Plugins section pour activer certains plugins. Par exemple :le plugin de mot de passe, marquer comme plugin indésirable et ainsi de suite. Je les ai tous activés.

Une fois cela fait, cliquez sur create config bouton qui créera une configuration basée sur les informations que vous avez saisies. Vous devez copier la configuration et l'enregistrer sous config.inc.php sous le /var/www/roundcube/config/ répertoire.

Une fois le config.inc.php le fichier est créé, cliquez sur continue bouton. Dans la dernière étape, testez vos paramètres SMTP et IMAP en envoyant un e-mail de test et en vérifiant la connexion IMAP. Notez que vous devez saisir votre adresse e-mail complète dans le champ Sender lors du test de la configuration SMTP.

Si le test échoue, vous pouvez cliquer sur le 2. Create config lien en haut de page pour revenir à l'étape 2 et recréer le config.inc.php fichier.

Si le test est réussi, accédez à votre domaine Webmail sans /installer et connectez-vous.

Interface de messagerie Web Roundcube

Vous devez maintenant supprimer l'ensemble du dossier d'installation à partir de la racine du document ou assurez-vous que enable_installer option dans config.inc.php le fichier est désactivé.

sudo rm /var/www/roundcube/installer/ -r

Ces fichiers peuvent exposer au public des données de configuration sensibles telles que les mots de passe du serveur et les clés de chiffrement. Assurez-vous que vous ne pouvez pas accéder à la page d'installation à partir de votre navigateur.

Étape 9 :Configurer le filtre de messages Sieve

Vous pouvez créer des dossiers dans le webmail Roundcube, puis créer des règles pour filtrer les messages électroniques dans différents dossiers. Pour ce faire, vous devez installer le dovecot-pigeonhole package avec la commande suivante.

sudo dnf install dovecot-pigeonhole

Ouvrez le /etc/dovecot/conf.d/15-lda.conf fichier.

sudo nano /etc/dovecot/conf.d/15-lda.conf

Faites défiler jusqu'à la fin du fichier, décommentez le mail_plugins et ajoutez le plug-in sieve à l'agent de livraison local (LDA).

protocol lda {
    # Space separated list of plugins to load (default is global mail_plugins).
    mail_plugins = $mail_plugins sieve
}

Enregistrez et fermez le fichier. Si vous pouvez trouver le 20-lmtp.conf fichier sous /etc/dovecot/conf.d/ répertoire, alors vous devez également activer le plugin sieve dans ce fichier comme ci-dessous.

protocol lmtp {
      mail_plugins = quota sieve
}

Modifiez le /etc/dovecot/conf.d/10-mail.conf fichier.

sudo nano /etc/dovecot/conf.d/10-mail.conf

Les scripts Sieve sont stockés dans le répertoire personnel de chaque utilisateur. Si vous avez suivi mon tutoriel PostfixAdmin et que vous utilisez des domaines de boîtes aux lettres virtuelles, vous devez activer mail_home pour les utilisateurs virtuels en ajoutant la ligne suivante dans le fichier, car les utilisateurs virtuels n'ont pas de répertoires personnels par défaut.

mail_home = /var/vmail/%d/%n

Enregistrez et fermez le fichier.

Par défaut, Postfix utilise son agent de livraison local (LDA) intégré pour déplacer les e-mails entrants vers le magasin de messages (boîte de réception, envoyés, corbeille, courrier indésirable, etc.). Nous pouvons le configurer pour utiliser Dovecot pour envoyer des e-mails, via le protocole LMTP, qui est une version simplifiée de SMTP. LMTP permet un système de messagerie hautement évolutif et fiable et il est nécessaire si vous souhaitez utiliser le plugin sieve pour filtrer les messages entrants vers différents dossiers.

Modifiez le fichier de configuration principal de Dovecot.

sudo nano /etc/dovecot/dovecot.conf

Ajouter lmtp et sieve aux protocoles pris en charge.

protocols = imap lmtp sieve

Enregistrez et fermez le fichier. Puis éditez le Dovecot 10-master.conf fichier.

sudo nano /etc/dovecot/conf.d/10-master.conf

Changer le lmtp définition de service à la suivante.

service lmtp {
 unix_listener /var/spool/postfix/private/dovecot-lmtp {
   group = postfix
   mode = 0600
   user = postfix
  }
}

Ensuite, éditez le fichier de configuration principal de Postfix.

sudo nano /etc/postfix/main.cf

Ajoutez les lignes suivantes à la fin du fichier. La première ligne indique à Postfix de livrer les e-mails au magasin de messages local via le serveur LMTP dovecot. La deuxième ligne désactive SMTPUTF8 dans Postfix, car Dovecot-LMTP ne prend pas en charge cette extension de messagerie.

mailbox_transport = lmtp:unix:private/dovecot-lmtp
smtputf8_enable = no

Enregistrez et fermez le fichier. Enfin, redémarrez Postfix et Dovecot.

sudo systemctl restart postfix dovecot

Vous pouvez maintenant accéder au webmail Roundcube, ouvrir un e-mail et cliquer sur more et sélectionnez create filters pour créer des filtres de messages. Par exemple, je crée un filtre qui déplace chaque e-mail envoyé depuis redhat.com vers le dossier Red Hat.

Si vous n'avez pas le create filter option, c'est probablement parce que vous n'avez pas activé le managesieve brancher. Modifiez le config.inc.php fichier.

sudo nano /var/www/roundcube/config/config.inc.php

Ajouter le managesieve plugin dans le tableau à la fin de ce fichier. L'ordre des plugins n'a pas d'importance.

$config['plugins'] = array('acl', 'additional_message_headers', 'managesieve', .....);

Enregistrez et fermez le fichier.

Notez que si vous déplacez un ensemble de filtres tamis d'un ancien serveur de messagerie vers votre nouveau serveur de messagerie, vous devez accéder aux Paramètres -> Filtres , puis cliquez sur Actions et activez le jeu de filtres, sinon le serveur Dovecot LMTP n'exécutera pas le filtre tamis.

Étape 10 :Suppression des informations sensibles des en-têtes d'e-mail

Par défaut, Roundcube ajoutera un User-Agent en-tête de l'e-mail, indiquant que vous utilisez le webmail Roundcube et le numéro de version. Vous pouvez dire à Postfix de l'ignorer afin que le destinataire ne puisse pas le voir. Exécutez la commande suivante pour créer un fichier de vérification d'en-tête.

sudo nano /etc/postfix/smtp_header_checks

Mettez les lignes suivantes dans le fichier.

/^User-Agent.*Roundcube Webmail/            IGNORE

Enregistrez et fermez le fichier. Modifiez ensuite le fichier de configuration principal de Postfix.

sudo nano /etc/postfix/main.cf

Ajoutez la ligne suivante à la fin du fichier.

smtp_header_checks = regexp:/etc/postfix/smtp_header_checks

Enregistrez et fermez le fichier. Exécutez ensuite la commande suivante pour reconstruire la table de hachage.

sudo postmap /etc/postfix/smtp_header_checks

Rechargez Postfix pour que le changement prenne effet.

sudo systemctl reload postfix

Désormais, Postfix n'inclura plus User-Agent: Roundcube Webmail dans les en-têtes lors de l'envoi d'e-mails sortants.

Étape 11 :Configurer le plug-in de mot de passe dans Roundcube

Roundcube inclut un plug-in de mot de passe qui permet aux utilisateurs de modifier leurs mots de passe à partir de l'interface de messagerie Web. Modifiez le config.inc.php fichier.

sudo nano /var/www/roundcube/config/config.inc.php

Assurez-vous que le password plugin dans la liste des plugins à la fin de ce fichier. L'ordre des plugins n'a pas d'importance.

$config['plugins'] = array('acl', 'additional_message_headers', 'password', .....);

Enregistrez et fermez le fichier.

Cependant, nous devons configurer ce plugin avant qu'il ne fonctionne. Modifiez le fichier de configuration du plug-in de mot de passe.

sudo nano /var/www/roundcube/plugins/password/config.inc.php

Si votre Roundcube n'a pas le fichier config.inc.php, copiez le fichier de configuration par défaut et modifiez le fichier.

cd /var/www/roundcube/plugins/password/
sudo cp config.inc.php.dist config.inc.php
sudo nano config.inc.php

Recherchez la ligne suivante :

$config['password_db_dsn'] = '';

Ce paramètre est utilisé pour indiquer au plugin de mot de passe où les mots de passe des utilisateurs sont stockés. Par défaut, la valeur est vide et elle interrogera le roundcube base de données, qui ne stocke pas les mots de passe des utilisateurs. Si vous avez suivi mon tutoriel PostfixAdmin, alors les mots de passe des utilisateurs sont stockés dans le postfixadmin base de données, nous devons donc changer la valeur en :

$config['password_db_dsn'] = 'mysql://postfixadmin:[email protected]/postfixadmin';

Le dit au plugin de mot de passe de se connecter à postfixadmin base de données. Si vous ne vous souvenez pas de votre mot de passe de base de données postfixadmin, vous pouvez le trouver dans le /etc/dovecot/dovecot-sql.conf.ext dossier. Si votre mot de passe PostfixAdmin contient un guillemet simple, vous pouvez utiliser une barre oblique inverse (\' ) pour y échapper.

Trouvez ensuite la ligne suivante.

$config['password_query'] = 'SELECT update_passwd(%c, %u)';

Remplacez-le par ce qui suit.

$config['password_query'] = 'UPDATE mailbox SET password=%D,modified=NOW() WHERE username=%u';

Je recommande d'activer un vérificateur de force de mot de passe pour empêcher les utilisateurs de définir des mots de passe hebdomadaires. Allez au début de ce fichier, vous pouvez trouver la ligne suivante.

$config['password_strength_driver'] = null;

Nous pouvons utiliser le zxcvbn pilote de force de mot de passe, alors changez-le en :

$config['password_strength_driver'] = 'zxcvbn';

Ajoutez la ligne suivante dans ce fichier pour autoriser uniquement les mots de passe forts.

$config['password_zxcvbn_min_score'] = 5;

Remarque :Le $config['password_minimum_score'] le paramètre ne fonctionne pas avec le zxcvbn conducteur, alors laissez-le tranquille.

Vous pouvez également définir une longueur minimale pour le mot de passe. Trouvez la ligne suivante.

$config['password_minimum_length'] = 0;

Changez-le en :

$config['password_minimum_length'] = 8;

Rappelez-vous que nous avons utilisé le schéma de mot de passe BLF-CRYPT dans le tutoriel PostfixAdmin, nous devons donc également configurer le plugin de mot de passe pour utiliser BLF-CRYPT. Trouvez les lignes suivantes dans le fichier.

$config['password_algorithm'] = 'clear';

Par défaut, le mot de passe sera stocké en texte clair, modifiez la valeur comme suit pour utiliser l'algorithme de mot de passe intégré de Dovecot.

$config['password_algorithm'] = 'dovecot';

Trouvez ensuite la ligne suivante, qui indique où se trouve le générateur de hachage du mot de passe de Dovecot.

$config['password_dovecotpw'] = '/usr/local/sbin/dovecotpw'; // for dovecot-1.x

Remplacez-le par ce qui suit.

$config['password_dovecotpw'] = '/usr/bin/doveadm pw -r 12';

Recherchez ensuite la ligne suivante, qui indique le schéma de mot de passe qui sera utilisé.

$config['password_dovecotpw_method'] = 'CRAM-MD5';

Changez-le en :

$config['password_dovecotpw_method'] = 'BLF-CRYPT';

Trouvez la ligne suivante.

$config['password_dovecotpw_with_method'] = false;

Changer false à true. Cela ajoutera un préfixe {BLF-CRYPT} au mot de passe haché, ainsi vous reconnaîtrez quel schéma de mot de passe est utilisé.

$config['password_dovecotpw_with_method'] = true;

Enregistrez et fermez le fichier. Étant donné que ce fichier contient le mot de passe de la base de données, nous ne devrions autoriser que l'utilisateur du serveur Web à lire et à écrire dans ce fichier.

Apache

sudo chown apache:apache /var/www/roundcube/plugins/password/config.inc.php
sudo chmod 600 /var/www/roundcube/plugins/password/config.inc.php

Nginx

sudo chown nginx:nginx /var/www/roundcube/plugins/password/config.inc.php
sudo chmod 600 /var/www/roundcube/plugins/password/config.inc.php

Désormais, les utilisateurs devraient pouvoir modifier leurs mots de passe dans l'interface de messagerie Web Roundcube.

Comment configurer les messages de vacances/d'absence du bureau

Nous pouvons utiliser le filtre de tamis pour créer des messages de vacances/d'absence du bureau. Allez dans Roundcube Paramètres -> Filtres . Cliquez ensuite sur create bouton pour créer un filtre.

  • Donnez à ce fichier un nom tel que "absent du bureau".
  • Les nouveaux filtres ne sont pas désactivés, vous pouvez donc laisser le bouton tel quel.
  • Dans le champ d'application champ, sélectionnez tous les messages.
  • Sélectionnez Rejouer avec le message dans les paramètres d'Actions, et entrez le message qui sera automatiquement envoyé.
  • Entrez 1 dans la fréquence d'envoi des messages , de sorte que la réponse automatique ne sera envoyée qu'une seule fois par jour pour chaque expéditeur. Si vous définissez cette valeur sur  7 , la réponse automatique sera envoyée une fois tous les 7 jours pour chaque expéditeur.
  • Laissez les autres champs de texte vides.
  • Cliquez sur Enregistrer bouton et vous avez terminé.

Lorsque vous êtes de retour au bureau, vous pouvez activer le "Filtre désactivé ", puis cliquez sur le bouton Enregistrer bouton pour désactiver ce filtre.

Configuration de plusieurs domaines de messagerie

Pour héberger plusieurs domaines de messagerie, veuillez lire l'article suivant :

  • Comment héberger plusieurs domaines de messagerie dans PostfixAdmin sur CentOS/RHEL

Conseils de dépannage

Si vous rencontrez des erreurs, vous pouvez consulter les journaux d'erreurs du serveur Web sur /var/log/apache2/roundcube_error.log (si vous utilisez Apache), ou /var/log/nginx/roundcube.error (si vous utilisez Nginx.), également les journaux d'erreur Roundcube dans /var/www/roundcube/logs/ répertoire.

Échec de la connexion au serveur de stockage

Si vous voyez le message Connection to storage server failed erreur lors de la tentative de connexion à RoundCube, c'est probablement parce que

  • Le serveur Dovecot n'est pas en cours d'exécution. Vous pouvez redémarrer Dovecot avec sudo systemctl restart dovecot et vérifiez son statut avec systemctl status dovecot .
  • Vous utilisez un certificat TLS auto-signé. Roundcube nécessite un certificat TLS valide émis par une autorité de certification de confiance telle que Let's Encrypt.
  • Votre certificat TLS a expiré. Vous pouvez renouveler le certificat Let's Encrypt TLS avec sudo certbot renew , puis redémarrez Postfix et Dovecot (sudo systemctl restart postfix dovecot ).

Vous pouvez également essayer d'ajouter une entrée DNS personnalisée dans /etc/hosts fichier comme décrit à l'étape 9 sur le serveur Roundcube, afin que Roundcube puisse résoudre correctement le nom d'hôte du serveur de messagerie.

Impossible de charger le message depuis le serveur

Si vous voyez le message "Erreur interne :impossible de charger le message à partir du serveur ", c'est probablement parce que vous essayez d'ouvrir un e-mail supprimé (URL invalide). Essayez d'accéder au domaine racine de la messagerie (mail.example.com) pour voir si cela fonctionne.


Cent OS
  1. Comment installer phpMyAdmin avec Nginx sur CentOS 7

  2. Installez Nginx avec ngx_pagespeed sur CentOS 7

  3. Comment installer phpMyAdmin avec Nginx sur CentOS 7 / RHEL 7

  4. Comment installer Apache Maven CentOS 7 / RHEL 7

  5. Comment installer Apache Maven sur CentOS/RHEL 8/7

Comment installer phpMyAdmin avec Nginx sur CentOS 8 / RHEL 8

Comment installer phpMyAdmin avec Apache sur CentOS 8 / RHEL 8

Comment installer WordPress avec Nginx sur CentOS 8 / RHEL 8

Installez Nginx Amplify sur CentOS 8/RHEL 8 pour surveiller les performances LEMP

Installez Roundcube Webmail sur Ubuntu 18.04 avec Apache/Nginx

Installez Roundcube Webmail sur Ubuntu 20.04 avec Apache/Nginx