Не 1с-кой единой. Настраиваем собственный почтовый сервер.

21.06.10

База данных - Инструменты администратора БД

Рассказ–инструкция о настройке бесплатного SMTP/POP3/IMAP сервера под Windows. Попробую объяснить доступным языком.

 

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

Ну что ж - поадмниним: в этой статье я хочу рассказать о настройке собственного почтового сервера.

Подготовительный этап

Зачем? Причины у каждого свои - поэтому приведу те, что важны для меня:

  • Быстрая скорость работы почты внутри предприятия
  • Полный и удобный доступ к администрированию почты
  • IMAP (мега удобно, жаль не многие хостеры/провайдеры предоставляют этот сервис)
  • Получить дополнительный опыт

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

  1. Компьютер с Windows, одним интерфейсом смотрящий в инет
  2. Постоянный IP-адрес и вменяемый провайдер
  3. Зарегистрированный домен + 2 DNS сервера + возможность управлять записями DNS

Если по первым двум пунктам думаю все ясно, то по третьему пункту я вкратце опишу необходимый порядок действий. Для начала следует зарегистрировать домен - это можно сделать бесплатно, а можно и отдать регистратору. Я воспользовался вторым вариантом - нашел компанию (http://cyfra.ua), которая предлагает услуги по регистрации и поддержке доменов. Они весьма шустренько зарегистрировали мне домен в зоне kiev.ua, предоставили свои DNS, панельку для управления и даже почтовый хостинг (отказываться не спешим - он нам еще понадобится).

В качестве примера, я буду использовать домен firma.kiev.ua

Установка и настройка ПО

Дальше устанавливаем сам софт. Я выбрал hmailserver  - соответственно про него писать и буду. Понравился он мне по двум причинам: поддержка IMAP и бесплатность.

В процессе установки будет предложено выбрать сервис для хранения базы данных: либо встроенный SQL-lite, или же свой SQL-сервер. Рекомендую выбрать первый пункт, поскольку сами письма все равно хранятся в файлах и требования к серверу БД не такие как у 1С Wink. После установки нужно проверить настройки файерволла - должен быть открыт порт 25 и 110/143 - если вы хотите получать почту, находясь не только в офисе.

Основные моменты в настройке:

Заходим в Settings - Protocol и галочками отмечаем необходимые нам службы (все три: SMTP,POP3,IMAP). В настройка SMTP заполняем

Max message size (максимальный размер сообщения - у меня 20Мб),

Number of retries - 24, minutes between every retry - 30 (сколько раз и с какой частотой пытаться доставить почту),

Local host name - mail.firma.kiev.ua (сам компьютер может называться как-угодно)

SMTP Relayer - оставляем пустым

Bind to local IP address - оставляем пустым

Затем Advanced - IP ranges - там добавляем записи:

LocalNet - 192.168.0.0 - 192.168.0.255 (естественно ставим свои), и галочками снимаем доступ Allow deliveries from External to External e-mail addresses и Require SMTP authentication External to local e-mail addresses

Internet - 0.0.0.0 - 255.255.255.255 с такими же настройками

В Advanced - TCP/IP ports проверяем что бы в качестве IP адресов стояли 0.0.0.0 (порты стандартно 23/110/143)

Ну и конечно же добавляем домен - firma.kiev.ua (настройки можно оставить по умолчанию) и в нем хотя бы пару аккаунтов (если у вас есть Active Directory - можно импортировать из него), настройки там интуитивно понятны. Теперь можно и потестировать работу почты внутри сети - должно все работать.

Настройка DNS...

Но к сожалению это только верхушка айсберга... во всем мире ведь никто не знает, что мы такие молодцы и у нас свой сервер - нам надо «засветиться». Для этого в панели управления доменом добавляем (изменяем если уже есть) такие записи:

A mail.firma.kiev.ua 222.222.222.222 (тут наш постоянный внешний IP - теперь наш комп имеет нормальное имя во всемирной паутине)

MX firma.kiev.ua mail.firma.kiev.ua 10 (назначаем «старшего» по почте)

Изменения вступят только через некоторое время! Проверить легко - обычным пингом на mail.firma.kiev.ua - рано или поздно мы начнем пинговать свой собственный сервер.

...и прочие танцы с бубном

В теории это все: сервер запустили, всем сообщили - ждем почту / отправляем свою. На практике большую часть почты, которую мы хотим кому-то послать, другие серверы будут заворачивать. Ответ прост - СПАМ. На сегодняшний день есть много способов как по рассылке спама, так и по борьбе с ним. Один из первых способов борьбы со спамом - это обратный DNS-запрос. Объясню на пальцах:

Например отправляем мы письмо с нашего сервера на адрес лалала@mail.ru. Наш сервер соединяется с сервером мейл.ру и говорит: Привет, я mail.firma.kiev.ua, хочу послать тебе письмо. Майл.ру делает DNS-запрос - какой адрес у сервера mail.firma.kiev.ua - получает ответ 222.222.222.222 (это прямой запрос), но этого ему мало - он посылает запрос вашему провайдеру - «кто такой 222.222.222.222» и получает ответ что-то типа «222_static.ads.mysip.net» - налицо несоответствие и наш сервер посылают куда подальше (вдруг спамер). Что бы этого не случилось - нам нужно сообщить нашему провайдеру, что мы не просто «222_static.ads.mysip.net», а «mail.firma.kiev.ua» и он внесет соответствующую запись в свои настройки (PTR запись).

Все? Фиг там! Готовьтесь как минимум к еще одной проблеме. Так как вы со своим сервером - новый член почтового сообщества, то на первых порах к вам будут относится с большим подозрением. Протокол SMTP (тот, на котором сервера общаются между собой) придуман много лет назад и все стандарты полностью описаны в соответствующей документации. Но соблюдают их ничем не лучше, чем  мы соблюдаем рекомендации 1С по написанию обработок Wink. Каждый администратор почтового сервера сам себе начальник и сам устанавливает условия работы своего сервера - от кого принимать, кому отказать и так далее.

И что делать? Нужно анализировать ответы других серверов (сообщения типа MAILER-DAEMON и тп) - в большинстве случаев проблема будет описана в сообщении - почему чужой сервер не захотел принимать от вас сообщения.

Возможные варианты (не дословно, а по смыслу):

  • Ваш сервер в спам-списке - в самом сообщении обычно указывают в каком именно списке ваш сервер засветился. Для решения проблемы нужно проверить свою сеть на наличие вирусов, затем зайти на указанный сайт и заполнить заявку на исключение вашего сервера из списка
  • Ваш сервер/домен отсутствует в списке доверенных и тп - скорее всего удаленный сервер очень жестко настроен - разрешается доступ только определенным серверам/доменам. Для решения нужно связаться с администратором этого сервера, что бы он внес ваш сервер в «белый» список.
  • Временная ошибка, «перезвоните попозже» - тут два варианта - чужой сервер действительно перегружен/занят/пошел покурить, или же это «проверка на вшивость» - так называемый серый список. Это еще один способ борьбы со спамерами - суть такова: по правилам каждый почтовый сервер должен предпринимать попытки доставить почту через определенные промежутки времени (боюсь быть не точным - каждые полчаса в течение трех суток). Естественно, что спамер вряд ли будет это делать, соответственно настоящий сервер таки добьется своего и письмо доставит. Такие проверки устраивают единоразового для каждого нового сервера или же с какой-то периодичностью. Решение: ничего не делать - просто ждать (при условии, что вы верно внесли настройки описанные выше - их достаточно для преодоления большинства проверок типа «серый список»). Дольше всего мне пришлось ждать «разрешения» от ukr.net - благо они в ответ дают ссылку http://www.ukr.net/mta/std3.html, где все подробно разжевано.
  • Ну и всевозможные ошибки, связанные с неправильной настройкой сервера, DNS или заголовков письма - тут нужно разбираться в каждом случае отдельно.

Есть путь и проще - достаточно пересылать всю исходящую почту на SMTP-сервер провайдера (настройка SMTP Relayer) и все эти проблемы лягут на провайдера, но мы ведь не ищем легких путей ;)

 

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

 

P.S. Как маленький бонус - для доступа к корпоративной сети извне по RDP/VPN/etc теперь не надо набирать IP-адрес - ведь у нас есть собственное имяWink

 

См. также

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    15053    109    46    

108

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

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

15000 руб.

10.11.2023    12047    45    33    

67

Инструменты администратора БД Роли и права Системный администратор Программист Пользователь 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 18.09.2024, версия 1.2

18000 руб.

06.12.2023    10900    47    8    

78

SALE! %

Инструментарий разработчика Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

4800 3840 руб.

14.01.2013    191573    1153    0    

920

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    33932    108    152    

75

Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

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

3600 руб.

06.02.2017    32729    145    18    

51

Архивирование (backup) Инструменты администратора БД Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Данная разработка позволит решить вопрос с резервным копированием Ваших баз в автоматическом режиме, расположенных на сервере 1С. Система умеет ставить блокировки на вход, блокировать фоновые задания, принудительно отключать сеансы пользователей. И все это система делает в автоматически при создании бэкапа (или через команду). Выгрузка происходит в родной формат 1С - .dt. Так же система умеет архивировать данные выгрузки с установкой пароля. Умеет менять расширение файла zip или dt на любое указанное вами, что позволит сохранить выгрузки от шифровальщика. Может удалять старые копии выгрузок, оставляя указанное количество резервных копий, начиная с самой поздней. Только для WINDOWS!

6000 руб.

06.11.2012    73841    629    45    

88

Инструменты администратора БД Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Многие сталкиваются с проблемой когда изображения, находящиеся в базе разные по объему и размерам. Менеджеры могут добавить файлы в очень высоком разрешении, объемом свыше 20 Мегабайт. База данных становится слишком большой, выгрузка на сайт идёт медленно и требуется много место на хостинге. Как сжать картинки и уменьшить размер базы 1С? Это можно сделать с помощью данной обработки. Существует возможность выбрать различные варианты для того чтобы уменьшить картинки: в разы, в процентах от первоначального объема, а также сделать картинки одинаковой ширины. В результате размер базы 1С значительно сократится (в зависимости от количества и размера картинок), а изображения станут небольшого объема, равными по ширине, почти без потери качества. Работает на управляемых формах для УТ 11, КА, ERP.

3000 руб.

21.07.2022    10213    10    4    

18
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. iov 407 21.06.10 22:41 Сейчас в теме
хорошая статья но..... неформат... не тут... не поймут и не оценят... могут и заминусить...
4. Noy 1079 21.06.10 23:34 Сейчас в теме
(1) Не поймут - так и будет... хотя думаю админов-одинесников тут хватает. может кому и пригодится.
(3) Еще гугл дает такой-же сервис. Но тут как плюсы (низкая вероятность оффлайна, спам-фильтры, антивирусы, админу нифига делать не надо - плюс спорный) так и минусы (твоя почта у "дяди" - вопрос конфиденциальности, скорость внутренней пересылки, также не забываем о возможности использования скоростного почтового сервиса для обмена между приложениями/БД. У меня года три две 1С-ные базы обменивались данными через почту - причем отправка была в ОбработкаПроведения() - каюсь, давно переписал. Но как ни странно на скорость не сильно влияло)
2. support 4455 21.06.10 22:56 Сейчас в теме
Кто сказал, что не формат. Для таких статей целый раздел выделен, только мало их.
5. iov 407 21.06.10 23:39 Сейчас в теме
(2)(4) я не про админов - 1сников... А про злобных карликов пожирающих всех кто постит что-то банальное или не по теме 1с... А статья хорошая я её уже скопипастил в доки гугла...
автору никаких претензий статья отличная ... Но будет супер если это будет цикл статей...
3. Dimasik2007 430 21.06.10 23:18 Сейчас в теме
Хорошая статья.
Я решил не мучаться и воспользовался Яндекс-почтой для доменов (pdd.yandex.ru) :)))
6. ЗАК 21.06.10 23:43 Сейчас в теме
Интересно было почитать, спасибо ;)
7. Арчибальд 2709 22.06.10 07:27 Сейчас в теме
8. amel 22.06.10 09:22 Сейчас в теме
а как вы решаете вопрос с настройкой клиентов внутри сети ? какой клиент используете ?
9. Noy 1079 22.06.10 09:29 Сейчас в теме
(8) Последнее время отдаю предпочтение Mozilla Thunderbird. Но есть и Outlook и Outlook Express. Настройку клиента под IMAP опишу в следующей статье.
10. xzorkiix 35 25.06.18 15:20 Сейчас в теме
Нашел статью - искал что-то что может эмитировать почтовый сервер для тестов рассылки. Работает. 1С уверено шлет письма. А мне больше и не надо. Спасибо за наводку на https://www.hmailserver.com/ (для занятых: установка через далее\далее\далее..., внимательно пишем пароль администратора и запоминаем его, в форме настроек первая страница мастер создания домена - всё)
11. aston7777 13.12.19 13:26 Сейчас в теме
А данный почтовый сервис потянет где то 500 адресов? и вообще какие у него мощности?
Оставьте свое сообщение