בעיה בחיבור RDP מרוחק לשרתי Windows Server 2008 R2

9 ביוני 2012

10 תגובות

imageמאת: דניאל פטרי, PFE מיקרסופוסט ישראל

 

לאחרונה נתקלתי בבעיה מעצבנת למדי בעת חיבור RDP לשרתי Windows Server 2008 R2. השרתים (במקרה שלי מדובר היה דווקא ב- Domain Controllers) הפסיקו לאפשר לאדמיניסטרטור להתחבר אליהם מרחוק באמצעות RDP, מה שחייב גישה פיזית לשרת עצמו, שימוש במנגנון ניהול מרחוק אחר (לדוגמה HP iLO ואחרים) או במידה ומדובר במכונה וירטואלית – גישה באמצעות Console הניהול של מוצר הוירטואליזציה הרלוונטי.

חשוב לציין שבמקרה זה לא מדובר בשרתי טרמינל במלוא מובן המילה, אלא בשרתים רגילים שהופעלה בהם האופציה לגישה לניהול מרחוק באמצעות RDP.

אחרי חפירה במאמרים ומקורות מידע נוספים עליתי על פתרון לבעיה, ועל מנת לחסוך מכם את אותה התברברות החלטתי לכתוב על כך פה.

הבעיה

הסימפטומים לתקלה כוללים את הנתונים הבאים:

1. יוזר בעל הרשאות אדמיניסטרטיביות שהיה מסוגל להתחבר מרחוק ולנהל את אותו שרת במשך חודשים ארוכים, לפתע מתלונן על כך שהשרת הפסיק לאפשר לו להתחבר.

הערה: עושה רושם שהתקלה עשוייה להתרחש גם במכונות עם Windows 7 ו- RDP מופעל.

2. בעת החיבור, נפתח חלון ה- MSTSC בצורה תקינה. היוזר מכניס את שם המשתמש והסיסמה, ונראה כאילו החיבור מצליח, אך לפני ששולחן העבודה עולה, קופצת הודעת שגיאה בנוסח הבא:

The connection to the remote computer was broken. This may have been caused by a network error. Please try connecting to the remote server again.

לאחר מכן החיבור נכשל וחלון ה- MSTSC נסגר.

3. בעת בדיקת ה- Services, עולה כי ה- Remote Desktop Service נמצא במצב Stopped.

image

4. אם מפעילים את ה- Remote Desktop Service מחדש, החיבור מתאפשר שוב לרגע, עד הודעת השגיאה המופיעה בסעיף 2. ה- Service כושל שוב. איתחול השרת פותר, לפעמים, את הבעיה למשך זמן מה.

5. בדיקה ב- Event Viewer מעלה את הממצאים הבאים:

Log Name:      Application
Source:        Application Error
Date:          04/06/2012 14:11:38
Event ID:      1000
Task Category: (100)
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <servername>
Description:
Faulting application name: svchost.exe_TermService, version: 6.1.7600.16385, time stamp: 0x4a5bc3c1
Faulting module name: rdpcorekmts.dll, version: 6.1.7600.16952, time stamp: 0x4f1f9e66
Exception code: 0xc0000005
Fault offset: 0x000000000000a793
Faulting process id: 0x22e8
Faulting application start time: 0x01cd4242c6fd4162
Faulting application path: C:\Windows\System32\svchost.exe
Faulting module path: C:\Windows\system32\rdpcorekmts.dll

בנוסף:

Log Name:      System
Source:        Service Control Manager
Date:          04/06/2012 14:12:12
Event ID:      7011
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <servername>
Description:
A timeout (30000 milliseconds) was reached while waiting for a transaction response from the TermService service.

וגם:

Log Name:      System
Source:        Service Control Manager
Date:          04/06/2012 14:12:40
Event ID:      7034
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <servername>
Description:
The Remote Desktop Services service terminated unexpectedly.  It has done this 4 time(s).

ועוד:

Log Name:      System
Source:        Service Control Manager
Date:          04/06/2012 14:12:10
Event ID:      7011
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <servername>
Description:
A timeout (30000 milliseconds) was reached while waiting for a transaction response from the UmRdpService service.

הפתרון

הפתרון נשמע מוזר מעט, אבל נסתרות הן דרכי האל… מתברר שמדובר בשני Windows Updates שהותקנו על המערכות, ועצם התקנתם בסדר מסויים גרמה לתקלה:

KB 2621440
KB 2667402

שני עידכונים אלה ירדו אל השרתים, במידה ואיפשרתם עידכון אוטומטי, במסגרת MS012-20, מתישהו סביב אמצע מרץ 2012 (בכפוף להגדרות שלכם).

העידכונים עצמם הם Security Updates מסוג Important ולא Critical, כך שיש סיכוי שאצל חלקכם הם אינם מותקנים. בידקו זאת אצלכם.

אם כן, עלינו להסיר את שני ה- KBים האמורים, ולאתחל את המחשב.

ראשית את KB 2667402:

image

image

ואתחל את השרת.

image

לאחר מכן את KB 2621440:

image

image

ולאתחל את השרת.

image

לאחר האיתחול עלינו להתקין את שני ה- KBים לפי הסדר הבא:

ראשית את KB 2667402 (אם שני העידכונים מופיעים ביחד כמו בצילום מסך זה, אנא סמנו רק את KB 2667402):

image

image

אתחלו את השרת:

image

לאחר מכן את KB 2621440:

image

image

אתחלו את השרת:

image

הבעיה נפתרה.

 

דניאל פטרי משמש כ- Premier Field Engineer במיקרוסופט ישראל מזה כשנה ועוסק בעיקר ב- Active Directory, Remote Desktop Services ו- Hyper-V. קודם לכן יצר וכתב את אחד מאתרי המידע הפופולריים בעולם – www.petri.co.il, שימש כיועץ עצמאי ללקוחות רבים בארץ ובחו"ל, והחזיק בתואר MVP של מיקרוסופט במשך 8 שנים.

 

 

 

 

הוסף תגובה
facebook linkedin twitter email

כתיבת תגובה

האימייל לא יוצג באתר. (*) שדות חובה מסומנים

10 תגובות

  1. ליאור13 ביוני 2012 ב 16:43

    נשמע מצוין, לא ברור למה זה אמור לקרות, אבל הכי חשוב בהפתרון קיים.
    הבעיה שלי היא עם נושא הגישה המרוחקת מרובת המשתמשים.
    ב WIN7 לא ניתן לגשת במקביל ב RDP תוך שימוש באותו יוזר.
    ישנם work arounds ברשת שכוללים שימוש ב PATCH מסוים.
    השאלה, האם יש דרך מסודרת לאפשר גישה במקביל? מיקרוסופט פרסמה משהו מסודר בנושא?
    תודה מראש,
    ליאור

    להגיב
  2. HaimL13 ביוני 2012 ב 19:34

    זה יכול לקרות גם את מבצעים עדכונים אוטומטיים למערכת הפעלה 2008 R2 ולאחר מכן מתקינים SP1 …..קרה לי לפני שבועים דווקא על שרתי SQL, מתחברים רואים מסך של WELCOME למשך כ 5 – 10 שניות ונזרקים …

    להגיב
  3. Danielp13 ביוני 2012 ב 23:21

    ליאור – אני לא חושב שמיקרוסופט יכולים להוציא "משהו מסודר" בנושא, וזה משום שהקומבינה שאותה הזכרת אינה פיצ'ר של מערכת ההפעלה, ויש מצב (אני לא מומחה בעניין – ט.ל.ח) שזה אפילו מנוגד ל- EULA.

    להגיב
  4. יקיר19 ביוני 2012 ב 8:51

    היי דניאל,
    ביצעתי את ההצעה שלך על 2 מחשבים שונים אחד 2008 R2 והשני 7.
    בשתיהם הופיעה הבעיה לאחר ביצוע העידכונים כשהמחשב עולה או שמחברים כבל רשת יש לו בעיה בלקבל DHCP. או שלוקח לו כמה דקות וזה מסתדר או שהוא מקבל APIPA. בוצע fix network, והתקנה מחדש של הכרטיס רשת- לא עזר.

    יש לך רעיון מה גורם לזה ואיך לסדר את זה?

    תודה רבה,
    יקיר

    להגיב
  5. דניאל פטרי19 ביוני 2012 ב 9:19

    יקיר – אתה אומר שמדובר שם בבעיית רשת? כלומר זו לא בדיוק אותה בעיה כפי שמתואר כאן, כי כאן לא היתה בעיה לקבל כתובת IP. אם כן, תנסה לאסוף קצת יותר מידע ואני אנסה לעזור.

    להגיב
  6. יקיר19 ביוני 2012 ב 10:00

    הבעיה שקיימת אצלי כרגע נגרמה כנראה כתוצאה מהסרה והתקנה מחדש של העידכונים הנ"ל בשתי מחשבים שונים כשלפני הם היו תקינים.
    בWIN7 שהוא מחשב נייד שמתי לב שאם אני מתחבר ל WIFI ואז מחבר את הכבל רשת הוא מקבל IP תקין.

    להגיב
  7. אורן28 ביוני 2012 ב 10:28

    תודה על המאמר, בודק אצלי,
    אם כי אצלי הבעיה קצת שונה,
    גם מול שרתי TS מלאים, מקבל ניתוקים/ניתוקונים, ולפעמים מסך שחור לכמה שניות, ואז חוזר, או עם ההודעה של ה disconnect, ומספר נסיונות ואז חוזר.
    התופעה מ windows 7.
    מישהו?
    תודה.

    להגיב
  8. טל28 ביוני 2012 ב 13:00

    עוד לא נתקלתי בבעיית חיבור RDP לשרתי Windows Server 2008 R2 בכל מקרה מדריך מפורט ומעניין תודה רבה :)

    להגיב
  9. win28 ביוני 2012 ב 15:08

    למה אתה רוצה להשתלט עליהם ? הם מתפרעים ?

    להגיב
  10. שחר28 ביוני 2012 ב 19:58

    מתוך ניסיון שלי – ולאלו ללא פיתרון קונסול צד שלישי שמחייב הגעה לשרת הפיסי ובכל זאת רוצים פיתרון מרחוק
    ממליץ להשתמש בpsexec עבור הסרה של העדכונים או עם פקודת wmi

    wmic /node: /user: process call create "powershell wusa /uninstall /kb:2667402 /quiet /forcerestart"

    בהצלחה
    שחר

    להגיב