Почта является одним из самых сложных служб по по настройке. Но на самом деле, почтовый сервис довольно прост сам по себе: есть стандартные протоколы используемые для доступа к своей почте (например, IMAP и POP), протоколы, используемые для обмена данными между почтовыми серверами и отправки почты (SMTP, SMTPS) и затем есть база данных почты и информация о пользователе. В Mavericks Server.app, все они представлены на одной вкладке, так что это и вправду минимум - куда уже проще.
Настройка почтового сервера
Итак, что нам понадобится:
Статический IP -адрес. WAN (а вероятно и LAN) адрес должен быть статическим.
Проброска портов. Порты должны быть настроены на шлюзе для SMTP как минимум и для других портов, используемых для доступа к почте на клиентских устройствах (25 , 618, и т.д.) Порты мы настраиваем на вкладке нашего роутера (если у нас Airport) или вручную на роутере.
DNS записи. МХ-запись и какая-то типа mail.domain.com записи должны обязательно быть настроены для DNS-серверов, которые отвечают за домен. Там также должны быть обратные записи для адреса сервера(PTR запись), как правило, предоставляемые вашим провайдером. Как вариант вы можете получить у провайдера ISP запись.
У меня например все именно так и решилось – провайдер закрыл всем клиентам 25-й порт, но запись ISP предоставил. Выглядит типа mail.providerdomain.com
Без этой обратной записи(PTR) большая часть ваших писем уйдет в никуда. Например клиенты почты Googl и Яндекс ваших писем не увидят.
Проверьте RBL. Если у вас новый IP адрес, который вы будете указывать в DNS сервере, проверьте все основные списки Blacklist на сегодняшний день, чтобы убедиться, что какой-то злобный спамер не присел на этот IP прежде чем вы добрались до него. Много адресов блокируются, иногда целые блоки IP-адресов, поэтому, прежде чем переводить почту на какой-либо IP, проверьте его.
Фильтрация почты (чистка сообщений). OS X Server имеет ряд встроенных почтовых фильтров, в том числе и проверку на наличие вирусов, возможность использовать RBL, блокировать конкретные адреса. Тем не менее, и этого часто не хватает. Услуги сторонних организаций, таких как MXLogic помогут сохранить вашу почту от взлома.
Резервное копирование. Я лично предпочел бы не потерять скорее сами данные, чем бекапы, всегда стоит иметь резервную копию ...
Как только с этим закончили, то пришло время для того, чтобы настроить саму почту в Server app.
Сначала давайте установим наши сертификаты SSL. Чтобы сделать это, откройте приложение сервера и нажмите Сертификаты в боковой панели. Здесь, смотрим на раскрывающийся список "Безопасность услуг с использованием" и нажмите на вкладке для нужного протокола, чтобы выбрать соответствующий сертификат, который будет использоваться для обслуживания почты.
Нажмите OK, когда все настроите. Теперь давайте включим наш почтовый сервер. Чтобы сделать это, откройте Server app и нажмите на почту в боковой панели.
Видим, что у нас тут не так уж и много настроек:
Provide mail for (Принимать почту для): Настраивает все домены которые почтовый сервер будет принимать.
Но мы же помним, что сначала нужно было направить на наш сервер MX запись у регистратора?
Каждая учетная запись на сервере имеет логин и каждое доменное имя будет доступно для каждого логина. Например, учетная запись charles будут доступны для адреса электронной почты
Authentication (Аутентификация): Нажмите кнопку Изменить, чтобы получить список источников, которые приходится могут проходить проверку подлинности против (например, Active Directory, Open Directory, Custom, Local, и т.д.) и в некоторых случаях конкретные алгоритмы и пароль, используемые для mail.
Push Notifications (Push-уведомления): Если вы все настроили с сертификатами ранее то вам нет необходимости лезть в эту опцию. В противном случае используйте ваши данные APNS , чтобы настроить Push-Notifications.
Relay outgoing mail through ISP(Пересылать исходящую почту через ISP) : Настроить обратную запись сервера, чтобы вся почта проходила через определенный сервер. Например, это может быть учетная запись от вашего провайдера интернет-услуг (ISP), или с внешних служб фильтрации (например, MXLogic).
Limit mail to(Лимит пользователя): Настройка общее количество дискового пространства для писем пользователя, в мегабайтах .
Edit Filtering Settings(Изменить настройки фильтрации): Настройка антивируса, спам- фильтра и фильтра нежелательной почты.
- "Enable virus filtering (Включить фильтрацию вирусов)" флажок включает антивирус MailScanner.
- " Enable blacklist filtering (Включить фильтрацию черного списка)" проверяет RBL (или RBLs ), является ли данный сервер является "известным" спамером.
- " Enable junk mail filterin (Включить фильтрацию нежелательной почты)" опция самому настраивать фильтрацию спама, позволяя блокировать на основе оценки пользователя.
После того как вы настроили все параметры доступа к услуге почты нажмите на ползунок вверху, чтобы включить ваш сервер.
На данный момент, у вас должен быть включен Telnet на 25-м порту хоста для проверки SMTP, предпочтительно из другого почтового сервера. Набираем в терминале:
telnet mail.your_domain.com 25
Соединились? Вот и отлично. Вы также можете проверить работу почтовых служб с помощью команды ServerAdmin с параметром fullstatus для почтового сервиса: sudo serveradmin fullstatus mail Которая даст вам довольно подробные сведения о работе почтового сервера, в том числе настроек, соединения, работы протоколов и остального:
mail:startedTime = ""
mail:setStateVersion = 1
mail:state = "STOPPED"
mail:protocolsArray:_array_index:0:status = "ON"
mail:protocolsArray:_array_index:0:kind = "INCOMING"
mail:protocolsArray:_array_index:0:protocol = "IMAP"
mail:protocolsArray:_array_index:0:state = "STOPPED"
mail:protocolsArray:_array_index:0:service = "MailAccess"
mail:protocolsArray:_array_index:0:error = ""
mail:protocolsArray:_array_index:1:status = "ON"
mail:protocolsArray:_array_index:1:kind = "INCOMING"
mail:protocolsArray:_array_index:1:protocol = "POP3"
mail:protocolsArray:_array_index:1:state = "STOPPED"
mail:protocolsArray:_array_index:1:service = "MailAccess"
mail:protocolsArray:_array_index:1:error = ""
mail:protocolsArray:_array_index:2:status = "ON"
mail:protocolsArray:_array_index:2:kind = "INCOMING"
mail:protocolsArray:_array_index:2:protocol = "SMTP"
mail:protocolsArray:_array_index:2:state = "STOPPED"
mail:protocolsArray:_array_index:2:service = "MailTransferAgent"
mail:protocolsArray:_array_index:2:error = ""
mail:protocolsArray:_array_index:3:status = "ON"
mail:protocolsArray:_array_index:3:kind = "OUTGOING"
mail:protocolsArray:_array_index:3:protocol = "SMTP"
mail:protocolsArray:_array_index:3:state = "STOPPED"
mail:protocolsArray:_array_index:3:service = "MailTransferAgent"
mail:protocolsArray:_array_index:3:error = ""
mail:protocolsArray:_array_index:4:status = "OFF"
mail:protocolsArray:_array_index:4:kind = "INCOMING"
mail:protocolsArray:_array_index:4:protocol = ""
mail:protocolsArray:_array_index:4:state = "STOPPED"
mail:protocolsArray:_array_index:4:service = "ListServer"
mail:protocolsArray:_array_index:4:error = ""
mail:protocolsArray:_array_index:5:status = "ON"
mail:protocolsArray:_array_index:5:kind = "INCOMING"
mail:protocolsArray:_array_index:5:protocol = ""
mail:protocolsArray:_array_index:5:state = "STOPPED"
mail:protocolsArray:_array_index:5:service = "JunkMailFilter"
mail:protocolsArray:_array_index:5:error = ""
mail:protocolsArray:_array_index:6:status = "ON"
mail:protocolsArray:_array_index:6:kind = "INCOMING"
mail:protocolsArray:_array_index:6:protocol = ""
mail:protocolsArray:_array_index:6:state = "STOPPED"
mail:protocolsArray:_array_index:6:service = "VirusScanner"
mail:protocolsArray:_array_index:6:error = ""
mail:protocolsArray:_array_index:7:status = "ON"
mail:protocolsArray:_array_index:7:kind = "INCOMING"
mail:protocolsArray:_array_index:7:protocol = ""
mail:protocolsArray:_array_index:7:state = "STOPPED"
mail:protocolsArray:_array_index:7:service = "VirusDatabaseUpdater"
mail:protocolsArray:_array_index:7:error = ""
mail:logPaths:Server Error Log = "/Library/Logs/Mail/mail-err.log"
mail:logPaths:IMAP Log = "/Library/Logs/Mail/mail-info.log"
mail:logPaths:Server Log = "/Library/Logs/Mail/mail-info.log"
mail:logPaths:POP Log = "/Library/Logs/Mail/mail-info.log"
mail:logPaths:SMTP Log = "/var/log/mail.log"
mail:logPaths:List Server Log = "/Library/Logs/Mail/listserver.log"
mail:logPaths:Migration Log = "/Library/Logs/MailMigration.log"
mail:logPaths:Virus Log = "/Library/Logs/Mail/clamav.log"
mail:logPaths:Amavisd Log = "/Library/Logs/Mail/amavis.log"
mail:logPaths:Virus DB Log = "/Library/Logs/Mail/freshclam.log"
mail:imapStartedTime = ""
mail:postfixStartedTime = ""
mail:servicePortsRestrictionInfo = _empty_array
mail:servicePortsAreRestricted = "NO"
mail:connectionCount = 0
mail:readWriteSettingsVersion = 1
mail:serviceStatus = «DISABLED"
Для остановки службы: [code]sudo serveradmin stop mail[/code] И снова для запуска: [code]sudo serveradmin start mail[/code] Чтобы настроить некоторые параметры уже не в GUI, давайте посмотрим на полный список опций команды:
sudo serveradmin settings mail Первое, что обычно изменяем, так это метку добавляемую к сообщениям, которые помечены как спам. Это сохраняется в почте: [code]postfix:spam_subject_tag[/code], поэтому команда будет выглядеть так:
[code]sudo serveradmin settings mail:postfix:spam_subject_tag = "***BLYADSKY_SPAM***"[/code]
Некоторые администраторы также могут отключить Greylisting, что делается как при настройке фильтрации в GUI гак и в терминале командой mail:postfix:greylist_disable:
sudo serveradmin settings mail:postfix:greylist_disable = no
Для настройки ящика, где будут оседать все письма, отправленные в карантин, используем mail:postfix:virus_quarantine: sudo serveradmin settings mail:postfix:virus_quarantine ="
Администратор, по умолчанию, не получит письмо, если письмо, или файл в нем, заражены вирусом и отправляется через сервер. Чтобы включить эту опцию:
sudo serveradmin settings mail:postfix:virus_notify_admin = yes
У нас по умолчанию включена опция ограничения по размеру письма. Для отключения: sudo serveradmin settings mail:postfix:message_size_limit_enabled = yes Или просто установите новый лимит: sudo serveradmin settings mail:postfix:message_size_limit = 10485760 И можно указать размер квоты ящика в процентах (soft quota): sudo serveradmin settings mail:imap:quotawarn = 75 Кроме этого, следующие параметры довольно удобны для использования опций GUI:
- mail:postfix:mynetworks:_array_index:0 = “127.0.0.0/8″ – Добавляет локальные хосты
- mail:postfix:host_whitelist = _empty_array – Добавляет хосты в белый список
- mail:postfix:blacklist_from = _empty_array – Добавляет хосты в черный список
- mail:postfix:black_hole_domains:_array_index:0 = “zen.spamhaus.org” – Добавляет еще серверы проверки RBL
Ну вот теперь клиентская часть почтового сервиса настроена. Если вам интересно, где теперь настраивается использование веб-почты, то этого сервиса по умолчанию в Mavericks Server.app больше нет. Но open source проект жив, доступен к загрузке и не сложен в настройках, Roundcube, например. Просмотрите wiki Roundcube для получения дополнительной информации. Ну а теперь пора приступить к настройке почтовых клиентов.
Настройка почтового ящика
Для начала нам нужно создать пользователя
Нажимаем на + внизу
Тут выбираем имя, фото, Логин, пароль, и основную почту пользователя, и выбираем - будет ли он локальным( с доступом к серверу) или только почтовым клиентом.
После создания видим снизу настройки
Тут - доступ к сервисам - все просто - что мы даем ему делать
Настройка Edit Mail Options тоже не сложна - хранить или пересылать письма
Вот пока и все А теперь настроим клиента почты:
Настройка почтового клиента
Открываем Настройки>Учетные записи
Выбираем - создать другую
Пишем наш новый e-mail и пароль
Водим адрес сервера, как мы его только что создали
И вновь его же в SMTP, с логином и паролем же
Все, пользуемся и радуемся
Для настройки других почтовых клиентов обращаем внимание на порты и настройки безопасности: TLS, SSL
Удачи!