כיצד להפוך ללא זמין ניהול מרחוק של שירות DNS Server במסגרת Windows Server 2003 וכן Windows 2000 Server

תרגומי מאמרים תרגומי מאמרים
Article ID: 936263 - View products that this article applies to.
חשוב מאמר זה מכיל מידע על אופן שינוי הרישום. הקפד לגבות את הרישום לפני שינויו. ודא כי אתה יודע לשחזר את הרישום במקרה שתתרחש בעיה. לקבלת מידע נוסף על אופן הגיבוי, השחזור והשינוי של הרישום, לחץ על מספר המאמר שלהלן כדי להציגו מתוך מאגר הידע Microsoft Knowledge Base:
256986 תיאור הרישום של Microsoft Windows
הרחב הכל | כווץ הכל

On This Page

מבוא

מאמר זה מתאר כיצד להפוך ללא זמינה את פונקציית הניהול מרחוק באמצעות קריאה לפרוצדורה מרוחקת (RPC) של שרת DNS כאשר היא מופעלת באחת ממערכות ההפעלה שלהלן:
  • Microsoft Windows Server 2003
  • Microsoft Windows 2000 Server
באפשרותך להשתמש בשיטה המוזכרת במאמר זה על מנת לשפר את האבטחה של המחשבים בארגון בהם פועל שירות DNS Server.

למידע נוסף אודות בעיה המשפיעה על שרות DNS במערכת Windows Server 2003 וכן Windows 2000 Server, בקר באתר באינטרנט הבא של Microsoft:
http://www.microsoft.com/israel/technet/security/bulletin/ms07-029.mspx

מידע נוסף

סקירה כללית

כברירת מחדל, השירות DNS Server מאפשר ניהול מרחוק באמצעות ממשקים מרובים. עם הפעלת שירות DNS Server הוא מאגד ליציאה דינאמית בטווח הארעי. יציאה זו משמשת את יישום ה-snap-in של DNS במסוף הניהול Microsoft Management Console? (MMC), וכן את ספק DNS Windows Management Instrumentation ?(WMI). באפשרותך להשתמש בערך הרישום הבא על מנת לשלוט בקביעה אם שירות DNS Server יתיר ניהול מרחוק:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters


שם ערך: RpcProtocol
סוג ערך: REG_DWORD
נתוני ערך: 0x4
הערכים שלהלן זמינים עבור ערך הרישום RpcProtocol:
  • 0x1
    ערך זה מתאים להגדרה של DNS_RPC_USE_TCPIP
  • 0x2
    ערך זה מתאים להגדרה של DNS_RPC_USE_NAMED_PIPE
  • 0x4
    ערך זה מתאים להגדרה של DNS_RPC_USE_LPC
הערה ערך של 0x4 מגביל את ממשק DNS RPC לקריאות לפרוצדורות מקומיות בלבד. הדבר מאפשר ניהול מקומי בלבד.

ההשפעה של הפיכת ניהול מרחוק ללא זמין

כאשר תגדיר את ערך הרישום RpcProtocol ל-0x4, יהפוך הניהול מרחוק של שירות DNS Server ללא זמין. לכן אין באפשרותך להשתמש ב-RPC ולא ב-Windows Management Instrumentation? (WMI) לשם ניהול שרת DNS. בתרחיש זה, כלי ניהול שרת DNS לא פועלים עוד מאתר מרוחק. עם זאת, באפשרותך עדיין להשתמש בכלי ניהול מקומיים לשם ניהול שרת DNS ולבצע ניהול מרחוק של שרת DNS באמצעות חיבור שירותי מסוף.

הגדרת RpcProtocol לערך 0x4 אינה משפיעה על שאילתות DNS, עדכונים דינאמיים של DNS , העברות אזורי DNS וכולי.

הערה ניהול מקומי והגדרות תצורה של שירות DNS Server עלולים שלא לפעול אם מתקיימים התנאים הבאים:
  • השרת שברצונך לנהל הוא בעל שם מחשב מארח בן 15 תווים.
  • אתה בוחר את השרת באמצעות שם המחשב המארח שלו.
כדי לפתור בעיה זו, הקלד את שם התחום המלא (FQDN) של המחשב בעת ניהולו באמצעות כלי ניהול שרת DNS.

להפיכת ניהול מרחוק של שרות DNS Server ללא זמין

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

להפיכת ניהול מרחוק ללא זמין באמצעות פונקציונליות RPC של מחשב בו מופעל שרות DNS Server, בצע את השלבים הבאים:
  1. לחץ על התחל, לחץ על הפעלה, הקלד regedit ולאחר מכן לחץ על אישור.
  2. אתר את מפתח המשנה הבא ברישום ולאחר מכן לחץ עליו:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters
  3. בתפריט עריכה, הצבע על חדש ולאחר מכן לחץ על ערך DWORD.
  4. בתיבה ערך חדש #1, הקלד RpcProtocol ולאחר מכן הקש על ENTER.
  5. לחץ באמצעות לחצן העכבר הימני על RpcProtocol ולאחר מכן לחץ על שנה.
  6. בתיבה נתוני ערך, הקלד 4 ולאחר מכן לחץ על אישור.
  7. צא מעורך הרישום ולאחר מכן הפעל מחדש את שירות DNS Server. כדי להפעיל מחדש את שירות DNS Server, בצע את השלבים הבאים:
    1. לחץ על התחל, לחץ על הפעלה, הקלד cmd ולאחר מכן לחץ על אישור.
    2. הקלד את הפקודה הבאה בשורת הפקודה ולאחר מכן הקש ENTER:
      net stop dns && net start dns

לפריסת ערך הרישום RpcProtocol למספר מחשבים

באפשרותך להשתמש בסקריפט לפריסת ערך הרישום RpcProtocol. הדבר מאפשר לך להפוך בקלות ניהול מרחוק של שרות DNS Server ללא זמין במחשבים מרובים. לשם כך, בצע את השלבים הבאים:
  1. התחבר לתחום באמצעות חשבון שיש לו הרשאות לעדכון שרתי DNS. למשל, התחבר כמנהל תחום.
  2. צור רשימה של כל שרתי ה-DNS. לשם כך, הקלד את השורה הבאה בשורת הפקודה:
    dsquery * -filter "(servicePrincipalName=DNS*)" -attr dNSHostName -l > dns_servers.txt
    אם נדרש, ערוך ידנית את הקובץ dns_servers.txt אשר נוצר להגדרת כל שרתי DNS. לדוגמה, פקודה זו מכסה רק בקרי תחום אשר מוגדרים כשרתי DNS. לכן, עליך להוסיף באופן ידני שרתי DNS אשר מוגדרים כשרתים חברים.

    הערה באפשרותך להשתמש בכרטיסייה Name Servers בתיבת הדיאלוג DNS zone Properties עבור כל אזור ביישום ה-snap-in על מנת לקבוע את שמות שרתי DNS שברצונך להוסיף לרשימה.
  3. אם נדרש, השתמש בפקודה cd בשורת הפקודה כדי לשנות את הספרייה לספרייה שבה שמרת את הקובץ dns_servers.txt.
  4. הקלד את הפקודה הבאה ולאחר מכן הקש ENTER:
    for /f %i in (dns_servers.txt) do reg add \\%i\HKLM\SYSTEM\CurrentControlSet\Services\DNS\Parameters /v RpcProtocol /t REG_DWORD /d 4 /f
    פקודה זו מוסיפה את ערך הרישום RpcProtocol בצירוף הערך 0x4.
  5. עצור את שירות DNS Server בכל המחשבים. כדי לעשות זאת, הקלד את הפקודה הבאה ולאחר מכן הקש ENTER:
    for /f %i in (dns_servers.txt) do sc \\%i stop DNS
  6. הפעל את שירות DNS Server בכל המחשבים. כדי לעשות זאת, הקלד את הפקודה הבאה ולאחר מכן הקש ENTER:
    for /f %i in (dns_servers.txt) do sc \\%i start DNS

כדי לאמת כי ערך הרישום RpcProtocol מוגדר במספר מחשבים

כדי לבצע שאילתה מול השרתים ולאמת כי ערך הרישום RpcProtocol הוגדר, בצע את השלבים הבאים:
  1. התחבר לשרת DNS שבו מוגדר ערך הרישום RpcProtocol.
  2. העתק את קובץ ה-Script הבא לקובץ טקסט ושנה את שם הקובץ ל-Dnsquery.cmd:
    Echo Comparing registry value for: > dns_errors.txt echo HKLM\SYSTEM\CurrentControlSet\Services\DNS\Parameters >> dns_errors.txt 
    echo Data Value for "RpcProtocol" >> dns_errors.txt echo. >> dns_errors.txt echo. >> dns_errors.txt 
    Echo Errorlevel 1 - Failed to compare registry values >> dns_errors.txt 
    Echo Errorlevel 2 - Reg values compared are different >> dns_errors.txt echo. >> dns_errors.txt 
    echo. >> dns_errors.txt echo ===================================================== >> dns_errors.txt 
    set _MachineName= 
    for /f %%i in (dns_servers.txt) do ( call :TEST %%i )
    :TEST
    Set _MachineName=%1
    echo %_MachineName%
    reg.exe compare "HKLM\SYSTEM\CurrentControlSet\Services\DNS\Parameters" "\\%_MachineName%\HKLM\SYSTEM\CurrentControlSet\Services\DNS\Parameters" /v RpcProtocol
    if %_MachineName% == "" echo 0 > nul
    if %errorlevel% == 0 echo 0 > nul
    if %errorlevel% == 1 Echo Computername: %_MachineName% Errorlevel returned: 1 - Failed >> dns_errors.txt
    if %errorlevel% == 2 Echo Computername: %_MachineName% Errorlevel returned: 2 - Different >> dns_errors.txt
    :End
    rem exit
    הערה קובץ Script זה משווה את מפתח המשנה של הרישום Parameters במחשבים המרוחקים לזה שבמחשב שבו הפעלת את קובץ ה-Script.

    חשוב אסור שיהיו תווי רווח נגררים בקובץ Script זה.
  3. לחץ פעמיים על הקובץ Dnsquery.cmd כדי להפעילו.

כדי להסיר את ערך הרישום RpcProtocol ממחשבים מרובים

כדי לבטל את הפעולה המגדירה את ערך הרישום RpcProtocol, בצע את השלבים הבאים:
  1. התחבר לתחום באמצעות חשבון שיש לו הרשאות לעדכון שרתי DNS. למשל, התחבר כמנהל תחום.
  2. הפעל שורת פקודה ולאחר מכן השתמש בפקודה cd כדי לשנות את הספרייה לספרייה שבה שמרת את הקובץ dns_servers.txt.
  3. הקלד את הפקודה הבאה ולאחר מכן הקש ENTER:
    for /f %i in (dns_servers.txt) do reg delete \\%i\HKLM\SYSTEM\CurrentControlSet\Services\DNS\Parameters /v RpcProtocol /f
  4. עצור את שירות DNS Server בכל המחשבים. כדי לעשות זאת, הקלד את הפקודה הבאה ולאחר מכן הקש ENTER:
    for /f %i in (dns_servers.txt) do sc \\%i stop DNS
  5. הפעל את שירות DNS Server בכל המחשבים. כדי לעשות זאת, הקלד את הפקודה הבאה ולאחר מכן הקש ENTER:
    for /f %i in (dns_servers.txt) do sc \\%i start DNS

מאפיינים

Article ID: 936263 - Last Review: יום שלישי 15 מאי 2007 - Revision: 2.1
המידע במאמר זה חל על:
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
מילות מפתח 
kberrmsg kbhowto kbinfo kbtshoot kbregistry KB936263

ספק משוב

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com