Configuration des courriels

ownCloud peut envoyer des courriels de réinitialisation de mot de passe, notifier aux utilisateurs de nouveaux partages de fichiers ou des modifications de fichiers, et des notifications d’activité. Vos utilisateurs peuvent configurer les notifications qu’ils veulent recevoir sur leur page personnelle.

ownCloud n’intègre pas de serveur de messagerie complet mais se connecte au serveur de messagerie existant. Vous devez avoir un serveur de messagerie fonctionnel pour qu’ownCloud puisse envoyer des courriels. Le serveur de messagerie peut être installé sur le même serveur qu’ownCloud ou sur un serveur distant.

La version 7 d’ownCloud introduit une nouvelle fonctionnalité : un assistant de configuration graphique pour la messagerie.

../_images/smtp-config-wizard.png

Avec ce nouvel assistant, connecter ownCloud à votre serveur de messagerie est rapide et facile. L’assistant remplit automatiquement les valeurs dans le fichier config/config.php.

L’assistant de configuration gère trois types de connexion : SMTP, PHP et Sendmail. Utilisez le configurateur SMTP pour un serveur distant et PHP ou Sendmail quand le serveur de messagerie est sur le même serveur qu’ownCloud.

Note

L’option Sendmail se réféère au serveur SMTP Sendmail et toute autre alternatives telles que Postfix, Exim ou Courier. Celles-ci contiennent toutes un binaire de sendmail et sont donc librement interchangeables.

Configuration du serveur SMTP

Vous avez besoin des informations suivantes de la part de votre administrateur de messagerie pour connecter ownCloud à un serveur distant SMTP :

  • type de chiffrement : Aucun, SSL/TLS ou STARTTLS ;
  • l’adresse d’expéditeur qui sera visible dans les courriels envoyés par ownCloud ;
  • si l’authentification est nécessaire ;
  • la méthode d’authentification : Aucune, Login, En clair ou Gestionnaire du réseau NT ;
l’adresse IP du serveur ou son nom complet (FQDN) ;
  • les identifiants, si nécessaire.
../_images/smtp-config-smtp.png

Vos modifications sont enregistrées immédiatement et vous pouvez cliquer sur le bouton « Envoyer un e-mail » pour tester votre configuration. Ceci envoie un message de test à l’adresse électronique configurée sur votre page personnelle. Le message indique:

If you received this email, the settings seem to be correct.

--
ownCloud - services web sous votre contrôle
https://owncloud.org

Configuration de PHP et Sendmail

La configuration de PHP ou Sendmail nécessite que vous sélectionniez l’un d’eux et que vous saisissiez l’adresse de retour désirée.

../_images/smtp-config-php-sendmail.png

Comment décider lequel utiliser ? Le mode PHP utilise votre bianire local sendmail. Utilisez ceci si vous voulez utilisez php.ini pour contrôler certaines fonctions de votre serveur de messagerie, comme les chemins, les en-têtes ou le passage d’options de commandes supplémentaires à votre binaire sendmail. Ceci varie en fonction du serveur que vous utilisez, aussi, veuillez consulter la documentation de votre serveur pour connaître les options.

Dans la plupart des cas, l’option smtp est la meilleure car elle évite les étapes supplémentaires de la configuration de PHP et vous pouvez contrôler toutes les options de votre serveur de messagerie en un seul endroit, dans la configuration de votre serveur de messagerie.

Utilisation de modèles de courriel

Une autre fonctionnalité utile est la possibilité de modifier des modèles de courriel. Vous pouvez maintenant modifier les modèles de courriels d’ownCloud sur votre page d’administration. Voici les modèles disponibles :

  • Email de partage (HTML) – Version HTML des courriels informant les utilisateurs d’un nouveau partage de fichiers
  • Email de partage (version texte simple alternative) – Courriels en texte brut informant les utilisateurs d’un nouveau partage de fichiers
  • Mesage envoyé en cas de perte de mot de passe – Courriels de réinitialisation de mot de passe pour les utilisateurs ayant perdu leur mot de passe
  • Email de notification d’activité – Notification d’activité que les utilisateurs ont activé sur leur page parsonnelle dans la section Notifications

En plus de fournir des modèles de courriels, cette fonctionnalité permet d’appliquer un thème pré-configuré aux courriels.

Pour modifier un modèle de courriel :

  1. rendez-vous sur la page d’administration ;
  2. sélectionnez la section « Modèles de mail » ;
  3. choisissez un modèle dans la liste déroulante ;
  4. appliquez les modifications désirées dans le modèle.

Les modèles sont écrits en PHP et en HTML et sont déjà chargés avec les variables appropriées telles que le nom d’utilisateur, les liens partagés et les noms de fichiers. Vous pouvez en faisant attention les modifier sans connaître PHP ou HTML ; ne touchez pas au code, mais vous pouvez modifier les portions de texte des messages. Par exemple, voici le modèle de courriel pour la perte du mot de passe :

<?php

   echo str_replace('{link}', $_['link'], $l->t('Use the following link to
   reset your password: {link}'));

Vous pouvez modifier la portion de texte du modèle : Use the following link to reset your password: pour Veuillez utiliser le lien suivant pour réinitialiser votre mot de passe. Si vous n’avez pas demander de réinitialisation de mot de passe, veuillez ignorer ce message.

À nouveau, soyez très prudent à ne rien modifier d’autre que le texte car la plus petite erreur dans le code rendrait le modèle inopérant.

Note

Vous pouvez modifier les modèles directement dans la boîte de texte ou copier le contenu dans un éditeur de texte puis le recopier dans la boîte de texte après avoir effectué les modifications.

Définitionb des paramètres sdu serveur de messagerie dans config.php

Si vous préférez, vous pouvez définir les paramètres du serveur de messagerie dans le fichier config/config.php. Les exemples suivants sont pour SMTP, PHP, Sendmail, and Qmail.

SMTP

Si vous voulez envoyer des courriels en utilisant un serveur SMTP local ou distant, il est nécessaire de saisir le nom ou l’adresse IP du serveur, et, de manière facultative, le faire suivre d’un double point (« : ») et du numéro du port, par ex. :425. Si cette valeur n’est pas donnée, le port utilisé par défaut sera le port 25/tcp à moins que vous ne modifiiez le paramètre mail_smtpport. Plusieurs serveurs peuvent être indiqués, séparés par des point-virgules :

<?php

  "mail_smtpmode"     => "smtp",
  "mail_smtphost"     => "smtp-1.serveur.dom;smtp-2.serveur.dom:425",
  "mail_smtpport"     => 25,

ou

<?php

  "mail_smtpmode"     => "smtp",
  "mail_smtphost"     => "smtp.serveur.dom",
  "mail_smtpport"     => 425,

Si un scanner de logiciels malveillants ou de courriels indésirables s’exécute sur le serveur SMTP, il pourrait être nécessaire d’augmenter la temporisation du serveur SMTP par exemple à 30 secondes :

<?php

  "mail_smtptimeout"  => 30,

Si le serveur accepte les connexions non sécurisées, le paramètre par défaut peut être utilisé :

<?php

"mail_smtpsecure"   => '',

Si le serveur n’accepte que les connexions sécurisées, vous pouvez choisir entre deux variantes :

SSL/TLS

Une connexion sécurisée sera initiée en utilisant SSL/TLS via SMTPS sur le port par défaut 465/tcp :

<?php

  "mail_smtphost"     => "smtp.serveur.dom:465",
  "mail_smtpsecure"   => 'ssl',

STARTTLS

Une connexion sécurisée sera initiée en utilisant le protocole STARTTLS via SMTP sur le port par défaut 25/tcp :

<?php

  "mail_smtphost"     => "smtp.serveur.dom",
  "mail_smtpsecure"   => 'tls',

Une alternative est le port 587/tcp (recommndé) :

<?php

  "mail_smtphost"     => "smtp.server.dom:587",
  "mail_smtpsecure"   => 'tls',

Authentification

Et enfin, il est nécessaire de configurer le serveur SMTP pour indiquer s’il utilise ou non l’authentification. Si ce n’est pas le cas, les valeurs par défaut peuvent être conservées telles quelles.

<?php

  "mail_smtpauth"     => false,
  "mail_smtpname"     => "",
  "mail_smtppassword" => "",

Dans le cas contraire, vous devez définir l’utilisateur et le mot de passe et de manière facultative, choisir le type d’authentification LOGIN (par défaut) ou PLAIN.

<?php

  "mail_smtpauth"     => true,
  "mail_smtpauthtype" => "LOGIN",
  "mail_smtpname"     => "utilisateur",
  "mail_smtppassword" => "mot_de_passe",

PHP mail

Si vous voulez utiliser PHP mail, il est nécessaire d’avoir un serveur de messagerie déjà installé et opérationnel sur votre serveur. Le programme utilisé pour envoyer les courriels est défini par les paramètres de configuration du fichier php.ini. (Sur les systèmes de type Unix, ce sera très vraisemblablement Sendmail). ownCloud devrait être capable d’envoyer des courriels sans autre paramétrage.

<?php

  "mail_smtpmode"     => "php",
  "mail_smtphost"     => "127.0.0.1",
  "mail_smtpport"     => 25,
  "mail_smtptimeout"  => 10,
  "mail_smtpsecure"   => "",
  "mail_smtpauth"     => false,
  "mail_smtpauthtype" => "LOGIN",
  "mail_smtpname"     => "",
  "mail_smtppassword" => "",

Sendmail

Si vous voulez utiliser le programme bien connu Sendmail pour envoyer des courriels, il est nécessaire d’avoir un serveur de messagerie installé et opérationnel sur votre serveur de type Unix. Le binaire (/usr/sbin/sendmail) fait généralement partie du système d’exploitation. ownCloud devrait pouvoir envoyer des courriels sans autre configuration.

<?php

  "mail_smtpmode"     => "sendmail",
  "mail_smtphost"     => "127.0.0.1",
  "mail_smtpport"     => 25,
  "mail_smtptimeout"  => 10,
  "mail_smtpsecure"   => "",
  "mail_smtpauth"     => false,
  "mail_smtpauthtype" => "LOGIN",
  "mail_smtpname"     => "",
  "mail_smtppassword" => "",

qmail

Si vous voulez utiliser le programme qmail pour envoyer des courriels, il est nécessaire d’avoir un système qmail installé et opérationnel sur votre serveur. Le binaire sendmail (/var/qmail/bin/sendmail) sera alors utilisé pour envoyer des courriels. ownCloud devrait pouvoir envoyer des courriels sans autre configuration.

<?php

  "mail_smtpmode"     => "qmail",
  "mail_smtphost"     => "127.0.0.1",
  "mail_smtpport"     => 25,
  "mail_smtptimeout"  => 10,
  "mail_smtpsecure"   => "",
  "mail_smtpauth"     => false,
  "mail_smtpauthtype" => "LOGIN",
  "mail_smtpname"     => "",
  "mail_smtppassword" => "",

Envoi d’un courriel de test

Pour tester votre configuration de messagerie, enregistrez votre adresse électronique sur votre page personnelle et utilisez le bouton Envoyer un e-mail dans la section Serveur e-mail de votre page d’administration.

Utilisation de certificats auto-signés

Lors de l’utilisation de certifcats auto-signés sur le serveur distant SMTP, le certificat doit être importé dans ownCloud. Veuillez consulter Importation de certificats SSL personnel ou global pour plus d’informations.

Dépannage

Si vous n’arrivez pas à envoyer de courriels, essayez d’activer le mode débogage. Pour cela, activez le paramètre mail_smtpdebug dans config/config.php.

<?php

  "mail_smtpdebug" => true;

Note

Immédiatement après avoir cliqué sur le bouton Envoyer un e-mail, comme décrit précédemment, plusieurs messages SMTP -> get_lines(): ... apparaissent à l’écran. Ceci est le comportement attendu et peut être ignoré.

Question : Pourquoi mon domaine Web est-il différent de mon domaine de messagerie ?

Réponse : Le nom de domaine par défaut utilisé pour l’adresse de l’expéditeur est celui du nom d’hôte où est installé ownCloud. Si vous avez un nom de domaine de messagerie différent, vous pouvez passer outre ce comportement en définissant le paramètre de configuration suivant :

<?php

  "mail_domain" => "exemple.com",

Ce paramètre s’appliquera à tous les courriels envoyé par ownCloud (par exemple, pour le courriel de réinitialisation de mot de passe). L’adresse de l’expéditeur apparaîtra ainsi:

no-reply@exemple.com

Question : Comment savoir si le serveur SMTP est accessible ?

Réponse : Utilisez la commande ping pour vérifier l’accessibilité du sevreur:

ping smtp.serveur.dom
PING smtp.server.dom (ip-address) 56(84) bytes of data.
64 bytes from your-server.local.lan (192.168.1.10): icmp_req=1 ttl=64
time=3.64ms

Question : Comment savoir sur le serveur SMTP écoute sur un port TCP spécifique ?

Réponse : Le meilleur moyen d’obtenir les informations de configuration du serveur de messagerie est de le demander à l’administrateur du serveur de messagerie. Si vous êtes l’administrateur du serveur de messagerie ou que vous avez besoin de cette information en urgence, vous pouvez utiliser la commande netstat. Cet exemple montre tous les serveurs actifs sur votre système et les ports sur lesquels ils écoutent. Le serveur SMTP écoute sur le port 25 de l’hôte local.

# netstat -pant
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address   Foreign Address  State  ID/Program name
tcp    0      0    0.0.0.0:631     0.0.0.0:*        LISTEN   4418/cupsd
tcp    0      0    127.0.0.1:25    0.0.0.0:*        LISTEN   2245/exim4
tcp    0      0    127.0.0.1:3306  0.0.0.0:*        LISTEN   1524/mysqld
  • 25/tcp est le protocole non chiffré smtp
  • 110/tcp/udp est le protocole non chiffré pop3
  • 143/tcp/udp est le protocole non chiffré imap4
  • 465/tcp est le protocole chiffré smtps
  • 993/tcp/udp est le protocole chiffré imaps
  • 995/tcp/udp est le protocole chiffré pop3s

Question : Comment déterminer si le serveur SMTP gère le protocole SMTPS ?

Réponse : Une bonne indication que le serveur SMTP gère le protocole SMTPS est qu’il écoute sur le port 465.

Question : Comment déterminer le type d’authentification et les protocoles de chiffrement que sait gérer le serveur ?

Réponse : Les serveurs SMTP annoncent généralement la disponibilité de STARTTLS immédiatement après l’établissement d’une connexion. Vous pouvez facilement vérifier cela en utilisant la commande telnet.

Note

Vous devez saisir les lignes indiquées pour obtenir les informations affichées.

telnet smtp.domaine.dom 25
Trying 192.168.1.10...
Connected to smtp.domaine.dom.
Escape character is '^]'.
220 smtp.domaine.dom ESMTP Exim 4.80.1 Tue, 22 Jan 2013 22:39:55 +0100
EHLO votre-serveur.local.lan                   # <<< Saisissez cette commande
250-smtp.domaine.dom Hello votre-serveur.local.lan [adresse-ip]
250-SIZE 52428800
250-8BITMIME
250-PIPELINING
250-AUTH PLAIN LOGIN CRAM-MD5                 # <<< Protocoles d'authentification gérés
250-STARTTLS                                  # <<< Le chiffrement est géré
250 HELP
QUIT                                          # <<< Saisissez cette commande
221 smtp.domaine.dom closing connection
Connection closed by foreign host.

Activation du mode de débogage

Si vous n’arrivez pas à envoyer de courriels, essayez d’activer le mode débogage. Pour cela, activez le paramètre mail_smtpdebug dans config/config.php.

<?php

  "mail_smtpdebug" => true,

Note

Immédiatement après avoir cliqué sur le bouton Envoyer un e-mail, comme décrit précédemment, plusieurs messages SMTP -> get_lines(): ... apparaissent à l’écran. Ceci est le comportement attendu et peut être ignoré.

Toute la documentation est sous licence Creative Commons Attribution 3.0 Unported license — Traduction : Cédric Corazza.