Как я заставляю отключение аутентификация простого текста SMTP прикреплять на OS X Server.app 10.10 Йосемити

У меня есть сервер ретрансляции SMTP, что я недавно заменил OS X 10.10 Йосемити, выполняющего Server.app. Это работает, поскольку реле только для SMTP, позволяющее только, размещает с LAN на реле через него. Мы делаем это так, чтобы вся почта от нашей подсети была правильно отправлена от проверенного хоста к нашему домену для Платформы политики отправителя (SPF) и такого.

Конфигурирование к реле было довольно легко. Документация следующей Apple для того, чтобы Отключить Почтовые сервисы на Сервере OS X, я сделал следующее:

sudo serveradmin settings mail:global:skip_enable_service_check = yes
sudo serveradmin settings mail:imap:enable_imap = no
sudo serveradmin settings mail:imap:enable_pop = no
sudo serveradmin settings mail:imap:enable_sieve = no
sudo serveradmin stop mail
sudo serveradmin start mail

Это гарантировало, что только SMTP работает и остается случаем после перезагрузки или перезапуска Почтового сервиса. Так как имя хоста сервера ретрансляции SMTP является субдоменом в домене, для которого это передает, я также должен был изменить /Library/Server/Mail/Config/postfix/main.cf удалить $myhostname & $mydomain от "mydestination" получающаяся строка следующие:

mydestination = localhost.$mydomain, localhost

Это также работало, распознанный Server.app и сохраняет изменение (как проверено путем выполнения sudo serveradmin settings mail:postfix). То же сохраняется для тонких настроек к mynetworks строка для ограничения, от которого была принята передача подсетей.

Проблема, которую я испытываю, является этим модификации к smtpd_pw_server_security_options строка (а именно, для удаления LOGIN & PLAIN типы аутентификации), не будет придерживаться и возвращаться к значению по умолчанию (который включает нежелательные типы автора простого текста) после запуска Почтового сервиса. Документация Apple относительно определенных для Apple постфиксных опций в Сервере Mac OS X подразумевает тот пропуск LOGIN & PLAIN опции должны быть допустимыми.

Я попробовал:

  1. вышеупомянутые модификации к smtpd_pw_server_security_options в /Library/Server/Mail/Config/postfix/main.cf
  2. Как упомянуто в определенной для Apple постфиксной документации опций, работая sudo serveradmin settings mail:postfix:smtpd_use_pw_server = no (mail:postfix:smtpd_use_pw_server кажется, пустой словарь под Йосемити),
  3. Выполнение sudo serveradmin settings postfix:smtp_sasl_auth_enable = yes (это принимает значение по умолчанию к 'нет' под Йосемити, таким образом, я предполагаю, что Apple просто подкачала функциональность этой опции от вышеупомянутого mail:postfix:smtpd_use_pw_server опция)
  4. Используя serveradmin удалить login & plain элементы от mail:postfix:smtpd_pw_server_security_options массив (например. sudo serveradmin settings mail:postfix:smtpd_pw_server_security_options:_array_index:2 = delete), но поскольку Charles Edge упоминает в его kyrpted сообщении в блоге об Удалении 'serveradmin настройки' Записи в Сервере OS X, та функциональность, кажется, повреждается. И, никакие эти настройки не зеркально отражаются в /Library/Server/Mail/Config/MailServicesOther.plist или любой другой .plist, таким образом, вручную изменяющий их, кажется, не опция.

Я добрался, автор простого текста отключил временно использование Server.app путем переключения настройки аутентификации простого текста от частично установленного флажка (по-видимому, потому что IMAP отключен) к полностью снятому флажку, но это непоследовательно и не придерживается после перезапуска Почтового сервиса.

Любые предложения или решения значительно ценились бы, за исключением уведомления для не использования Server.app на OS X. Это для магазина все-Apple, который должен преследовать продовольственные продукты Apple по причинам, в которые я не могу войти здесь. Естественно, отъезд автора простого текста включил, также не опция для очевидной безопасности и PCI причины соответствия DSS.

4
задан 11 March 2015 в 00:54
1 ответ

Я могу - немного поиграв - отключить аутентификацию открытого текста SMTP через Server.app, хотя это не очень хорошо приживается (конечно, не переживает перезагрузку или перезапуск Почты service, а иногда даже теряется, ковыряясь в Server.app). Я понял, что в качестве временного обходного пути я могу по крайней мере автоматически уведомлять, если SMTP-аутентификация с открытым текстом «PLAIN» и «LOGIN» будет повторно включена.

Я создал следующий сценарий быстрого bash, который выполняет эту работу:

#!/bin/bash

# 
# smtp_plaintext_auth_check - check to see if plaintext auth is supported by SMTP service and warn if it is
# 
# v0.1   2015-03-12 - Morgan Aldridge <http://serverfault.com/users/13496/morgant>
#                     Initial version.
# 

admin_emails="email@domain.tld"
debug=false

host=$(hostname)
date=$(date +%Y-%m-%d-%H%M)

plaintext_auth_enabled=false

# check via serveradmin to see if plaintext auth is allowed by the SMTP server
if $debug; then echo "Checking Mail service to see if SMTP plaintext auth is supported..."; fi
while IFS= read -r line; do
    if [[ "$line" =~ (plain|login) ]]; then
        if $debug; then echo "  Found '${BASH_REMATCH[1]}' SMTP auth method which is plaintext!"; fi
        plaintext_auth_enabled=true
    fi
done <<< "$(serveradmin settings mail:postfix:smtpd_pw_server_security_options)"

# if plaintext auth is enabled, notify admins
if $plaintext_auth_enabled; then
    if $debug; then echo "Notifying admins via email that SMTP plaintext auth IS supported. That's bad!"; fi
    mail -s "Error on $host: SMTP plaintext auth is allowed! $date" $admin_emails <<-EOM
        ERROR on $host: SMTP plaintext auth appears to be allowed by the Mail service! This is a security risk and against PCI DSS compliance!

        Please resolve ASAP!
    EOM
else
    if $debug; then echo "Phew, SMTP plaintext auth doesn't appear to be supported. That's good."; fi
fi

Опять же, это обходной путь , и я бы предпочел программно отключить аутентификацию открытого текста SMTP.

2
ответ дан 3 December 2019 в 03:56

Теги

Похожие вопросы