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

Автор: Пользователь скрыл имя, 26 Марта 2012 в 22:28, дипломная работа

Описание работы

Основное предназначение электронной почты – дать пользователям возможность общаться друг с другом. Сам процесс общения происходит путем пересылки текстовых и прочих файлов, подобно тому, как при обычной почтовой переписке люди обмениваются письмами, открытками и прочей корреспонденцией. Уникальность электронной почты как сетевого сервиса, состоит в том, что за счет имеющихся шлюзовых соединений между различными сетями почта может доставляться практически в любые и из любых мировых сетей, объединяя их в единое сетевое пространство.

Содержание

Введение
Техническое задание
Введение
1 Основание для разработки
2 Источники разработки
3 Технические требования
3.1 Состав изделия
3.2 Технические параметры
3.3 Принцип работы
3.4 Требования к надежности
3.5 Условия эксплуатации
3.6 Требования безопасности
4 Экономические показатели
5 Порядок испытаний
1 Анализ программных средств и технологий
1.1 Принципы работы электронной почты
1.1.1 Создание почтового сообщения
1.1.2 Отправка почтового сообщения
1.1.3 Протокол SMTP
1.1.4 Транспортировка сообщений
1.1.5 Доставка почтовых сообщений
1.1.6 Форматы серверных почтовых хранилищ
1.1.7 Организация доступа к серверным хранилищам
1.1.8 Получение сообщений
1.2 Технология DNS
1.3 Способы организации базы данных сообщений
1.4 Способы организации безопасности среды
1.4.1 Организация безопасности средствами операционной системы
1.4.2 Повышенная безопасность с использованием антивирусной защиты
1.4.3 Защита переписки криптографическими средствами
1.5 Технология кластеризации
1.6 Требования к программной части
1.7 Требования к аппаратной части
2 Проектирование корпоративной почтовой системы
2.1 Обоснование выбора DNS-сервера на основе BIND
2.2 Обоснование выбора агента передачи почты Postfix
2.2.1 Основные подсистемы Postfix
2.2.2 Демоны Postfix
2.2.3 Подсистема обработки входящих сообщений
2.2.4 Подсистема доставки почтовых сообщений
2.2.5 Управление очередями сообщений
2.2.6 Вспомогательные утилиты
2.2.7 Описание основных конфигурационных файлов Postfix
2.3 Сервер доставки почты MDA Dovecot
2.4 Обоснование выбора службы каталогов OpenLDAP в качестве базы данных
2.5 Обеспечение безопасной работы в почтовой системе
2.6 Организация кластера на основе Linux-HA
2.6.1 Программный пакет DRBD
2.6.2 Программный пакет Heartbeat
2.7 Обоснование выбора оборудования для почтового сервера
2.8 Обоснование выбора программных продуктов используемых в почтовой системе
3 Реализация корпоративной почтовой системы
3.1 Этапы установки и настройки компонент почтвой системы
3.1.1 Установка и настройка DNS-сервера BIND
3.1.2 Установка и конфигурация компонентов почтового сервера
3.2 Тестирование почтовой системы
3.2.1 Тестирование DNS-сервера
3.2.3 Тестирование спам-фильтра
3.2.4 Тестирование SSL
4 Оценка показателей качества и расчет общей стоимости владения почтовой системой
4.1 Оценка показателей качества
4.2 Расчет общей стоимости владения почтовой системой
4.3 Расчет стоимости теоретического проекта вычислительной системы
4.4 Расчет стоимости технического проекта вычислительной системы
4.5 Расчет стоимости внедрения вычислительной системы
4.6 Расчет стоимости эксплуатации вычислительной системы
4.7 Общая стоимость владения вычислительной системой
5 Раздел безопасности жизнедеятельности
5.1 Требования безопасности при эксплуатации видеодисплейных терминалов (ВДТ) и персональных электронно- вычислительных машин (ПЭВМ)
5.2 Охрана труда для операторов и пользователей персональных электронно-вычислительных машин (ПЭВМ)
5.2.1 Общие положения
5.2.2 Требования безопасности перед началом работы
5.2.3 Требования безопасности во время работы
5.2.4 Требования безопасности в аварийных ситуациях
5.2.5 Требования безопасности после окончания работы
5.3 Выводы по разделу
Заключение
Список используемой литературы
Приложение А
Приложение Б
Приложение В

Работа содержит 1 файл

Диплом.doc

— 1.47 Мб (Скачать)

Далее та же самая операция, но протоколу IMAP, описанному в RFC 3501 (INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4rev1). Работа протокола IMAP подразумевает, что все сообщения даже после прочтения хранятся на сервере с пометкой о том, что они прочитаны, соответственно пользователи могут работать с одним и тем же почтовым ящиком с разных рабочих станций с помощью различных MUA одновременно. Пример использования протокола IMAP с помощью telnet приведен ниже.

# telnet localhost 143

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE HREAD=ORDEREDSUBJECT

THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready.

Copyright 1998-2004 Double Precision, Inc.

See COPYING for distribution information.

1 LOGIN "user1" "pwd1"

1 OK LOGIN Ok.

2 SELECT "INBOX"

* FLAGS (\Draft \Answered \Flagged \Deleted \Seen \Recent)

* OK [PERMANENTFLAGS (\* \Draft \Answered \Flagged \Deleted \Seen)] Limited

* 1 EXISTS

* 1 RECENT

* OK [UIDVALIDITY 1131530433] Ok

* OK [MYRIGHTS "acdilrsw"] ACL

2 OK [READ-WRITE] Ok

3 FETCH 1:* (FLAGS)

* 1 FETCH (FLAGS (\Recent))

3 OK FETCH completed.

4 FETCH 1 (UID RFC822.SIZE FLAGS BODY.PEEK[])

* 1 FETCH (UID 1 RFC822.SIZE 443 FLAGS (\Recent) BODY[] {443}

Return-Path: <user1@domain1.com>

Received: from mail.domain1.com (mail.domain1.com [xxx.xxx.xxx.xxx])

        by mail.domain2.com (8.13.5/8.13.1) with ESMTP id j9NCQqTZ012628

        for <user2@domain2.com>; Sun, 23 Oct 2005 16:26:52 +0400 (MSD)

        (envelope-from user1@domain1.com)

Received: from host1.domain1.com (host1.domain.com [xxx.xxx.xxx.xxx])

        by mail.domain1.com (Postfix) with ESMTP id CEA8840F0

        for <user2@domain2.com>; Sun, 23 Oct 2005 16:33:25 +0400 (MSD)

From: user1@domain1.com

To: user2@domain2.com

Subject: Test Message

Message-Id: <20051023123325.CEA8840F0@mail.domain1.com>

Date: Sun, 23 Oct 2005 16:33:25 +0400 (MSD)

 

Hello!

)

4 OK FETCH completed.

5 STORE 1 +FLAGS (Seen)

* FLAGS (Seen \Draft \Answered \Flagged \Deleted \Seen \Recent)

* OK [PERMANENTFLAGS (Seen \* \Draft \Answered \Flagged \Deleted \Seen)] Limited

* 1 FETCH (FLAGS (\Recent Seen))

5 OK STORE completed.

6 CLOSE

6 OK mailbox closed.

7 LOGOUT

* BYE Courier-IMAP server shutting down

7 OK LOGOUT completed

Connection closed by foreign host.

 

После аутентификации средствами команды LOGIN следует переход в каталог IMAP INBOX с помощью SELECT "INBOX", при этом получаем количество существующих и еще не прочитанных сообщений. С помощью команды FETCH 1:* (FLAGS) можно читать список всех сообщений с флагами, а с помощью FETCH 1 (UID RFC822.SIZE FLAGS BODY.PEEK[]) - первое (и единственное) сообщение. Затем сообщение помечается как прочитанное командой STORE 1 +FLAGS (Seen), закрывается почтовый ящик и отключаемся от сервера - для этого мы используем CLOSE и LOGOUT.

Функциональность POP3, а особенно IMAP приведенными командами не ограничивается. Например, IMAP включает в себя также механизм подписки на каталоги IMAP, возможность совместной работы с общими каталогами под различными учетными записями (shared folders), поиск в каталогах средствами сервера, частичную загрузку сообщений (в примере мы запросили все сообщение целиком, а могли бы запросить только некоторые интересующие нас заголовки) и т.д. POP3 и IMAP поддерживают шифрование, причем эта поддержка, как и в случае SMTP, возможна в 2 вариантах:

­         использование отдельных портов, на которых шифруется весь трафик (995 для POP3 и 993 для IMAP);

­         механизм TLS: используются стандартные порты, но после подключения MUA может инициировать шифрование с помощью команды STARTTLS.

Существуют специализированные MUA, предназначенные для получения почтовых сообщений по протоколам POP3/IMAP и отправки их дальше в автономном режиме. Такой механизм может быть полезен для сбора почтовой корреспонденции в один почтовый ящик из разных ящиков в разных доменах. Как и использование для MTA внешнего релея, этот механизм незаменим для почтового сервера, не имеющего постоянного подключения к интернет, постоянного реального ip-адреса и dns-имени, и подключающегося к провайдеру периодически для приема и отправки почты.

К числу автономных MUA относятся:

1. Getmail - после получения почты по POP3/IMAP он сохраняет ее в серверное хранилище (mbox или Maildir) либо передает ее какому-нибудь фильтрующему MDA общего назначения (Procmail или Maildrop).

2. Fetchmail - после получения почты по POP3/IMAP он пересылает ее указанному в конфигурационном файле MTA.

1.2 Технология DNS

DNS (Domain Name System – система доменных имён) – компьютерная распределённая система для получения информации о доменах. Чаще всего используется для получения IP-адреса по имени хоста (компьютера или устройства), получения информации о маршрутизации почты, обслуживающих узлах для протоколов в домене. На рисунке 1.3 приведена структура доменного имени, список доменных имен трёх уровней, из которых суммируется полное доменное имя.

DNS обладает следующими ключевыми характеристиками:

­         распределённость администрирования. Ответственность за разные части иерархической структуры несут разные люди или организации;

­         распределённость хранения информации. Каждый узел сети в обязательном порядке должен хранить только те данные, которые входят в его зону ответственности и (возможно) адреса корневых DNS-серверов;

Рисунок 1.3 – Пример структуры доменного имени

­         кеширование информации. Узел может хранить некоторое количество данных не из своей зоны ответственности для уменьшения нагрузки на сеть;

­         иерархическая структура, в которой все узлы объединены в дерево, и каждый узел может или самостоятельно определять работу нижестоящих узлов, или делегировать (передавать) их другим узлам;

­         резервирование. За хранение и обслуживание своих узлов (зон) отвечают (обычно) несколько серверов, разделённые как физически, так и логически, что обеспечивает сохранность данных и продолжение работы даже в случае сбоя одного из узлов.

Схема взаимодействия программы пользователя с локальным и удаленными DNS-серверами показана ниже на рисунке 1.4.

DNS важна для работы Интернета, так как для соединения с узлом необходима информация о его IP-адресе, а для людей проще запоминать буквенные (обычно осмысленные) адреса, чем последовательность цифр IP-адреса. В некоторых случаях это позволяет использовать виртуальные серверы, например HTTP-серверы, различая их по имени запроса. Первоначально преобразование между доменными и IP-адресами производилось с использованием специального текстового файла hosts, который составлялся централизованно и автоматически рассылался на каждую из машин в своей локальной сети. С ростом Сети возникла необходимость в эффективном, автоматизированном механизме, которым и стала DNS.

Рисунок 1.4 – Структура взаимодействия с серверами имен

Доменное имя является частью почтового адреса, поэтому без этого сервиса не организовать почтовый сервер вообще. Для реализации DNS-сервера есть популярный свободный проект BIND.

BIND – это пакет, содержащий программное обеспечение для построения DNS-сервера.

1.3 Способы организации базы данных сообщений

LDAP (Lightweight Directory Access Protocol — «облегчённый протокол доступа к каталогам») — это сетевой протокол для доступа к службе каталогов X.500, разработанный IETF как облегчённый вариант разработанного ITU-T протокола DAP. LDAP — относительно простой протокол, использующий TCP/IP и позволяющий производить операции авторизации (bind), поиска (search) и сравнения (compare), а также операции добавления, изменения или удаления записей.

Active Directory – служба каталогов, созданная корпорацией Microsoft для операционных систем семейства Windows NT. Active Directory позволяет администраторам использовать групповые политики (GPO) для обеспечения единообразия настройки пользовательской рабочей среды, развёртывать ПО на множестве компьютеров (через групповые политики или посредством «Microsoft Systems Management Server 2003» или «System Center Configuration Manager»), устанавливать обновления ОС, прикладного и серверного ПО на всех компьютерах в сети.  Active Directory хранит данные и настройки среды в централизованной базе данных. Сети Active Directory могут быть различного размера: от нескольких сотен до нескольких миллионов объектов.

MySQL — свободная система управления базами данных (СУБД). Принадлежит корпорацие Oracle. Распространяется под GNU General Public License или под собственной коммерческой лицензией. MySQL является решением для малых и средних приложений. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы. Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц. Благодаря открытой архитектуре и GPL-лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц.

Корпоративная почтовая система требует быстрого и централизованного доступа пользователей к базе данных сообщений, а также доступа администратора к базе. Поэтому целесообразно использовать службу каталогов с иерархической структурой. Лучшим решением является свободная реализация LDAP-сервиса OpenLDAP.

1.4 Способы организации безопасности среды

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

Принцип построения системы Windows и Linux отличаются в корне. Так как в системе Windows гибридное ядро, означает, что в пространстве ядра запускать несущественные части программ. Также в него может быть интегрировано слишком много компонентов, например, таких как браузер или брандмауэр. При появлении в них изъянов связанных с безопасностью, это может поставить под угрозу всю систему. Архитектура Linux первым делом основывается на модульности программ, так при выходе из строя или появлении изъянов в безопасности, это существенно не повлияет на систему и другие программы. Помимо этого в свободных системах существует жесткое ограничение прав пользователей и групп на чтение, запись и выполнение приложений. В системе Windows полномочия администратора и обычного пользователя настраиваются минимально, поэтому свобода действий может привести к появлению уязвимостей и несанкционированному проникновению опасного программного обеспечения через интернет или со съемных носителей. Отличительной особенностью работы программ на Linux является их выполнение в изолированном окружении по средствам операции chroot. Программа, запущенная с изменённым корневым каталогом, будет иметь доступ только к файлам, содержащимся в данном каталоге.

1.4.2 Повышенная безопасность с использованием антивирусной защиты

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

ClamAV – переносимый POSIX-совместимый код, распространяется по лицензии GNU/GPL. Имеет встроенную поддержку Mbox, Maildir и raw-форматов почтовых сообщений, есть поддержка проверки архивов RAR 2.0, ZIP, GZIP и BZIP2. Может проверять файлы непосредственно при работе в сети или при поступлении сообщений в очередь. Утилита обновления баз вирусов с поддержкой цифровой подписи. Обновления выходят несколько раз в день.

Dr. Web – очень простой и быстрый кроссплатформенный антивирус, при работе с почтовыми файлами замедляет работу системы, так как почтовая база принимается им как файловый контейнер, его проверка становится большой нагрузкой для компьютера. Обновления выходят по мере поступления угроз, обычно несколько раз в день. Распространяется по shareware лицензии.

Kaspersky – обеспечивает хорошую комплексную защиту. Обновления доступны каждый час, но является проприетарным ПО, работает под ОС семейства Windows.

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

1.4.2 Защита от нежелательной корреспонденции

Спам (spam) — массовая рассылка коммерческой, политической и иной рекламы или иного вида сообщений (информации) лицам, не выражавшим желания их получать.

С позиции организации текста электронного письма спам может содержать в поле «Subject» информацию о том, что представляет из себя данное сообщение (например, что оно содержит рекламную информацию), а в теле письма — указание, в связи с чем отправитель обращается к получателю без предварительного на то согласия, а также сведения о том, какие действия должен предпринять получатель, чтобы в дальнейшем не получать сообщений от отправителя, т.е., содержать информацию об электронном адресе, ресурсе в сети Интернет или телефоне (обычно это toll-free phone number), которые предназначены для отписки (прекращения подписки) от незапрашиваемой информации (функция «opt-out»).

Эти признаки (указание в поле Subject и наличие механизма отписки) свидетельствуют о том, что отправитель понимает, что предлагаемая им информация навязывается получателям, и что он добросовестно пытается снизить возможное негативное воздействие на них. Но очень часто спамер не только не испытывает желания снизить дискомфорт от спама, но и отказывается от ответственности за свои действия путем фальсификация адреса отправителя, использования адреса третьего лица и фальсификации заголовков сообщения. Делается все это для того, чтобы максимально затруднить возможность установления личности отправителя и принятия против него соответствующих мер.

В определение спама часто включают слова «рекламная» или «коммерческое предложение». Это не совсем верно — значительная часть спама не преследует рекламных или коммерческих целей. Есть рассылки политического спама, есть «благотворительные» спамерские письма, есть мошеннические («нигерийские», фишинговые), «цепочечные письма» — письма с просьбой переслать знакомым (страшилки, «письма счастья»), вирусные и прочие, не являющиеся коммерческим предприятием.

Информация о работе Корпоративная почтовая система на базе высокодоступного кластера