ISA Server 2006 eller Forefront TMG 2010 återställs anslutningen till SMTP-klient när SMTP-servern stängs anslutningen till ISA Server

Symptom

Tänk dig följande situation:

  • I Microsoft Internet Security and Acceleration (ISA) Server 2006 eller Forefront TMG 2010 aktivera SMTP-filtrering.

  • En SMTP-klient kommunicerar med en SMTP-server via ISA Server 2006 eller Forefront TMG 2010.

  • SMTP-klient använder en av följande verb i dess konversation med SMTP-servern:

    • TLS

    • STARTA

    • X-AnonymousTLS

I det här scenariot återställer ISA Server 2006 eller Forefront TMG 2010 anslutningen till SMTP-klient när SMTP-servern stängs anslutningen till ISA Server eller Forefront TMG 2010 med ett TCP-FIN-paket. Detta kan medföra vissa specifika SMTP-klient program att rapportera att meddelandeleverans misslyckades trots att meddelanden skickas på rätt sätt. I ISA loggning finns följande resultatkoden för den här anslutningen:

0x80074e24 FWX_E_CONNECTION_KILLED

Orsak

Avsiktligt återställs anslutningen till SMTP-klient när SMTP-servern stängs anslutningen till ISA Server eller Forefront TMG 2010. Detta beror på att ISA Server eller Forefront TMG 2010 inte inspektera SMTP-trafik för SMTP- Avsluta -kommando när trafiken är krypterad. Detta kan dock medföra vissa SMTP-klientprogram att rapportera fel.

Lösning

En snabbkorrigering är nu tillgänglig för att undvika felaktig felrapporter. Den här snabbkorrigeringen gör standardbeteendet att ändras så att ISA Server returnerar ett TCP-FIN-paket till SMTP-klienten i stället för ett paket för återställning när SMTP-servern stänger TCP-anslutningen med ett TCP-FIN-paket. Om du vill ändra standardbeteende när du har installerat den här snabbkorrigeringen, måste du köra ett skript på datorn med ISA Server. Gör så här om du vill installera den här snabbkorrigeringen:

  1. Hämta och installera snabbkorrigeringspaketet som nämns i följande artikel i Microsoft Knowledge Base:

    959357 beskrivning av snabbkorrigeringspaket för ISA Server 2006: 29 oktober 2008Anmärkning: Om du kör Forefront TMG 2010 kopiera skriptet från steg 2 till en fil i anteckningar och spara den. Öppna en kommandotolk med förhöjd behörighet och kör skriptet (ie: cscript smtp.vbs).

  2. Starta Anteckningar och kopiera följande skript till en fil i anteckningar.

    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
  3. Spara filen som en Microsoft Visual Basic-skriptfilen med filnamnstillägget .vbs.

  4. Dubbelklicka på vbs-filen för att köra skriptet.

Obs! Om du vill återgå till standardinställningen, kan du ändra följande rad i skriptet:

Const SE_VPS_VALUE = true

Ändra den här raden till följande:

Const SE_VPS_VALUE = false

Köra skript på datorn med ISA Server eller Forefront TMG.

Status

Microsoft har bekräftat att detta är ett problem i Microsoft-produkterna som nämns i avsnittet ”gäller”.

Referenser

För mer information om terminologin för programuppdateringar klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:

824684 beskrivning av standardterminologin som används för att beskriva Microsoft-programuppdateringar

Behöver du mer hjälp?

Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Microsoft Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×