Устанавливаем связку Postfix + Exchange::Журнал СА 7.2005
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

Событие  

В банке рассола ждет сисадмина с полей фрактал-кукумбер

Читайте впечатления о слете ДСА 2024, рассказанные волонтером и участником слета

 Читать далее...

Организация бесперебойной работы  

Бесперебойная работа ИТ-инфраструктуры в режиме 24/7 Как обеспечить ее в нынешних условиях?

Год назад ИТ-компания «Крок» провела исследование «Ключевые тренды сервисного рынка 2023». Результаты

 Читать далее...

Книжная полка  

Читайте и познавайте мир технологий!

Издательство «БХВ» продолжает радовать выпуском интересных и полезных, к тому же прекрасно

 Читать далее...

СУБД PostgreSQL  

СУБД Postgres Pro

Сертификация по новым требованиям ФСТЭК и роль администратора без доступа к данным

 Читать далее...

Критическая инфраструктура  

КИИ для оператора связи. Готовы ли компании к повышению уровня кибербезопасности?

Похоже, что провайдеры и операторы связи начали забывать о требованиях законодательства

 Читать далее...

Архитектура ПО  

Архитектурные метрики. Качество архитектуры и способность системы к эволюционированию

Обычно соответствие программного продукта требованиям мы проверяем через скоуп вполне себе понятных

 Читать далее...

Как хорошо вы это знаете  

Что вам известно о разработках компании ARinteg?

Компания ARinteg (ООО «АРинтег») – системный интегратор на российском рынке ИБ –

 Читать далее...

Графические редакторы  

Рисование абстрактных гор в стиле Paper Cut

Векторный графический редактор Inkscape – яркий представитель той прослойки open source, с

 Читать далее...

День сисадмина  

Учите матчасть! Или как стать системным администратором

Лето – время не только отпусков, но и хорошая возможность определиться с профессией

 Читать далее...

День сисадмина  

Живой айтишник – это всегда движение. Остановка смерти подобна

Наши авторы рассказывают о своем опыте и дают советы начинающим системным администраторам.

 Читать далее...

Виртуализация  

Рынок решений для виртуализации

По данным «Обзора российского рынка инфраструктурного ПО и перспектив его развития», сделанного

 Читать далее...

Книжная полка  

Как стать креативным и востребованным

Издательский дом «Питер» предлагает новинки компьютерной литературы, а также книги по бизнесу

 Читать далее...

Книжная полка  

От создания сайтов до разработки и реализации API

В издательстве «БХВ» недавно вышли книги, которые будут интересны системным администраторам, создателям

 Читать далее...

Разбор полетов  

Ошибок опыт трудный

Как часто мы легко повторяем, что не надо бояться совершать ошибки, мол,

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 6143
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 6856
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 4139
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 2978
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 3781
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 3789
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 6283
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 3134
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 3434
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 7246
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 10616
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 12336
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 13969
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 9100
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 7053
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 5362
Комментарии: 3
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 4594
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 3402
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 3128
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 3378
Комментарии: 0
Рецензия на книгу «MongoDB в действии»

 Читать далее...

02.12.2013г.
Просмотров: 2999
Комментарии: 0
Не думай о минутах свысока

 Читать далее...

Друзья сайта  

 Устанавливаем связку Postfix + Exchange

Архив номеров / 2005 / Выпуск №7 (32) / Устанавливаем связку Postfix + Exchange

Рубрика: Администрирование /  Электронная почта

 ВЛАДИМИР АГАПОВ

Устанавливаем связку Postfix + Exchange

Перед нами нетривиальная задача. Требуется организовать внутрикорпоративный документооборот на базе MS Exchange, оставив пользователям возможность общаться по электронной почте с внешним миром. И при этом не уменьшить уровень внутренней безопасности. Предлагаем вам быстрое и эффективное решение данной задачи

Итак, вы – системный администратор. Большой конторы или маленькой, принципиального значения не имеет. Равно как и то, настроена ли у вас почтовая система или это только предстоит сделать в ближайшее время. Главное другое: однажды вас вызывает к себе начальник и говорит: «хочу». Хочу, чтобы у нас все было как у людей: и книга адресная единая, корпоративная, и планировщик задач, и календарь событий на месяцы и годы, ну, в общем, все, что только он где-то слышал или, не дай бог, видел. Озадаченные этим вопросом, вы возвращаетесь к себе, попутно думая, а что же проще: настроить The Bat на работу с LDAP и найти какие-нибудь утилиты, позволяющие получить данный функционал, или снести The Bat со всех машин, и поставить туда Outlook, закрыв глаза на резко упавшую в этом случае безопасность? Подумав с полчасика, приходим к выводу: придется ставить Outlook, и не только его, что было бы только половиной беды, но и Exchange в качестве почтового сервера. Поскольку начальнику может прийти в голову и еще что-нибудь неприличное, типа внутрикорпоративного документооборота. Вместо MS Exchange можно, конечно, использовать и OpenXchange, Hula, Opengroupware и пр. Но мы остановимся на первом варианте.

Скорее всего, у вас совершенно нет желания вывешивать наружу машину с установленной на ней ОС Windows и Exchange в придачу. Значит, придется разделить функции внешнего и внутреннего почтовых серверов. На внутреннем пусть себе крутится Exchange, а на внешнем поставим UNIX-подобную операционную систему и, например, Postfix в качестве почтового сервера. Вот из этих предпосылок и будем исходить.

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

В результате всех размышлений получается примерно следующий список задач:

  1. Установка на все рабочие машины Microsoft Office Outlook в качестве почтового клиента.
  2. Установка на первый сервер (exchange) ОС Windows и Microsoft Exchange (в данном документе будет подразумеваться версия 2003).
  3. Установка на второй сервер (gate) ОС из семейства UNIX и Postfix (FreeBSD 5.3 и postfix 2.2 соответственно).
  4. Настройка Exchange для работы с Postfix
  5. Настройка Postfix для работы с Exchange
  6. Дополнительное конфигурирование для поддержки alias и прочего.

Пункты с 1-го по 3-й выходят за рамки обсуждения данной статьи, поэтому детально описывать их я не буду, а более подробно остановлюсь на пунктах 4, 5 и 6.

Одно из решений задачи уже было предложено в журнале [1]. Мы же в отличие от него будем использовать вариант проверки Postfix наличия почтового аккаунта в Windows-домене перед приемом почты.

Настраиваем Exchange для работы совместно с Postfix

Для начала определимся, что именно мы хотим получить от Exchange в данной конфигурации:

  • Он должен получать почту, которую будет перенаправлять ему Postfix и доставлять ее в соответствующие почтовые ящики пользователей.
  • Почта пользователей, отправляемая за пределы домена, должна попадать в Exchange и пересылаться им для дальнейшей обработки на внутренний интерфейс gate для дальнейшей отсылки ее в мир уже Postfix.
  • В связи с тем, что название Windows-домена в AD часто не совпадает с почтовым доменом, необходимо включить маскарадинг.
  • Во избежание локальных эпидемий внутреннюю почту также необходимо проверять на вирусы.

Приступим к настройке Exchange

Запускаем Exchange System Manager:

  • Разворачиваем «Administrative Group  company  Servers  Exchange  protocols SMTP». Открываем свойства default. На закладке «Access» выбираем «Relay Restrictions» и записываем туда IP-адрес нашего Postfix-сервера. В некоторых случаях может потребоваться указать подсети целиком. Например, в случае использования приложений, напрямую общающихся с SMTP-сервером.
  • Там же, на закладке «Delivery», выбираем «Advanced» и указываем в поле «Smart Host» IP-адрес Postfix-сервера в квадратных скобках.
  • Здесь же, в поле «masquerade domain», указываем наш почтовый домен, для того чтобы Exchange отправлял всю почту от имени этого домена.
  • Выбор антивирусного сканера под Exchange я оставляю за вами, поскольку почти все крупные производители антивирусных продуктов имеют в своих линейках такие решения.

Этих настроек на данный момент достаточно. Более детальную настройку и конфигурирование оставляю на ваше усмотрение.

Настраиваем Postfix для работы с Exchange

Определимся, что мы ожидаем от Postfix:

  • Принимать почту, пересылаемую ему Exchange и отправлять ее дальше в мир.
  • Проверять всю входящую и исходящую почту на вирусы.
  • Проверять всю входящую почту на наличие спама и выставлять ей соответствующие балы.
  • Для экономии трафика необходимо проверять, есть ли получатель входящего письма в нашем домене, и в зависимости от результата либо принимать, либо отвергать письмо.
  • Пересылать все прошедшие проверку входящие письма на Exchange.

Прежде всего нам потребуется установить Postfix. Об этом достаточно много имеется информации в Интернете, поэтому остановлюсь лишь на главных моментах. У нас есть два варианта установки:

  • просто пересылать всю входящую почту внутрь сети, не задумываясь, есть ли такой почтовый пользователь;
  • предварительно проверять наличие пользователя в AD и в случае его отсутствия не принимать почтовое сообщение.

По первому варианту вы можете посмотреть уже упоминавшуюся здесь статью [1]. Однако я предпочел остановиться на втором варианте. Это позволит нам существенно сэкономить трафик и поможет уменьшить количество приходящего спама.

Для начала установим LDAP-client.

# cd /usr/ports/net/openldap22-client/
# make install clean

Далее устанавливаем Postfix с поддержкой LDAP. Если вы собираете его из портов, отметьте соответствующий пункт, в другом случае вам потребуется указать это явно:

# gmake tidy
# gmake makefiles CCARGS="-I/usr/local/include -DHAS_LDAP" AUXLIBS="-L/usr/local/lib \
-R/usr/local/lib -lldap -L/usr/local/lib -R/usr/local/lib -llber"

# gmake install

Приступаем к конфигурированию Postfix

Для начала установите все минимально необходимые значения. Что именно, можно узнать в документации на Postfix и в Интернете.

  • Добавим в значение переменной «mynetworks» IP-адрес Exchange-сервера (например, 192.168.1.2/32).
  • В качестве антивирусного сканера я использую ClamAV. Как его подключить к Postfix, можно прочитать в статье [2].
  • Как подключить SpamAssassin, можно прочитать там же.
  • Для проверки наличия учетной записи будем использовать LDAP-запросы к AD. Именно для этого мы и собирали Postfix с поддержкой LDAP. Внесем следующие записи в main.conf:

# Имя Windows-домена
ldapmap_search_base = dc=office, dc=company, dc=ru

 # IP-адрес PDC
ldapmap_server_host = 192.168.16.1

# LDAP-порт
ldapmap_server_port = 3268
ldap_timeout = 60
ldapmap_query_filter = (&(proxyAddresses=smtp:%s)(|(objectClass=user)(objectClass=group)(objectClass=contact)))
ldapmap_result_filter = %s
ldapmap_result_attribute = canonicalName
ldapmap_special_result_attribute =
ldapmap_scope = sub
ldapmap_bind = yes
ldapmap_bind_dn = ldapquery@office.company.ru
ldapmap_bind_pw = LdaPassworD
ldapmap_cache = no
ldapmap_dereference = 0
ldapmap_domain = office.company.ru
ldapmap_debuglevel = 0
virtual_mailbox_maps = ldap:ldapmap
virtual_mailbox_domains = company.ru

Для того чтобы у Postfix были права на выборку информации о пользователях домена, заведем в домене нового пользователя ldapquery с паролем LdaPassworD.

В результате данной процедуры Postfix будет опрашивать домен на наличие пользователя с заведенным почтовым ящиком типа user@company.ru. В случае положительного ответа письмо будет приниматься для дальнейшей доставки, в случае отрицательного – отвергаться с кодом, указанным в переменной unknown_local_recipient_reject_code.

Чтобы Postfix после всех проверок отправлял письмо Exchange, добавим в main.conf:

virtual_transport = hash:/etc/postfix/virtual_transport
transport_maps = hash:/etc/postfix/virtual_transport

и создадим файл /etc/postfix/virtual_transport:

company.ru               smtp:[192.168.16.5]

где 192.168.16.5 – IP-адрес Exchange-сервера, а company.ru – домен, всю приходящую для которого почту следует пересылать на другой сервер. Не забываем после создания или редактирования этого файла делать:

postmap /etc/postfix/virtual_transport

Дополнительное конфигурирование

Для полноценной работы нам, возможно, потребуется еще несколько штрихов, а именно:

  • Создать группы рассылок на Exchange. Для этого необходимо сделать следующее:
  • Создать группу распределения.
  • Создать почтовый аккаунт для этой группы.
  • Добавить в эту группу всех, кто должен быть подписан на эту рассылку.
  • Разобраться, как можно сделать алиасы в Exchange. Для этого можно использовать два варианта:
  • Создать в Active Directory дополнительные SMTP-записи для каждого пользователя, которому необходимо прописать alias. Этот вариант проще и предпочтительнее.
  • Там же можно создать запись типа CC для тех же целей.

На этом можно считать минимально необходимую настройку для работы данной связки законченной. Все возможные ошибки и проблемы всегда возможно отследить в логах postfix, где все достаточно информативно пишется. Так же для обсуждения этой статьи и всех дополнительных вопросов существует специально созданный топик на форуме [3].

Данный вариант является рабочим, проверен на офисе компании. Но у него есть как минимум один недостаток – он потенциально не защищен от атак типа DoS на AD, в случае большого количества одновременных внешних SMTP-сессий. Чтобы этого избежать, можно либо настроить в Postfix ограничения на количество одновременных сессий, либо скриптом по cron забирать информацию из AD и складывать ее на машине с Postfix. Но это тема уже совсем другой статьи.

  1. Полянский И. Postfix как шлюз для Exchange. – Журнал «Системный администратор», №5, 2004  г. – 34-37 с (http://samag.ru/archive/article/280).
  2. Почтовая система на базе Postfix, PostgreSQL, с фильтрацией вирусов и спама на FreeBSD 5.3 – www.deepnet.ru, раздел «Статьи».
  3. http://forum.deepnet.ru.

Комментарии
 
  10.12.2009 - 05:33 |  anonymous

ll

  25.12.2009 - 01:03 |  anonymous

Спасибо !!!
Статья помогла быстрее разобраться
А главное сэкоомила время, которого так нехватает

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru