Была такая музыкальная группа -
«Оркестровые маневры в темноте». Ничем не примечательный электропоп. Самый её кайф - в названии.
Вот так и я. Третий день борюсь с почтой. Сначала заметил проблемы во входящей почте - не работает IMAP+TLS у моего
хостинга; fetchmail даёт socket error. Попробовал POP3+TLS - работает, но сертификат оказался самоподписанным. Я точно помню, что в начале, когда я только регистрировался, IMAP+TLS работали и сертификат был нормальный. Два дня переписывался с техподдержкой, обсуждали, что неисправно. "У нас всё работает." Остановился на POP3+TLS.
Одновременно с этим заглючила почта у моего домашнего провайдера. Закрыли порт 25. То есть на выход они его закрыли давно, но теперь же они стали его и на своём рилее закрывать. Первые два дня только по ночам - часов с 2 ночи до 10 утра. Но сегодня они его закрыли на весь день.
Пошёл вспоминать, как называются сервера SMTP у разных почтовых провайдеров, на каких они портах, кроме 25-го - 25-ый то у меня закрыт, - и как настроить exim, чтобы он слал почту с авторизацией. Вспомнил
Mail.ru,
Yandex.ru и
GMail. Попросту говоря, хост smtp.провайдер, для TLS1 стандартные порты 465 и 587.
С exim пришлось повозиться, потому что все провайдеры требуют в envelope from тот же адрес, что используется для авторизации. Т.е. ещё пришлось настраивать почтовый клиент. Этого тоже не всегда достаточно - Mail.ru требует, чтобы и в заголовке "From:" стоял тот же адрес. GMail такого не требует, вместо этого они просто переписывают "From:" на себя. Это мне неудобно - я, бывает, и в рассылки пишу, которые авторизуют меня по полю "From:". Лучше всего оказался Яндекс - требует только совпадения envelope from, и не переписывает заголовки. На нём остановился пока жду своего провайдера.
Авторизация в exim включается несложно, а главная проблема в том, что в Интернете слишком много информации на эту тему, и большая часть её - лишняя. На самом деле всё просто. Чтобы включить авторизацию в дебиановском exim, надо запустить
dpkg-reconfigure exim4-config
, переконфигурировать exim на отдачу через smarthost, в качестве smarthost указать smtp.yandex.ru::587 (в этом месте номер порта почему-то указывается через два двоеточих), и создать файл /etc/exim4/passwd.client вот такого содержания:
smtp.mail.ru:phd@mail.ru:пароль
smtp.yandex.ru:мойадрес@yandex.ru:пароль
После чего выполнить
update-exim4.conf && /etc/init.d/exim4 reload
С GMail ещё одна засада - exim не любит CNAME, а smtp.gmail.com - как раз CNAME. Его надо резолвить руками, и вписывать уже вот так:
gmail-smtp-msa.l.google.com:мойадрес@gmail.com:пароль
В документации на exim эта misfeature описана.
Upd. exim требует 2 двоеточих в ::587, потому что одно двоеточие служит разделителем хостов в списке хостов.