Проблемы
Рассмотрим следующий сценарий.
-
В Microsoft Internet Security and Acceleration (ISA) Server 2006 или Forefront TMG 2010 включите фильтрации SMTP.
-
SMTP-клиента связывается с SMTP-сервера через ISA Server 2006 или Forefront TMG 2010.
-
Клиент SMTP использует одну из следующих команд поддержания связи с SMTP-сервера:
-
TLS
-
STARTTLS
-
X-AnonymousTLS
-
В этом случае ISA Server 2006 или Forefront TMG 2010 сбрасывает соединение для SMTP-клиента при SMTP-сервер закрывает подключение к ISA Server или Forefront TMG 2010 с помощью пакета TCP FIN. Это поведение может вызвать некоторые конкретные SMTP-клиента приложения будут сообщать, что доставка сообщений не удалось, несмотря на то, что сообщения отправляются неправильно. Ведение журнала ISA, появится следующий код результата для данного подключения:
0x80074e24 FWX_E_CONNECTION_KILLED
Причина
По умолчанию подключение к SMTP-клиента сбрасывается при SMTP-сервер закрывает подключение к ISA Server или Forefront TMG 2010. Это происходит потому, что ISA Server или Forefront TMG 2010 не может проверять трафик SMTP для команды SMTP QUIT , когда трафик шифруется. Тем не менее это может привести к определенным клиентских приложений SMTP для сообщения об ошибках.
Решение
Чтобы избежать неправильного отчеты теперь доступно исправление. Это исправление позволяет по умолчанию должен быть изменен так, что ISA Server возвращает пакет TCP FIN клиента SMTP, а не перезагрузки при SMTP-сервер закрывает TCP-подключение с помощью пакета TCP FIN. Чтобы изменить поведение по умолчанию после установки данного исправления, необходимо запустить сценарий на компьютере ISA Server. Чтобы применить данное исправление, выполните следующие действия.
-
Загрузите и установите исправление, описанное в следующей статье базы знаний Майкрософт:
959357 Описание пакета исправлений для ISA Server 2006: 29 октября 2008 г.Примечание: При запуске Forefront TMG 2010 скопировать сценарий из шага 2 в текстовый файл и сохраните его. Откройте командную строку с повышенными привилегиями и выполните сценарий (ie: cscript файл smtp.vbs).
-
Запустите программу «Блокнот» и скопируйте следующий сценарий в файл блокнота.
Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "GracefulPassthroughServerShutdown"Const SE_VPS_VALUE = trueSub SetValue() ' Create the root obect. Dim root ' The FPCLib.FPC root object Set root = CreateObject("FPC.Root") 'Declare the other objects needed. Dim array ' An FPCArray object Dim VendorSets ' An FPCVendorParametersSets collection Dim VendorSet ' An FPCVendorParametersSet object ' Get references to the array object ' and the network rules collection. Set array = root.GetContainingArray Set VendorSets = array.VendorParametersSets On Error Resume Next Set VendorSet = VendorSets.Item( SE_VPS_GUID ) If Err.Number <> 0 Then Err.Clear ' Add the item Set VendorSet = VendorSets.Add( SE_VPS_GUID ) CheckError WScript.Echo "New VendorSet added... " & VendorSet.Name Else WScript.Echo "Existing VendorSet found... value- " & VendorSet.Value(SE_VPS_NAME) End If if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then Err.Clear VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE If Err.Number <> 0 Then CheckError Else VendorSets.Save false, true CheckError If Err.Number = 0 Then WScript.Echo "Done with " & SE_VPS_NAME & ", saved!" End If End If Else WScript.Echo "Done with " & SE_VPS_NAME & ", no change!" End IfEnd SubSub CheckError() If Err.Number <> 0 Then WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description Err.Clear End IfEnd SubSetValue
-
Сохраните файл как файл сценария Microsoft Visual Basic, используя расширение .vbs.
-
Дважды щелкните значок файла с расширением .vbs для выполнения сценария.
Примечание. Если вы хотите вернуться к поведению по умолчанию, измените следующую строку сценария:
Const SE_VPS_VALUE = true
Измените эту строку следующим образом:
Const SE_VPS_VALUE = false
Запустите сценарий на компьютере ISA Server или Forefront TMG.
Статус
Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".
Ссылки
Дополнительные сведения о терминах, используемых при описании обновлений программного обеспечения, см. в следующей статье базы знаний Майкрософт:
824684 Стандартные термины, используемые при описании обновлений программных продуктов Майкрософт