ZImbra: нетривиальная маршрутизация почты - часть 1

  • LDAP
Zimbra — замечательный Collaboration Suite, но с точки зрения тонкой настройки собственно почтового сервиса MTA (в качестве которого, как мы все знаем, используется Postfix) её веб-интерфейс сильно хромает, а местами так и просто обескураживает.
Например, есть у меня Zimbra на внутреннем почтовике, она полностью закрыта от внешнего доступа и всю исходящую корреспонденцию шлёт внешнему серверу-шлюзу, от него же и принимает оную. Плюс настроен Split-Domain (как именно — см. Split Domain: Configuring Zimbra as the Secondary System), потому что пока на внешнем шлюзе есть нехилый кусок нашего корпоративного домена. Ну да это не суть важно, а важно то, что в моём случае Zimbra по дефолту не может отправлять любую почту, кроме адресованной локальным получателям, куда-либо, кроме того самого внешнего шлюза.
И всё было бы хорошо, если бы в дополнение к собственному домену Zimbra, назовём его domain.com, не появился ещё один внутренний домен с именем lists.domain.com, хостящийся буквально по соседству (VLAN/подсетка совпадают, так что не требуется дополнительная маршрутизация). И вот тут дефолтная конфигурация уже перестала меня устраивать: ведь в этот «соседний» домен тоже нужно каким-то образом отправлять почту, но если оставить всё как есть, то получится абсурдная ситуация: сначала Zimbra будет отправлять сообщение в lists.domain.com через интернет-шлюз на почтовый шлюз, а затем последний уже отправит это письмо обратно через интернет-шлюз… почти туда же, откуда оно и ушло. Таким образом, мы получили бы маршрутизацию почты в lists.domain.com аля «путешествие Афанасия Никитина за три моря» и массу потенциального геморроя.

Читать дальше →

Поиск по LDAP на Delphi

Последний на сегодня метод поиска по LDAP. Небольшая программа на Turbo Delphi 2006, без использования сторонних компонентов. Может искать по части ФИО пользователя, сворачиваться в трей, создавать письмо по клику на почтовый адрес. Все :)
Скриншот

Читать дальше →

[PHP] Поиск по LDAP в браузере

  • LDAP
Еще один скрипт поиска по LDAP с любого компьютера в сети. Скрипт написан на PHP. Не стал прикручивать в выдаче результата красивое оформление, если потребуется, его можно взять из доработанной версии этого же скрипта, который я выкладывал вчера.
А этот скрипт в браузере выглядит примерно так:
Читать дальше →

Поиск по LDAP в браузере с использованием jQuery

  • LDAP
Потребовался мне быстрый поиск по LDAP с любого компьютера в распределенной сети c возможностью выбора нескольких адресатов для отсылки письма. В итоге написал скрипт с использованием jQuery, который позволяет делать выборки из базы без перезагрузки страницы, манипулировать почтовыми адресами для отсылки. Выборку делает php программа, которая возвращает выборку данных в основной html документ. В итоге в браузере выглядит примерно так:
ldap search
Читать дальше →

Как правильно "скормить" Openfire аккаунты Zimbra

  • LDAP
Интеграция Openfire и Zimbr'ы сводится к стандартной настройке Openfire+LDAP, но есть один момент, характерный именно для Zimbra: это используемый LDAP-фильтр.

Он должен отсеивать ненужное по следующим критериям:
— Берутся только учётки Zimbra, соответственно objectClass=zimbraAccount;
— Учётная запись должны быть активной, соответственно zimbraAccountStatus=active;
— Нужно проверить, не системный ли ресурс данный аккаунт (всякие там спамы, хамы): для этого есть атрибут zimbraIsSystemResource и проверка !(zimbraIsSystemResource=TRUE);
— Нужно определить, кто может пользоваться Jabber'ом, а кто вовсе тестовый Вася Пупкин и ему не положено. Для этого придуман zimbraFeatureIMEnabled и проверка zimbraFeatureIMEnabled=TRUE

Читать дальше →

Выводим список контактов организации из Active Directory на сайт компании

Простенькая задача: есть компания, внутри которой развернута служба каталогов Active Directory от Microsoft. Нам хочется — что при открытии в браузере ссылки contacts.mycompany.local — выводился список сотрудников компании с разбивкой по отделам.
Предполагается, что в компании у каждого сотрудника есть своя учетная запись в Active Directory, у которой скудно-бедно заполнены хотя бы основные атрибуты, такие ФИО сотрудника, адрес его электронной почты, номер телефона, должность, отдел. Имя домена нашей компании — mycomany.local.

Для примера, будет выбран такой макет компании:


Читать дальше →