Перейти к содержанию
  • ArcheRAWG
    ArcheRAWG

    Почтовый сервер своими руками. Windows версия

    В 21-м веке, в эре цифровых технологий, почти всё пользуются почтой. Я не имею ввиду "черепашью" почту. Я имею ввиду электронную. Для регистраций на сайтах, для новостных рассылок, для работы и т.д. В общем она нужна всем. И почтовых сервисов уйма, на любой цвет и вкус: Google, Mail.ru, Live.com, Yandex.ru и так далее. Места для почтовых ящиков там более чем предостаточно, не то что раньше: я когда регистрировал свой первый почтовый ящик - выдавалось под письма 10 мегабайт. Щас таких проблем нет.
    Фирмы предпочитают использовать свои почтовые сервера. Собственно именно и такой случай мы и рассмотрим. В этой статье, мы поднимем почтовый сервер на Windows.
    И так. Задача:

    • Поднять почтовый сервер. 
    • Для каждого пользователя свой почтовый ящик для работы с клиентами. 
    • Авторизация по домену.
    • Центральный почтовый ящик, который указан на сайте - на него сыпятся все письма. С него уже переправляются менеджерам
    • Отслеживание переписки, кто куда что отправил. 
    • Когда менеджер уходит в отпуск, его клиенты переходят другому и чтобы не раздавать пароли налево и направо, делаем входящую переписку доступной с любого аккаунта
    • Антиспам, антивирус
    • Минимальные затраты

    Казалось бы выбор очевиден: Exchange + Outlook. Но нет. Затраты должны быть минимальны, в идеале их вовсе не должно быть. Поэтому будем пользоваться OpenSource решениями:

    hMailServer - почтовый сервер под Windows. Всё что нам нужно - там есть. Подробнее распишу ниже

    OpenServer - готовый пакет программ для организации Web сервера. Понадобится для web-морды почты. Будем использовать Basic редакцию. Нам незачем лишний софт

    RoundCube - web-морда почты. Из всех что я смотрел, показалась самым приемлемым вариантом. 

    ClamWin - почтовый антивирус. Используется hmailserver

    Установка программ не тревиальна и с ней справится каждый, кто хоть не много работал в Windows, поэтому подробно на ней я останавливаться не буду.

    Для начала нам нужно установить OpenServer. Устанавливаем в нужное место, и запускаем. При первом запуске он предложит установить дополнительные библиотеки - соглашаемся. Если потребуется перезагрузка - перезагружаемся.

    Теперь нам необходимо его настроить и подготовить к работе.

    1. Вкладка Основные - ставим галочку автозапуск сервера, и Запускать вместе с Windows
    2. Вкладка Сервер - Выбираем IP адрес по которому будет работать сервер и корневую папку доменов (полезно если хотите держать файлы на другом винте)
    3. Вкладка модули - выбираете модули которые будут работать на вашем веб сервере. Я использую следующие модули:

    1501739097_1.png.9416428738dd2d7fced2238d65dba0ed.png

    4. Вкладка Домены - добавляем наш домен
    Для проверки введите свой домен в адресной строке либо попробуйте зайти по IP адресу.

    5. Для нормально работы hMailserver'a требуется MySQL. Для этого его нужно настроить - правой кнопкой по иконке openserver'a в трее - дополнительно - MySQL менеджер

    Откроется окно HeidiSQL создаём подключение со следующими параметрами:
    Имя хоста - наш домен или IP адрес которые мы указывали в настройках
    Пользователь - root
    Пароль - пустой 🙂 не забудьте поменять сразу.

    Инструменты - добавить пользователя
    hmail - логин
    hmailpass - пароль.
    Используйте свою комбинацию логин/пароль. Так же не забудьде указать паремтры доступа к базе.
    Вебсервер настроен, базы есть, приступаем к установке hMailserver'a.

    Во время установки спросит какую базу использовать. Выбираем 

    1501741181_4.png.3033ee1f839e7da35c11296f20747d84.png

    Так же попросит указать пароль для дальнейшего управления и настройки. Так же если у вас нет Netframework 2, он его скачает и установит.

    После установки, сразу же откроется мастер настройки Базы данных.
    1. Next
    2. Create a new hMailserver default database
    3. MySQL
    4. Addres - наш IP адрес
    Port - по умолчанию 3306, если не меняли
    Name - hMailserver
    login hmail
    pass hmailpass
    Теперь скопируем файлы libmysql.dll в папку куда установился hmailserver (в Program files)
    Файлы лежат у меня в 

    C:\OpenServer\modules\database\MySQL-5.6-x64\lib

    и копируем их в 

    C:\Program Files (x86)\hMailServer\Bin

    После завершения, запуститься административная панель.

    1501742534_5.png.5aa76dc9590f95a698b9664c3ae0dcb2.png

    1. Add domain - указываем наш домен. Ставим галочку Enable и нажимаем Save
    2. Domain - наш домен - Accounts - создаем первый почтовый ящик
    Теперь надо бы проверить работает ли сервер. Для этого разархивируем архив с roundcube'ом в папку с нашим доменом. После чего нам нужно отредактировать файс config/config.inc.php. Для этого в самый конец файла добавляем

    $config['enable_installer'] = true; 

    После чего в браузере переходим по адресу http://vashdomen/installer 

    Откроется данная страница. Если всё нормально то мы сможем продолжить установку, если нет - будут указаны ошибки которые нужно исправить. Их решение есть в интернете, поэтому я не буду заострять на этом внимания.
    Для продолжения нам нужно создать базу данных roundcubemail и пользователя к ней. Создаём как это делали выше для hmailserver'a
    После чего заполняем данные на второй странице инсталятора
    Type - MySQL
    server - наш домен или IP
    name - roundcubemail
    username - roundcube
    password - pass
    Сохраняем конфиг, на следующей странице инициализируем базу.
    Если всё ок. То можем проверять - переходим на наш домен вводим логин и пароль от созданного пользователя.

    Всё должно работать. Теперь приступим к более тонкой настройке сервера.

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

    Настроим связку, для этого в hmailserver administrator
    Settings - Anti-virus - ClamWin - Enable - Auto-detect. Можем сразу протестировать нажав клавишу тест, но как показывает практика с этим проблем быть не должно.

    Теперь создадим почтовые адреса для пользователей. Мы помним что у нас должна быть авторизация по домену. И так.
    Domains - нашдомен - Accounts - add
    Addres - manager1@test.ru
    pass - pass
    Administrator level - user
    Далее переходим на вкладку Active Directory
    Тут мы должны указать какому пользователю домена соответствует этот адрес. У меня это будет Ivanov. Указываем домен и его имя пользователя.
    Теперь при логине в почту ему не нужно будет указывать свой почтовый адрес (manager1@test.ru), ему достаточно будет указать свои логин и пароль которые он использует для входа в систему.
    Теперь создадим общую папки в которые будут складываться все письма.
    Settings - Protocols - IMAP - Public folders
    Имя укажем #Publics. Нажимем кнопку Edit и создаём нужные нам папки. Я назвал их In и Out. Папка In будет доступна всем, папка Out только администрации.

    1501811484_8.thumb.png.8d282532acc4d38afe3d450286c91f52.png

    Теперь сделаем так, чтобы все входящие письма сыпались в папку In а исходящие в Out


    Domain - rules - add
    Name - InMail
    Не забываем галочку Enable
    Use AND

    Жмём ADD

    Name - "MailIn"

    Criteria (Use AND) - IF Message size GREATER THEN 0

    Actions - MOVE TO IMAP FOLDER #Public.Mail.In


    Жмём ADD

    Name - "MailOut"

    Criteria (Use AND) - IF To NOT EQUALS @test.ru

    Actions - MOVE TO IMAP FOLDER #Public.Mail.Out

     
    Теперь письма складываются.

    Ну вот вроде и всё. Такой почтовый сервер подойдёт для малого бизнеса, где не так много людей которые пользуются почтой 🙂




    Обратная связь

    Рекомендуемые комментарии

    Комментариев нет


×
×
  • Создать...