תופעות
שקול את התרחיש הבא:
-
אבטחת אינטרנט של Microsoft האצת בארכיטקטורת 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 או Forefront TMG 2010 מנה סנפיר של TCP. אופן פעולה זה יכול לגרום מסוימים לקוח 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 ללקוח SMTP במקום מנה איפוס כאשר שרת ה-SMTP סוגרת את החיבור TCP עם מנה סנפיר של TCP. כדי לשנות את התנהגות ברירת המחדל לאחר שתתקין תיקון חם זה, עליך להפעיל קובץ script במחשב ISA Server. כדי להחיל תיקון חם זה, בצע את הפעולות הבאות:
-
הורד ולאחר מכן התקן את חבילת התיקון החם המוזכר במאמר הבא מתוך מאגר הידע Microsoft Knowledge Base:
959357 תיאור חבילת התיקון החם עבור ISA Server 2006: 29 באוקטובר 2008הערה: אם אתה מפעיל Forefront TMG 2010, להעתיק את קובץ ה-script משלב 2 לתוך קובץ ' פנקס רשימות ' ושמור אותו. פתח שורת פקודה עם הרשאות מלאות ולאחר מכן להפעיל את קובץ ה-script (ie: cscript smtp.vbs).
-
הפעל את פנקס הרשימות, ולאחר מכן העתק את קובץ ה-script הבא לתוך קובץ פנקס רשימות.
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
-
שמור את הקובץ כקובץ script Microsoft Visual Basic באמצעות הסיומת של שם קובץ vbs.
-
לחץ פעמיים על הקובץ .vbs כדי להפעיל את קובץ ה-script.
הערה אם ברצונך לחזור להתנהגות ברירת המחדל, לשנות את השורה הבאה של קובץ ה-script:
Const SE_VPS_VALUE = true
שנה שורה זו לשורה הבאה:
Const SE_VPS_VALUE = false
לאחר מכן, הפעל מחדש את קובץ ה-script במחשב ISA Server או Forefront TMG.
מצב
Microsoft אישרה כי מדובר בבעיה במוצרי Microsoft הרשומים במקטע 'חל על'.
הפניות
לקבלת מידע נוסף על מינוח עדכוני התכנה, לחץ על מספר המאמר הבא כדי להציג את המאמר הרלוונטי מתוך Microsoft Knowledge Base:
824684 תיאור המינוח הרגיל המשמש לתיאור עדכוני התוכנה של מיקרוסופט