Устранение ошибки «504 need to authenticate first» протокола SMTP

Переводы статьи Переводы статьи
Код статьи: 843106 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

Проблема

В журнале приложений регистрируются следующие события.

Тип события: Ошибка
Источник события: MSExchangeTransport
Категория события: Протокол SMTP
Код события: 7004

Дата: 1/13/2004
Время: 5:23:43 PM
Пользователь: Н/Д
Компьютер: имя_компьютера
Описание: Это журнал ошибок протокола SMTP для идентификатора 1 виртуального сервера, подключение №29. Удаленный узел «E2k3server1.contoso.com» ответил на команду протокола SMTP «xexch50» с сообщением «504 need to authenticate first». Полностью отосланная команда выглядела как «XEXCH50 2336 3». Возможно, это вызвало ошибку подключения.

Тип события: Ошибка
Источник события: MSExchangeTransport
Категория события: Протокол SMTP
Код события: 7010
Дата: 1/13/2004
Время: 5:43:49 PM
Пользователь: Н/Д Компьютер: имя_компьютера
Описание: Это журнал протокола SMTP для идентификатора 1 виртуального сервера, подключение №30. Клиент « 6.5.2.4» отправил команду «xexch50», а протокол SMTP ответил сообщением «504 need to authenticate first». Полностью отосланная команда выглядела как «xexch50 1092 2». Возможно, это вызвало ошибку подключения. Эти события указывают, что приемник протокола XEXCH50 вызван, однако обмен блоками не удался между двумя серверами, указанными в событиях.

Примечание. События с кодами 7004 и 7010 будут зарегистрированы только в том случае, если для источника события MSExchangeTransport будет установлен средний или более высокий уровень диагностического протоколирования.

Решение

Для решения проблемы необходимо выполнить следующие действия.
  1. Убедитесь, что в организации включена встроенная проверка подлинности Windows на виртуальных серверах SMTP на компьютерах с сервером Exchange. Если это не так, выполните следующие действия.
    1. В диспетчере Exchange System Manager разверните вкладку Административные группы, затем разверните Серверы, после чего разверните Имя сервера обмена, щелкните вкладку Протоколы, а затем разверните SMTP.
    2. Щелкните правой кнопкой мыши виртуальный сервер SMTP. (По умолчанию он называется Default SMTP Virtual Server.)
    3. Выберите пункт Свойства, откройте вкладку Доступ и нажмите кнопку Проверка подлинности. Убедитесь, что флажок Встроенная проверка подлинности установлен.
  2. Если встроенная проверка подлинности Windows включена, но события продолжают появляться, то, возможно, отправляющий сервер (в событии 7004 или 7010) не имеет или ему отказано в праве SendAs на принимающем сервере. Если эти события наблюдаются и на отправляющем, и на принимающем сервере, то, возможно, у них нет права SendAs в отношении друг друга. Право SendAs не назначается явно. Как правило, оно наследуется через членство в группе Exchange Domain Servers (EDS). Если группа EDS не имеет запрещающей записи управления доступом (Access Control Entry, ACE), то, возможно, сервер, на котором возникает проблема, входит в другую группу, которая имеет запрещающую запись ACE, или группа EDS входит в другую группу, которая имеет запрещающую запись ACE. Для успешного выполнения команда XEXCH50 должна иметь право SendAs для серверов в организации Exchange.
  3. Проверьте, используется ли протокол TLS (Transport Layer Security) и безопасный канал между серверами в организации Exchange. В этом случае обработчики событий протокола STARTTLS запускаются раньше команды AUTH. Команда XEXCH50 завершается с ошибкой на протяжении сеанса позже по причине отсутствия команды AUTH.
  4. Если проверка подлинности EXPS (Exchange Protocol Security) между серверами функционирует неправильно, команда XEXCH50 работать не будет. Регистрация в журнале приложений событий 1704 и 1706 свидетельствует о сбоях проверки подлинности EXPS.

    Тип события: Предупреждение.
    Источник события: Событие MSExchangeTransport
    Категория: Протокол SMTP
    Код события: 1706
    Описание:
    EXPS временно не может обеспечить безопасность протокола при помощи
    "<ServerName>.<Domain>.com". "CSessionContext::OnEXPSInNegotiate" вызвала
    "HrServerNegotiateAuth", которая вызвала ошибку с кодом 0x8009030c
    ( i:\transmt\src\smtpsink\exps\expslib\context.cpp@1462 ).
    Данные: 0000:
    0c 03 09 80 ...?

    Примечание. Код ошибки 0x8009030c соответствует коду Hresult SEC_E_LOGON_DENIED.

    Такие неполадки с трудом поддаются устранению, поскольку для передачи команды AUTH требуются учетные данные Microsoft Windows для EXPS. Для устранения неполадок, которые характеризуются регистрацией событий с кодами 7006 и 7004, используется несколько средств, включая NLTEST и NETDOM. Действия по устранению неполадок включают сброс паролей учетных записей компьютеров.

    Если, как описано ранее, в журнале приложений регистрируются события с кодами 7006 и 7004 и не удается определить источник ошибки, используя проверку подлинности EXPS, обратитесь в службу технической поддержки корпорации Майкрософт. Если в журнале приложений одновременно не регистрируются события с кодами 7006 и 7004, перейдите к выполнению действия 5. Дополнительные сведения о проверке подлинности EXPS см. в разделе «Дополнительная информация».
  5. Проверьте, защищены ли серверы в организации Exchange межсетевыми экранами или антивирусными средствами. Если используется межсетевой экран, то, возможно, именно он вызывает возникновение описанной проблемы. Чтобы проверить это, временно отключите межсетевой экран.

Дополнительная информация

Дополнительные сведения о включении диагностического протоколирования транспорта см. в следующих статьях базы знаний Майкрософт.
821910 Устранение неполадок транспорта в Exchange Server 2003 (Эта ссылка может указывать на содержимое полностью или частично на английском языке)
257265 Общие сведения об устранении неполадок транспорта в Exchange 2000 Server и в Exchange Server 2003 (Эта ссылка может указывать на содержимое полностью или частично на английском языке)

Другие случаи появления события с кодом 7004 и ошибки 504

Событие с кодом 7004 с ошибкой 504 появляется, если сервер, указанный в описании события 7004, является компьютером с Exchange 2000 Server или Exchange Server 2003 в другой организации Exchange и отсутствует соединитель, настроенный на доверительные отношения между лесами организаций Exchange. Дополнительные сведения о реализации доверительных отношений между лесами см. в следующей статье базы знаний Майкрософт:
828770 Функция разрешения имен анонимных отправителей в Microsoft Exchange 2003 (Эта ссылка может указывать на содержимое полностью или частично на английском языке)
Примечание. В статье 828770 см. раздел «Проверка подлинности для нескольких лесов».

Код события 7004 с ошибкой 504 появляется, если сервер является внешним сервером Интернета (Exchange 2000 Server или Exchange Server 2003).

Если на сервере Exchange 5.5 установлен файл Msexcimc.exe (версия 5.5.2657.72 или более поздняя) соединителя почтовой службы Интернета (Internet Mail Service, IMS) и сервер Exchange 5.5 входит в домен электронной почты, который является внешним по отношению к компьютеру-отправителю с Exchange 2000 Server или Exchange Server 2003, то получающий соединитель почтовой службы Интернета Exchange 5.5 не сможет интерпретировать команду XEXCH50 от компьютера-отправителя Exchange Server. Событие 7004 с ошибкой «505 Authentication required» регистрируется в журнале приложений на передающем компьютере с Exchange Server в том случае, когда электронная почта отправляется с компьютера Exchange 2000 Server или с Exchange Server 2003 на компьютер Exchange 5.5 Server во внешнем домене электронной почты через Интернет. Для решения проблемы запретите отправку команды XEXCH50 из организации Exchange, где располагается компьютер Exchange 2000 Server или Exchange Server 2003.

Для решения этой проблемы на компьютере Exchange 2000 Server или Exchange Server 2003 присвойте параметру реестра SuppressExternal значение 1. Этот параметр позволяет запретить серверу Exchange Server отправку команды XEXCH50 за пределы организации Exchange. Дополнительные сведения о создании параметра реестра SuppressExternal и присвоении ему значения 1 см. в следующей статье базы знаний Майкрософт:
818222 При отправке электронной почты в удаленный домен исходящие сообщения остаются в очереди до создания отчета о невозможности доставки (Эта ссылка может указывать на содержимое полностью или частично на английском языке)

Дополнительные признаки, которыми может сопровождаться появление событий с кодами 7004 и 7010

Если команда XEXCH50 работает неправильно (на что указывают события 7004 и 7010), возможно следующее поведение:
  • Нарушается репликация общей папки на компьютеры Exchange 2000 Server и Exchange Server 2003.
  • Нарушается доставка электронной почты в общие папки.
  • Стандартное ведение журнала сообщений не работает или сообщения в журнале дублируются. Дополнительные сведения об устранении неполадок, связанных с ведением журнала сообщений, см. в следующей статье базы знаний Майкрософт:
    843105 Устранение неполадок, связанных с ведением журнала сообщений в Exchange Server 2003 и в Exchange 2000 Server (Эта ссылка может указывать на содержимое полностью или частично на английском языке)
  • Ведение журнала конвертов работает неправильно (если эта функция используется в организации Exchange для отчетов).
  • Параметры отчета о доставке для групп распространения работают неправильно.
  • Расширение группы распространения работает неправильно.
  • Разрешения и ограничения группы распространения не работают надлежащим образом.
  • Почтовые сообщения в скрытые группы распространения не работают надлежащим образом.
  • Сообщения получателям, указанным в поле «Копия», дублируются.
  • Функция Intelligent Message Filtering (IMF) не работает надлежащим образом.

Дополнительные сведения о XEXCH50

XEXCH50 – это расширение Exchange ESMTP, которое используется для ретрансляции определенных свойств, например свойств конвертов, сообщений и получателей. Команда XEXCH50 является короткой. Команда XEXCH50 после получения сообщения об успешном выполнении завершается большим двоичным объектом (BLOB) переменного размера. (Размер соответствует первому аргументу команды XEXCH50.)

Дополнительные сведения о протоколе TLS и команде STARTTLS

Команда STARTTLS описана в спецификации RFC 2487 SMTP Service Extension for Secure SMTP over TLS. Для просмотра спецификации RFC обращайтесь на веб-узел группы IETF по адресу:
ftp://ftp.ietf.org/rfc/rfc2487.txt
Примечание. Для защиты обмена данными можно настроить службу Microsoft SMTP на шифрование трафика SMTP с помощью протокола Transport Layer Security (TLS). Эта задача возложена на команду STARTTLS протокола SMTP.

Дополнительные сведения о команде EXPS

Xx-EXPS — это команда, которая относится только к серверу Exchange Server и похожа на команду AUTH. Синтаксис команд и ответов зависит от выбранного пакета AUTH, например LOGON, , GSSAPI и т. д. Дополнительные сведения см. в спецификации RFC, посвященной команде AUTH.

Хотя команда EXPS и отвечает за проверку подлинности EXPS, единственный протокол, к которому она обращается, — это протокол SMTP. Некоторые команды из числа использующихся в Exchange 2000 Server и Exchange Server 2003 характерны только для этих продуктов и объединены с командами ESMTP. Такие команды называются ESMTP X. Дополнительные сведения о командах ESMTP X см. в следующей статье базы знаний Майкрософт:
812455 Определения команд, которые используются для взаимодействия между двумя серверами Exchange (Эта ссылка может указывать на содержимое полностью или частично на английском языке)
Если имя ehlo, которое отсылается и объявляется, не может быть обнаружено в организации Exchange, возможности проверки подлинности GSSAPI (EXPS) принимающего сервера останутся неизменными. Имя ehlo будет проигнорировано, так как никогда не объявлялось. Кроме того, отсылающий сервер не будет выполнять проверку подлинности.

Трассировка с помощью сетевого монитора показала, что отсылающий сервер никогда не выполняет проверку подлинности GSSAPI и выдает сообщение об ошибке «504 need to authenticate» протокола SMTP после команды XEXCH50. Для исправления этой проблемы убедитесь в наличии верного, полностью пригодного имени домена FQDN) в свойствах виртуального сервера SMTP.

Для настройки параметров отправки для виртуального сервера SMTP выполните следующие действия.
  1. Нажмите кнопку Пуск, выберите в меню Программы пункт Microsoft Exchange, а затем – System Manager.
  2. Если флажок Отображать административные группы установлен, последовательно разверните узлы Административные группы, а затем Первая административная группа.

    Для отображения административных групп щелкните правой кнопкой мыши Ваша_организация, затем Свойства, потом выберите окно Отображать административные группы, после чего дважды щелкните кнопку OK и повторно запустите диспетчер Exchange System Manager.
  3. Разверните вкладку Серверы, затем разверните Ваш_Сервер_Exchange, разверните вкладку Протоколы, а затем щелкните пункт SMTP.
  4. На правой панели щелкните правой кнопкой мыши элемент Виртуальный сервер SMTP по умолчанию и щелкните пункт Свойства.
  5. Откройте вкладку Отправка и нажмите кнопку Дополнительно.
  6. Убедитесь, что значение, указанное в окне Полностью определенное доменное имя, является текущим значением полного доменного имени сервера.
Примечание. Полное доменное имя может быть либо именем сетевой системы ввода-вывода (NetBIOS), либо полностью определенным доменным именем.

Если имя, указанное в окне Полностью определенное доменное имя, было изменено для подмены ответного имени 220 или имен в принятых заголовках RFC 2821, проблемы, перечисленные в разделе «Проблема», являются некоторым результатом.

Вдобавок убедитесь в отсутствии отброшенных пакетов между серверами. Убедитесь, что брандмауэр не блокирует запрос особой формы SMTP, например XEXCH50.

Свойства

Код статьи: 843106 - Последний отзыв: 26 ноября 2007 г. - Revision: 5.2
Информация в данной статье относится к следующим продуктам.
  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange 2000 Enterprise Server
  • Microsoft Exchange 2000 Server Standard Edition
Ключевые слова: 
kbprb KB843106

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com