AquaMail Forum
На Русском языке => Предложения что-либо добавить => Topic started by: dimetrius on October 25, 2017, 11:36:56 am
-
Привет,
было бы не плохо в AquaMail реализовать автоматическую конфигурацию настроек почтового сервера не только для популярных почтовиков.
Вот как это реализуется в thunderbird.
Обращаю ваше внимание на способ с доменом autoconfig.example.com
Спасибо
-
newbielink:https://developer.mozilla.org/ru/docs/Mozilla/Thunderbird/%D0%90%D0%B2%D1%82%D0%BE%D0%BA%D0%BE%D0%BD%D1%84%D0%B8%D0%B3%D1%83%D1%80%D0%B0%D1%86%D0%B8%D1%8F
-
Ну как бы да, это все известно. Есть ещё механизмы основанные на DNS.
Аква кроме своей базы - также делает DNS MX и смотрит на то что получила. Если получила.
Так распознаются "хорошо известные" сервисы с "пользовательскими" доменами, скажем "корпоративный" Яндекс, Mail.ru, Yahoo for Business и так далее.
Кроме того, для Exchange поддерживается autodiscover.
Так что можно добавлять ещё и ещё, но думаю что 1) ни одно решение не будет совершенным и 2) и сейчас мне кажется всё совсем неплохо.
--
А Вы спрашиваете потому что...??? Свой домен, необычные имена серверов?
Вообще если не срабатывает обнаружение - то "эвристика" очень простая: imap.<domain> и smtp.<domain> с использованием SSL (порты 993 и 465).
Такие имена используются практически всеми почтовыми сервисами (от AOL до Яндекса).
-
Вообще-то по MX не совсем корректно определять сервер. Их может быть несколько, и IMAP/POP может быть расположен немного в другом месте.
Классический вариант — это по описанию сервисов в зоне:
$ORIGIN _tcp.example.net
_imaps IN SRV 1 1 993 server.example.net.
-
Я только что перепробовал "dig _imaps.<domain> SRV" для разных популярных доменов - yandex.ru, gmail.com, mail.ru, yahoo.com, rambler.ru
Везде - ничего. Так что RFC это хорошо, вот только что-то никто его (или её? какого "пола" RFC?) не использует.
По MX мы можем определить если @vkusnye.blinchiki.ru это на самом деле yandex.ru или ещё что то там.
Это уже очень сильно помогает.
Далее если в MX - сервер начинается на "mail." то мы пробуем mail.<domain> для IMAP или SMTP.
Если не "mail." - то пробуем imap.<domain> и smtp.<domain>.
Вообще-то работает довольно прилично - хотя конечно не является 100% решением.
-
> dig -t any _imaps._tcp.yandex.ru
; <<>> DiG 9.12.1-P2 <<>> -t any _imaps._tcp.yandex.ru
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45505
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 5
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: dcba08474d7737fde42e5ec05b2340a380d6e8cde1c96ed0 (good)
;; QUESTION SECTION:
;_imaps._tcp.yandex.ru. IN ANY
;; ANSWER SECTION:
_imaps._tcp.yandex.ru. 3600 IN SRV 0 1 993 imap.yandex.ru.
;; ADDITIONAL SECTION:
imap.YANDEX.ru. 300 IN A 87.250.251.124
imap.YANDEX.ru. 300 IN A 93.158.134.124
imap.YANDEX.ru. 300 IN A 213.180.204.124
imap.YANDEX.ru. 300 IN AAAA 2a02:6b8::124
;; Query time: 103 msec
;; SERVER: 172.29.1.1#53(172.29.1.1)
;; WHEN: Пт черв. 15 07:29:23 EEST 2018
;; MSG SIZE rcvd: 202
-
А, вот такой формат, вон оно чо....
-
Привет.
Как обстоят дела с автоконфигурацией? Для меня это важно, т.к. мой почтовый сервер работает на нестандартных портах. Стандартные заняты другим почтовым сервером.
Вот пример, как определять порты для подключения:
root@beta:/usr/local/etc/nsd # grep SRV zones/my.server/my.server.zone
_imap._tcp IN SRV 10 0 143 imap.my.server.
_imaps._tcp IN SRV 0 0 993 imap.my.server.
_pop3._tcp IN SRV 20 0 110 pop.my.server.
_pop3s._tcp IN SRV 10 0 995 pop.my.server.
_smtp._tcp IN SRV 10 0 25 smtp.my.server.
_smtps._tcp IN SRV 0 0 465 smtp.my.server.
_submission._tcp IN SRV 0 0 587 smtp.my.server.
Было бы здорово реализовать такой простой функционал.
P.S. Сорри, сначала нашел тему на English, но мой родной язык русский. Продублировал в этой теме.