Roundcube + hMailServer или своя почта в маленькой организации / Хабрахабр


Не каждая организация может позволить себе покупку дорогостоящего почтового сервера как Microsoft Exchange Server, да и в силу своей «наворочености», не каждой организации он нужен. Некоторое время назад передо мной встала задача запустить почту внутри организации для обмена документами между отделами.

Сразу оговорюсь, что организация, в которой я работаю небольшая, имеет 1 сервер и около 50 клиентских машин. Опыта работы с почтовыми серверами – нет. После недолгих поисков по просторам сети было решено использовать связку RoundCube + hMailServer. В этой статье не будут рассмотрены и описаны все сильные и слабые стороны такой связки, а просто описано как все это заставить работать, но скажу что основные достоинства этого решения – бесплатность и простота в настройке.

Немного теории

С чем имеем дело…Почтовый сервер – в системе пересылки электронной почты так обычно называют агент пересылки сообщений. Это компьютерная программа, которая передаёт сообщения от одного компьютера к другому. Обычно почтовый сервер работает «за кулисами», а пользователи имеют дело с другой программой — клиентом электронной почты.hMailServer — бесплатный почтовый сервер под платформу Windows. Работает как служба Windows и включает в себя инструменты администрирования и резервного копирования. Поддерживает почтовые протоколы IMAP, POP3 и SMTP. Для хранения настроек и индексов использует базы данных типа MySQL, MS SQL или PostgreSQL, сами же почтовые сообщения хранятся на жестком диске в формате MIME.RoundCube Webmail — это клиент для работы с электронной почтой с веб-интерфейсом, написанный на PHP с использованием CSS и XHTML и технологии AJAX. RoundCube Webmail устанавливается практически на любой сервер с поддержкой PHP и MySQL и предоставляет возможность работы с почтовыми ящиками по протоколам IMAP и SMTP. Имеет множество расширений.Для начала работы необходимо скачать следующие компоненты:1) hMailServer2) RoundCube Webmail3) Веб-сервер VertrigoServ (можно использовать и любой другой)И так, скачав все необходимое или удостоверившись, что оно есть в наличии, можно смело переходить к началу установки.

Практика

Этап нулевой: Задать сетевой карте статический IP адрес. В данной статье будет использован IP 192.168.0.45 .Этап первый: Установка VertrigoServ. Не думаю, что стоит детально расписывать установку этого веб-сервера, т.к. ничего замысловатого в этом процессе нет.Этап второй: Установка hMailServer.Полностью процесс установки описывать не буду, рассмотрим только основные моменты. На этапе «Select Components» выбираем «Full Installation», далее на этапе «Database type» выбираем «Use external database engine (MSSQL, MySQL or PostgreSQL) и еще пару раз нажав «Далее» начнется установка. Ближе к завершению установки, запуститься приложение hMailServer Database Setup, в котором необходимо указать тип базы данных и прописать реквизиты для подключения.Рассмотрим настройку подключения пошагово:     Step 1 of 7 – просто жмем «Next»    Step 2 of 7 – выбираем «Create a new hMailServer database»    Step 3 of 7 – выбираем «MySQL» и для того, чтобы на 6 шаге не возникло проблем, копируем файл libmysql.dll находящийся в папке с установленным VertrigoServ в папку hMailServerBin     Step 4 of 7 – вводим следующие данные:Database server address – 127.0.0.1 (или localhost )Port – 3306Database name – hmail (как пример)Username – rootPassword – vertrigo    Step 5 of 7 – пропускаем    Step 6 of 7 – просто жмем «Next» (при условии, что данные на 4 шаге введены верно, создается база данных)    Step 7 of 7 – «Close»Заключительный этап установки hMailServer — это «Specify main password», на котором задается «главный» пароль для доступа к программе. После того как пароль задан, установка считается завершенной.Теперь займемся русификацией программы, если считаете, что Ваших познаний в английском языке достаточно для работы с программой, то смело пропускайте данный пункт. Для русификации необходимо временно остановить службу hMailServer, для этого идем в «Пуск – Панель управления – Администрирование – Службы». В списке находим hMailServer, вызываем правой кнопкой мыши выпадающее меню, в котором выбираем команду «Стоп». Все, служба остановлена. Теперь скачиваем файл с русификацией и помещаем его в папку hMailServerLanguages . Остается только вписать имя файла локализации в файл конфигурации hMailServer, для этого открываем файл hMailServerBinhMailServer.ini и дописываем «ValidLanguages=english,swedish,russian» . Сохраняем и закрываем файл. Запускаем службу hMailServer (вызываем правой кнопкой мыши выпадающее меню, в котором выбираем команду «Пуск»). Этап третий: Начальное конфигурирование hMailServer.Запускаем утилиту hMailServer Administrator. Появляется окно «Connect», в котором, выделив единственную запись, жмем на кнопку «Connect»Программа просит ввести пароль, который был задан на заключительном этапе установке hMailServer. Введя пароль, попадаем в главное окно административной части hMail. В меню «File – Select language…» выбираем «russian» и жмем «ОК», программа автоматически перезапустится, после чего «заговорит» по русски.Настройка интуитивно понятна, для начала необходимо нажать на кнопку «Добавить домен», в качестве имени домена, выберем «test.loc» и нажмем кнопку «Сохранить» (более детальная настройка почтового домена в этой статье рассматриваться не будет). Создаем учетную запись, для этого переходим в левой части программы в папку «Учетные записи», а в правой части программы жмем кнопку «Добавить…». Вводим любое имя пользователя (например test), указываем пароль и жмем кнопку «Сохранить» (более детальная настройка пользователей в этой статье рассматриваться не будет). И так, на нашем почтовом сервере появляется первый пользователь test@test.loc.Собственно на этом предварительную настройку hMailServer можно считать законченной, переходим дальше.Этап четвертый: Установка RoundCube.Для начала необходимо содержимое архива roundcubemail перенести в папку VertrigoServwww (предварительно можно удалить всю «начинку»). Теперь в веб-приложении phpMyAdmin создаем MySQL базу данных для RoundCubeMail, для этого открываем браузер и в адресной строке вводим « 127.0.0.1/phpmyadmin/ » в качестве логина вводим: root, пароль: vertrigo (стандартные реквизиты для VertrigoServ). В поле «Новая база данных» вводим название, например «roundcube» и нажимаем кнопку «Создать».База данных создана, переходим непосредственно к установке скрипта RoundCubeMail. В адресной строке браузера вводим « 127.0.0.1/installer/index.php » и жмем «Enter». Попав на страницу «Roundcube Webmail Installer» жмем кнопку «Start installation». Установка проходит в три этапа.1. Check environment. Происходит проверка, удовлетворяет ли ваша система требованиям скрипта. Жмем кнопку «Next», если она недоступна, внимательно читаем информацию на странице и исправляем недочеты. 2. Create config. Рассмотрим пункты, которые следует задать/изменить.Блок General configuration: product_name – Имя почтового сервера Блок Database setup: Database type – MySQL Database server – localhost Database name – roundcube Database user name – root Database password – vertrigo Блок IMAP Settings: default_host – 192.168.0.45 username_domain – test.loc Блок SMTP Settings: smtp_server – localhost Блок Display settings & user prefs: language – ru_RU После того как внесли все необходимые изменения жмем на кнопку «Create config» нас перенаправляет на страницу на которой предлагается скачать созданные конфигурационные файлы. Скачиваем сгенерированные конфигурационные файлы и копируем их в папку VertrigoServwwwconfig . Возвращаемся в браузер и жмем кнопку «Continue». 3. Test config. Это заключительный этап установки, на нем можно проверить правильность конфигурации. Для этого служба hMailServer должна быть запущена. В блоке «Test SMTP config», в полях «Sender» и «Recipient» введем адрес нашего единственного пользователя test@test.loc, жмем на кнопку «Send test mail», если появляется сообщение «SMTP send: OK» – значит эта часть настроена верно, в противном случае перепроверьте в конфигурационном файле main.inc.php параметр $rcmail_config['smtp_server'] = 'localhost'; . Теперь проверяем, работает ли IMAP, в блоке «Test IMAP config» в качестве сервера выбираем 192.168.0.45, Username: test@test.loc, Password: пароль который ввели при создании пользователя. Жмем на кнопку «Check login» если в результате получаем сообщение «IMAP connect: OK» значит все сконфигурировано верно, иначе перепроверьте в конфигурационном файле main.inc.php параметр $rcmail_config['default_host'] = '192.168.0.45'; . Убедившись, что все работает, идем в директорию VertrigoServwww и удаляем папку «Installer». На этом установка RoundCube Webmail завершена.Этап пятый: Авторизация в Roundcube.Этот этап является заключительным, здесь мы авторизуемся под реквизитами пользователя, которого создали на третьем этапе test@test.loc. Для начала откроем браузер и введем в адресной строке 192.168.0.45 , нажав «Enter» попадаем на страницу авторизации Roundcube. В поле «Имя пользователя» вводим test@test.loc или просто test. Пароль вводим который ввели при создании пользователя. Жмем на кнопку «Войти» и оказываемся внутри вашего первого почтового ящика! Вот собственно и все. В данной статье рассмотрены основные настройки связки RoundCube + hMailServer. Спасибо что дочитали до конца!

ЧИТАЙТЕ ТАКЖЕ:  Массовая почтовая рассылка через Exim или как не попасть в спам / Хабрахабр

http://habrahabr.ru/post/131179/

Губарь Маргарита Александровна