Thunderbird и Kontact вместо MS Outlook

Когда вы работаете в крупной компании, где на рабочих станциях в основном стоит ОС Windows, а вы один из немногих пользователей Linux, то вы тратите определенную долю ваших усилий на преодоление сопротивления недружественной ИТ среды. С годами некоторые проблемы остаются в прошлом, но новые появляются. Так например почти исчезли как класс сайты заточенные только под IE. Все меньше страшных .docx, .xlsx файлов приходит по почте. Куда-то исчезли обязательные для всех чудо-юдо программы, которые написаны только для Windows. Теперь почти все можно открывать и редактировать из веб браузера. Изменилось многое, но не все.


Угадай картинку и получи бейсболку в подарок приз знатока почты. В 2000-м это был почтовик года по версии PC Magazine, и я сам пользовался им пару лет. Только по-честному, без поиска картинок.


2a0ee48f2cc94c76b4e45313209c93bf.png



Кстати о почте, что с ней? В тех организациях, где используется Exchange Server, постоянно приходят события на календарь и как-то неудобно оправдываться тем, что твой почтовик с не взаимодействует календарем, а Outlook-ом ты не пользуешься, так как его нет на Linux. Как правильно настроить почту, чтобы все работало на Exchange Server: почта, календарь, адресная книга, работа с папками? Статью об этом пишу я эту.


Kontact состоялся


В течении десятка лет я имел возможность проверить почтовые программы Linux в качестве клиента Exchange Server. В разное время я использовал для этой цели KMail/Kontact и Thunerbird. Скажу сразу, что первый вариант практически полностью заменил MS Outlook. Второй же обеспечивает не более половины требуемого функционала, но зато гораздо проще в плане установки и дальнейшей эксплуатации.


Итак приступим. Начнем с трудного: настройка рабочей почты с kdepim / kontact / kmail для полноценной замены MS Outlook.


Структура KDEPIM. Желтоватым цветом заливки отмечены компоненты Kontact, которые взаимодействуют с почтовым сервером.


482f2e69d67b47d39f59b326ecea5ed2.png



Как уже понятно, данный способ подразумевает KDE, в качестве графического окружения вместе с пакетом KDEPIM. Вдобавок к нему нам понадобится почтовый шлюз DavMail, которого к сожалению нет в стандартных репозитариях Gentoo Linux. Выходим из ситуации, используя утилиту dpkg и deb пакет для Debian. Примечательно, что разработка ведется на SourceForge, и несколько дней назад вышла новая версия DavMail 4.8.


(4:15)$ wget https://goo.gl/vxEncG -O  davmail_4.8.0-2479-1_all.deb
(4:16)$ sudo dpkg -i davmail_4.8.0-2479-1_all.deb

DavMail — программа, преобразовывающая протокол Exchange Web Services в открытые протоколы POP, IMAP, SMTP, Caldav, Carddav и LDAP.


Архитектура DavMail, с домашней страницы проекта.


ca4e7dd429e3465ca20f6e65fd850c2f.png



Программа тянет зависимостей всего ничего: любая открытая или приоткрытая ипостась jdk/jre вполне подойдет. Пользователям облачного Outlook 365 на DavMail настраивать ничего не надо, URL Exchange Web Services в программе прописан изначально. Если же используется обычный внутренний Exchange Server, то тогда URL надо указать. И это практически все, еще расставить галки по опциям и DavMail настроен.


eaf2bcd4859d4f2cac4ec293b3979d1e.png



Для более тонкой настройки можно воспользоваться конфигурационным файлом ~/.davmail.properties.


Настройка портов в конфиг-файле.


(5:10)$ grep Port .davmail.properties 
davmail.caldavPort=1080
davmail.imapPort=
davmail.ldapPort=
davmail.popPort=
davmail.proxyPort=
davmail.smtpPort=

Перевести DavMail в режим фонового процесса (при этом не требуется X11).


davmail.server=true

Далее следует настроить KMail и KOrganizer. Так как DavMail сложновато гибко настроить на получение почты, предпочтительнее почту забирать напрямую, а календарь — со шлюза. Сложность заключается в настройке well-known портов, для чего могут потребоваться права рута, в возне с SSL сертификатами при настройке защищенного соединения.


Вряд-ли читателям Хабра требуется рассказывать о том, как настроить почтовый клиент на получение и отправку почты. На всякий случай тут ссылка, для тех, кого запутал интерфейс KMail. Подскажу лишь неявные настройки, например где следует указать путь к папкам отправленных, шаблонов и черновиков, для этого надо открыть Settings -> Identity -> Advanced.


ace603eaccf44c84a0d9e4df630f5387.png



Примечательно, что папку для удаленных выбираете из другого окна: Settings -> Configure KMail -> Accounts -> Receiving tab -> (Choose an account) -> Modify -> Advanced -> Trash folder.


О том как склеить DavMail и KOrganizer я писал отдельный пост, так что не стану повторяться, а вместо этого снова упомяну про подводные камни, то есть один довольно крупный риф. Чаще всего доменный пароль совпадает с паролем пользователя на сервере Exchange и в момент, когда доменный пользователь меняет свой доменный пароль надо не забыть поменять его на KOrganizer. Если же этого не сделать вовремя, то учетная запись может быть заблокирована, из-за настойчивых попыток календаря установить соединение со старым паролем.


Остается настроить LDAP/AD на адресной книге: Settings -> Configure KAddressbook -> LDAP Server Settings -> Add host.


70b0b8b31f0a45d3a51201f523069f30.png



Самое трудное настроить правильно DN, для самопроверки тут можно воспользоваться командой ldapsearch. Если команда найдет пользователя, тогда в поле DN надо записать значение параметра -b, в данном случае — ou=people,o=somehost.com.


ldapsearch -h ldap.somehost.com -x -b ou=people,o=somehost.com -s sub cn="Ivan Petrov"

Что работает безупречно:


  • прием и отправка сообщений,
  • поиск контактов в Active Directory,
  • просмотр календаря,
  • всевозможные фильтры сообщений,
  • оповещения, в том числе и в фоновом режиме.

Работает, но с нареканиями:


  • список, переименование и удаление IMAP папок на почтовом сервере Exchange,
  • принять, отвергнуть или изменить событие в календаре,
  • индексация, поиск.

Не работает:


  • Некоторые Outlook-специфичные примочки, такие как голосовалки да/нет, или Action Items в заголовке письма.
  • настройки на почтовом сервере, например автоматические ответы.

Кроме того целый ряд как положительных, так и отрицательных свойств Kontact не зависит от Exchange Server. После KMail я не могу использовать почтовые клиенты, в которых отсутствует возможность отправить отправленное письмо еще раз или переслать его точную копию, изящный и облегченный редактор сообщений. С другой стороны замороченная инфраструктура S/MIME, запутанные настройки, ШГ из за взаимодействия с html парсером MS Outlook, действуют на нервы.


Архитектура Akonadi


a745f9ec8caa44fbb58813d5bbab376e.png



В целом данный набор довольно громоздкий, хрупкий и требует некоторого внимания, чтобы все продолжало работать как надо. Слабым звеном тут является сервер Akonadi, который служит хранилищем для всех PIM данных. Частенько данные хранилища Akonadi портятся и тогда ничего не стартует. Приходится удалять БД и запускать все по новой. После каждого апгрейда KDE, стараешься запускать приложения KDEPIM, затаив дыхание.


Thunderbird: золотая середина


С почтовым клиентом Thunderbird ситуация иная. Не требуется такой громоздкой инфраструктуры и стольких усилий, весь процесс от начала и до конца может занять не более 15 минут, однако конечный результат скромнее. Время от времени придется открывать веб-интерфейс сервера Exchange для того, чтобы принять, отклонить или изменить событие в календаре, удалить сообщение, работать с папками. Thunderbird не умеет всего этого делать при работе с Exchange Server через протокол IMAP.


Как и в предыдущем случае, предлагаю забирать почту напрямую, календарь — через шлюз, а контакты брать из LDAP/AD. Настройку почты в Thunderbird пропускаю, все и так ясно. Для Office 365 почтовый сервер входящей и исходящей почты — outlook.office365.com. Напоминаю, как настроить CalDav:


Порядок действий будет таков:


  1. Установить расширение Lightning.
  2. Настроить CalDav — календарь DavMail.
  3. Создать новый календарь, и прописать в нем http://localhost:1080/users/username@somehost.com/calendar.

Настройка календаря в Thunderbird, через расширение Lightning и шлюз DavMail


87deefcd4e094a3dae2dd84c86ddc3ea.png



  • по умолчанию порт 1080,
  • outlook.office365.com/EWS/Exchange.asmx — путь к почтовым веб сервисам Office 365. Для традиционных серверов Exchange только FQDN будет отличаться.

Создать новый календарь тоже несложно после того как вы найдете, как это можно сделать. Не ищите напрасно в меню Thunderbird, даю картинку в помощь. Только контекстное меню правого щелчка мыши и только в указанное место, выделенное цветом даст возможность создать новый календарь.


Расширение Lightning.


ead9fe9f1bf44e7d9836c7486e368015.png



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


Остается адресная книга, для нее никаких расширения и шлюзов не требуется. Единственно, пользователи Gentoo Linux должны собрать пакет с USE флагом ldap.


[ebuild   R    ] mail-client/thunderbird-45.8.0::gentoo  USE="crypt dbus hardened jemalloc3 ldap minimal pulseaudio -bindist -custom-cflags -custom-optimization -debug -ffmpeg -gstreamer -jit -lightning -mozdom (-neon) (-selinux) -startup-notification (-system-cairo) -system-harfbuzz -system-icu -system-jpeg -system-libevent -system-libvpx -system-sqlite" L10N="ru -ar -ast -be -bg -bn-BD -br -ca -cs -cy -da -de -el -en-GB -es-AR -es-ES -et -eu -fi -fr -fy -ga -gd -gl -he -hr -hsb -hu -hy -id -is -it -ja -ko -lt -nb -nl -nn -pa -pl -pt-BR -pt-PT -rm -ro -si -sk -sl -sq -sr -sv -ta-LK -tr -uk -vi -zh-CN -zh-TW" 0 KiB

Из адресной книги, вызываем окно настройки подключения к серверу LDAP: Файл -> Создать -> Каталог LDAP.


6fe68c1987cc4974b52ae34caef5a73d.png



В закладке Дополнительно можно по вкусу добавить фильтров поиска, например: (objectcategory=person) или (objectclass=*). Весь список прилагается.


Итого


Если сравнивать Kontact/KMail и Thunderbird, то первый вчистую выигрывает по пригодности в офисной среде. Thunberdird имеет не лучшую поддержку IMAP, однако проблемы возникают именно с просмотром и изменений папок Office 365. Microsoft в свою очередь не может похвастаться приверженностью ИТ стандартам, поэтому возможно, что все дело в кривой имплементации IMAP на стороне сервера. КOrganizer также имеет больше функций, чем расширение Lightning. Благодаря Akonadi, KDEPIM имеет очень удобный фоновый процесс приема почты, регистрации событий и оповещений.


С другой стороны за всем этим надо следить, чтобы карточный домик KDEPIM не ломался после каждого значительного апгрейда. 2 года назад его перевели на KDE Frameworks 5 и Qt 5, но еще далеко не на всех дистрибутивах Linux он присутствует. Когда появится на Gentoo поставлю его первым делом и заодно проверю свою учетную запись на BugZilla.


Thunderbird подкупает тем, что его легко поставить, настроить и обслуживать, а все то чего не хватает, можно сделать на веб клиенте. S/MIME просто работает, а в KMail, это что-то с чем-то. Думайте сами, решайте сами. Как говорит машинный переводчик, Linux — это все про выбор.


Если будет интересно, в следующий раз расскажу про молодой да ранний почтовый клиент Trojita, тяжеловесный Evolution и еще по-мелочам.

Комментарии (8)

  • 30 марта 2017 в 23:52

    0

    Bat?
  • 31 марта 2017 в 01:22

    +1

    Как показала практика, Thunderbird весьма неплох.
    • 31 марта 2017 в 07:54

      0

      Одни плюсы.
  • 31 марта 2017 в 07:54

    0

    Всем устраивает Thunderbird, за исключением пары вещей. Не сохраняет из входящих адреса в контакты. Это чертовски неудобно, когда пытаешься написать письмо на ящик, на который еще не отправлял писем, но адресат присутствует во входящих письмах, а Thunderbird — ни автодополнения, ничего. Нашел один рабочий экстеншен, позволяющий агрегировать из любой папки адреса контактов, но это надо запускать ручками. Вот это единственное, что сильно напрягает.
    Второе — это необходимость ставить экстеншен для системного трея (Firetray), который работает не без проблем касательно сворачивания и разворачивания окон.

    Еще есть очень функциональный, но легковесный Claws mail, кроссплатформенный. Настроить можно очень многое, включая интерфейс. Но на каком-то обновлении, около года назад, очень сильно фризился интерфейс при выгребке почты с нескольких подключенных email-лов. Как сейчас — не знаю, нужно проверять.

    KMail мне совершенно не вкатил, хотя сижу под KDE. Очень громоздкая и тяжеловесная сущность, с кучей зависимостей и, отнюдь, далеко не быстрой работой даже с SSD винта на хорошем железе.

  • 31 марта 2017 в 08:02

    0

    Я использую Evolution, там без всяких дополнительных телодвижений все работает. С установкой точно проще.
  • 31 марта 2017 в 08:35

    0

    Outlook web app помоему делает все и даже больше.
    Даже на виндовс машинах можно использовать опен офис + ова и тем самым экономить не малую сумму на лицензиях на мс офис.
  • 31 марта 2017 в 09:09

    0

    Для громоптица есть отличная штука ExQuilla она платная, но работает весьма хорошо.
  • 31 марта 2017 в 09:16

    0

    С Thunderbird имхо вы перемудрили. Во-первых, Lightning с 38 версии ставить не нужно, он идет в сборке. У меня davmail + «Exchange EWS Provider» extension прекрасно заменяют Outlook (включая календарь, инвайты — все прекрасно работает), кроме адресной книги, да она и не нужна — все с кем переписываешься в организации и так есть в адресной книге, а новых людей можно один раз в год найти вручную как-то.

© Habrahabr.ru