Есть ли способ использовать функцию автообнаружения без Exchange?


12

Метод автообнаружения, используемый Exchange, выглядит великолепно. Однако у меня нет Exchange.

Похоже, что при настройке почтовой учетной записи устройство / почтовый клиент ищет файл autodiscover.xml.

Есть ли способ создать такой файл самостоятельно и обслуживать его на обычном сервере Linux, указывая на обычный почтовый сервер Linux?

Ответы:


17

Сначала вам нужно будет указать Outlook, куда идти. Используйте запись SRV в DNS, которая указывает на сервер, содержащий ваш файл Autodiscover.xml:

_autodiscover._tcp.mydomain.com. 3600 IN SRV  10 10 443 my-web-server.mydomain.com.

Используйте скрипт PHP здесь: http://virer.net/info/ol-autodiscover/index.html, чтобы вернуть клиенту файл Autodiscover.xml. В него встроен PHP, поэтому вы можете возвращать разные значения в зависимости от адреса электронной почты, введенного в Outlook. (Полезно, если вы хотите использовать один файл автообнаружения, чтобы возвращать результаты для нескольких доменов / клиентов, используя один скрипт конфигурации).

После того, как этот скрипт окажется на вашем веб-сервере и заработает, убедитесь, что вы включили HTTPS с действительным сертификатом, чтобы Outlook не выдавал ошибок при попытке его загрузки.


У вас есть ссылка на документацию рег. запись SRV?
Фредерик Норд

Вот достойная ссылка: markgossa.blogspot.com/2015/11/…
Аарон С. де Брюн

9

Только что закончил настройку автообнаружения на моем сервере Linux. Теперь почта настраивается автоматически практически во всех возможных клиентах.

Вот простое решение для настройки автообнаружения с настройками POP3 / IMAP;

DNS:

_autodiscover._tcp.yourdomain.com. 3600 IN SRV  10 10 443 mail.yourmx.com.

PHP (autodiscover.php):

<?php
preg_match("/\<EMailAddress\>(.*?)\<\/EMailAddress\>/", $data, $matches);

//set Content-Type
header("Content-Type: application/xml");
?>
<?php echo '<?xml version="1.0" encoding="utf-8" ?>'; ?>
<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">
<Response xmlns="http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a">
<Account>
<AccountType>email</AccountType>
<Action>settings</Action>
<Protocol>
<Type>POP3</Type>
<Server>mail.yourmx.com</Server>
<Port>995</Port>
<LoginName><?php echo $matches[1]; ?></LoginName>
<DomainRequired>off</DomainRequired>
<SPA>off</SPA>
<SSL>on</SSL>
<AuthRequired>on</AuthRequired>
<DomainRequired>off</DomainRequired>
</Protocol>
<Protocol>
<Type>IMAP</Type>
<Server>mail.yourmx.com</Server>
<Port>993</Port>
<DomainRequired>off</DomainRequired>
<LoginName><?php echo $matches[1]; ?></LoginName>
<SPA>off</SPA>
<SSL>on</SSL>
<AuthRequired>on</AuthRequired>
</Protocol>
<Protocol>
<Type>SMTP</Type>
<Server>mail.yourmx.com</Server>
<Port>465</Port>
<DomainRequired>off</DomainRequired>
<LoginName><?php echo $matches[1]; ?></LoginName>
<SPA>off</SPA>
<SSL>on</SSL>
<AuthRequired>on</AuthRequired>
<UsePOPAuth>on</UsePOPAuth>
<SMTPLast>off</SMTPLast>
</Protocol>
</Account>
</Response>
</Autodiscover>

.htaccess:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ autodiscover.php [NC,L]

NB! Не забудьте получить подписанный сертификат SSL.


Работает ли android и thunderbird с этой настройкой?
нейтринус

Thunderbird от Mozilla также работает с настройкой автообнаружения, как описано на MDN developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/…
Джон Грин

1

На самом деле, если ваши клиенты Outlook (я предполагаю, что, поскольку вы сказали, что они ищут autodiscover.xml), вы хотите использовать Guessmart для автоконфигурации, если вы используете POP / IMAP и SMTP. Guessmart - это, в основном, Outlook, использующий ваш адрес электронной почты и пароль, чтобы пробовать разные имена хостов, используя общие порты POP / IMAP / SMTP, пока не найдет тот, в который сможет успешно войти. Это тот же пользовательский интерфейс в Outlook, что и Autodiscover, но предназначенный для серверов, отличных от Exchange.

Вы можете проверить все это в Outlook, щелкнув правой кнопкой мыши на значке уведомлений в трее уведомлений и выбрав «Проверить автоконфигурацию электронной почты». Снимите флажок Автообнаружение и протестируйте Guessmart, чтобы увидеть, как работает Outlook.


Я однажды заметил материал autodiscover.xml. Но Thunderbird пытается «угадать», какие серверы также используются для pop / imap. Иногда это угадывается неправильно. Я думаю, что продукты Apple тоже так делают. Я хотел бы знать, существует ли что-то стандартизированное для большинства почтовых клиентов на рынке. Потому что люди понятия не имеют и не заботятся о том, что означает smtp, pop или imap. Надеюсь, это поможет.
SamK

-6

Нет, автообнаружение является специфическим для Exchange, вы не сможете работать вне этой среды.

Это не просто файл .xml, в нем есть много вещей, когда дело доходит до автообнаружения.

Чтобы дать вам краткий обзор, прочитайте эту статью, и вы получите лучшее представление об этом.

http://www.msexchange.org/articles_tutorials/exchange-server-2010/management-administration/exchange-autodiscover.html

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.