Symptomy
Rozpatrzmy następujący scenariusz:
-
W program Microsoft Internet Security and Acceleration (ISA) Server 2006 lub Forefront TMG 2010 możesz włączyć filtrowanie SMTP.
-
Klient SMTP komunikuje się z serwerem SMTP za pośrednictwem programu ISA Server 2006 lub Forefront TMG 2010.
-
Klient SMTP używa jednego z następujących zleceń w konwersacja z serwera SMTP:
-
TLS
-
STARTTLS
-
X-AnonymousTLS
-
W tym scenariuszu program ISA Server 2006 lub Forefront TMG 2010 resetuje połączenie do klienta SMTP serwera SMTP powoduje zamknięcie połączenia z programem ISA Server i Forefront TMG 2010 z pakietów TCP FIN. Takie zachowanie może powodować niektóre szczególne klient SMTP aplikacje mogą zgłaszać, że dostarczanie wiadomości nie powiodła się, mimo, że wiadomości są wysyłane prawidłowo. Podczas rejestrowania ISA, zobacz następujący kod wyniku dla tego połączenia:
0x80074e24 FWX_E_CONNECTION_KILLED
Przyczyna
Zgodnie z projektem połączenie klient SMTP jest resetowany serwer SMTP powoduje zamknięcie połączenia z programem ISA Server i Forefront TMG 2010. Jest tak, ponieważ program ISA Server lub Forefront TMG 2010 nie można sprawdzić ruch SMTP dla polecenia SMTP QUIT , gdy ruch jest zaszyfrowany. Jednak może to spowodować określone aplikacje klient SMTP raportowanie błędów.
Rozwiązanie
Aby uniknąć błędu niepoprawne raporty udostępniono poprawkę. Ta poprawka umożliwia zachowanie domyślne, aby zostać zmienione tak, że program ISA Server zwraca pakiet TCP FIN klientowi SMTP zamiast pakietów RESETOWANIA serwera SMTP powoduje zamknięcie połączenia TCP z pakietów TCP FIN. Aby zmienić zachowanie domyślne, po zainstalowaniu tej poprawki, należy do uruchomienia skryptu na komputerze z programem ISA Server. Aby zastosować tę poprawkę, wykonaj następujące kroki:
-
Pobierz i zainstaluj pakiet poprawek, który jest wymieniony w następującym artykule bazy wiedzy Microsoft Knowledge Base:
959357 Opis pakietu poprawek dla programu ISA Server 2006: 29 października 2008Uwaga: Jeśli używasz programu Forefront TMG 2010, skopiuj skrypt w kroku 2 do pliku Notatnika i zapisz go. Otwórz wiersz polecenia z podwyższonym poziomem uprawnień, a następnie uruchom skrypt (ie: cscript smtp.vbs).
-
Uruchom Notatnik, a następnie skopiuj poniższy skrypt do pliku Notatnika.
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
-
Zapisz plik jako plik skryptu języka Microsoft Visual Basic przy użyciu rozszerzenia nazwy pliku vbs.
-
Kliknij dwukrotnie plik VBS, aby uruchomić skrypt.
Uwaga Jeśli chcesz powrócić do domyślnego zachowania, zmień następujący wiersz skryptu:
Const SE_VPS_VALUE = true
Zmień ten wiersz na następujący:
Const SE_VPS_VALUE = false
Następnie należy ponownie uruchomić skrypt na komputerze z programem ISA Server lub Poruszać.
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji „Dotyczy”.
Informacje
Aby uzyskać więcej informacji dotyczących terminologii aktualizacji oprogramowania, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
824684 Opis standardowej terminologii używanej do opisywania aktualizacji oprogramowania firmy Microsoft