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