Sources du blog ALLELLA
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

2020-05-12-email_autoconfig.markdown 2.8 KiB

4 роки тому
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. ---
  2. layout: post
  3. title: "Email - autodiscover / autoconfig"
  4. date: 2020-04-26
  5. categories: [technique, outils]
  6. excerpt_separator: <!--more-->
  7. ---
  8. Je n'avais pas ~~eu~~ pris le temps de mettre en place les configurations nécessaires permettant aux différents clients
  9. de messagerie (bureau / mobile) de récupérer automatiquement l'adresse du serveur, les ports, les protocoles, ...
  10. <!--more-->
  11. ## Ca marche comment ?
  12. Lorsqu'on souhaite lire ses emails ailleurs que sur son navigateur Internet, on ouvre son client de messagerie préféré et
  13. on suit les différentes étapes ; il y a alors 2 solutions, soit le client arrive à "récupérer" la configuration liée au
  14. domaine de messagerie, soit vous êtes obligé de le faire manuellement ..
  15. L'idée est bien de se faciliter la vie :) Mais comme tout n'est pas simple, chaque client utilise un des mécanismes suivants :
  16. * une base de données ISPB gérée par Mozilla ;
  17. * deux fichiers de configuration mis à disposition en HTTPs ;
  18. * des entrées DNS sur la zone du domaine ;
  19. * la devinette, le client essaye de combiner smtp ou imap avec le nom de domaine de votre messagerie ;
  20. ## On met quoi en place ?
  21. Du coup pour pouvoir répondre aux demandes de tous les clients de messagerie, on va commencer par rajouter les entrées DNS suivantes :
  22. ```bash
  23. @ IN MX 10 mail.allella.io.
  24. autoconfig IN CNAME www
  25. autodiscover IN CNAME www
  26. _imaps._tcp SRV 0 1 993 mail.allella.io.
  27. _submission._tcp SRV 0 1 465 mail.allella.io.
  28. _autodiscover._tcp SRV 0 0 443 autodiscover.allella.fr.
  29. ```
  30. On met à disposition aussi les fichiers de configuration en se basant sur [cette proposition](https://github.com/gronke/email-autodiscover).
  31. On clone le repo dans un répertoire local sur le serveur, on adapte les fichiers pour sa configuration et on inclut ce bloc pour chaque domaine.
  32. ```bash
  33. /etc/nginx/conf.d/local$ cat autodiscover.conf
  34. location ~ /(?:a|A)utodiscover/(?:a|A)utodiscover.xml {
  35. root /var/www;
  36. try_files /autodiscover/autodiscover.php =404;
  37. fastcgi_pass unix:/run/php/php7.3-fpm.sock;
  38. fastcgi_param PATH_INFO $path_info;
  39. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  40. fastcgi_param SERVER_ADDR "";
  41. fastcgi_param REMOTE_ADDR $http_x_real_ip;
  42. }
  43. location ~ /mail/config-v1.1.xml {
  44. root /var/www;
  45. try_files /autodiscover/config-v1.1.xml =404;
  46. }
  47. /etc/nginx/sites-enabled$ cat allella.fr
  48. server {
  49. listen 443;
  50. server_name allella.fr www.allella.fr;
  51. include /etc/nginx/conf.d/local/autodiscover.conf;
  52. [...]
  53. }
  54. ```
  55. Et voilà, une fois l'adresse ajoutée, Thunderbird trouve tout seul sa configuration :
  56. ![thunderbird_autoconfig]({{ site.baseurl }}/assets/images/thunderbird_autoconfig.png)