Inaktivera fjärradministration av DNS Server-tjänsten i Windows Server 2003 och Windows 2000 Server

Artikelöversättning Artikelöversättning
Artikel-id: 936263 - Visa produkter som artikeln gäller.
Viktigt! Denna artikel innehåller information om hur du redigerar registret. Säkerhetskopiera registret innan du gör några ändringar i det. Se till att du vet hur du återställer registret om det uppstår ett problem. Om du vill ha mer information om hur du säkerhetskopierar, återställer och förändrar registret klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
256986 Beskrivning av registret i Microsoft Windows
Visa alla | Dölj alla

På den här sidan

INLEDNING

I den här artikeln beskrivs hur du inaktiverar DNS-fjärrhantering av en DNS-server där något av följande operativsystem körs:
  • Microsoft Windows Server 2003
  • Microsoft Windows 2000 Server
Du kan använda metoden som beskrivs i den här artikeln för att öka säkerheten för datorer med DNS Server-tjänsten i en organisation.

Mer information om ett problem som berör DNS Server-tjänsten i Windows Server 2003 och Windows 2000 Server finns på följande Microsoft-webbplats:
http://www.microsoft.com/technet/security/Bulletin/MS07-029.mspx

Mer Information

Översikt

DNS Server-tjänsten tillåter som standard fjärrhantering med många gränssnitt. När DNS Server-tjänsten startar har den en bindning till en dynamisk port i det tillfälliga området. Denna port används av MMC-snapin-modulen (Microsoft Management Console) för DNS och av WMI-providern (Windows Management Instrumentation) för DNS. Du kan använda följande registerpost för att ange om DNS Server-tjänsten ska tillåta fjärrhantering:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters


Värde: RpcProtocol
Värdetyp: REG_DWORD
Data: 0x4
Följande värden är tillgängliga för registerposten RpcProtocol:
  • 0x1
    Detta värde motsvarar inställningen DNS_RPC_USE_TCPIP.
  • 0x2
    Detta värde motsvarar inställningen DNS_RPC_USE_NAMED_PIPE.
  • 0x4
    Detta värde motsvarar inställningen DNS_RPC_USE_LPC.
Obs! Värdet 0x4 begränsar DNS-RPC-gränssnittet till enbart lokala proceduranrop. Detta möjliggör endast lokal hantering.

Följden av att inaktivera fjärrhantering

När du ger registerposten RpcProtocol värdet 0x4 inaktiveras fjärrhantering av DNS Server-tjänsten. Därför kan du inte använda RPC eller WMI (Windows Management Instrumentation) för att hantera DNS-servern. I det här fallet fungerar inte längre verktygen för DNS-serverhantering från en annan plats. Du kan emellertid fortfarande använda lokala hanteringsverktyg för att hantera DNS-servern, och du kan fortfarande utföra fjärrhantering av DNS-servern med hjälp av en Terminal Services-anslutning.

Om du ger RpcProtocol värdet 0x4 påverkar det inte DNS-frågor, dynamiska DNS-uppdateringar, DNS-zonöverföringar och så vidare.

Obs! Lokal administration och konfiguration av DNS Server-tjänsten fungerar kanske inte under följande förhållanden:
  • Servern du vill hantera har ett värdnamn med 15 tecken.
  • Du väljer servern genom att använda dess värdnamn.
Lös det här problemet genom att ange datorns fullständigt kvalificerade domännamn (FQDN) när du hanterar den med hjälp av DNS-serveradministrationsverktygen.

Så inaktiverar du fjärrhantering av DNS Server-tjänsten

Varning! Det kan uppstå allvarliga problem vid felaktiga ändringar av registret med hjälp av Registereditorn eller någon annan metod. Dessa problem kan medföra att du måste installera om operativsystemet. Microsoft kan inte garantera att problemen kan lösas. Ändra registret på egen risk.

Så här inaktiverar du fjärrhantering över RPC av en dator där DNS Server-tjänsten körs:
  1. Klicka på Start, Kör, skriv regedit och klicka på OK.
  2. Leta upp och klicka på följande registerundernyckel:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters
  3. Peka på NyttRedigera-menyn, och klicka sedan på DWORD-värde.
  4. Skriv RpcProtocol i rutan Nytt värde nr 1 och tryck på RETUR.
  5. Högerklicka på RpcProtocol och klicka på Ändra.
  6. Skriv 4 i rutan Data, och klicka sedan på OK.
  7. Avsluta Registereditorn och starta om DNS Server-tjänsten så här:
    1. Klicka på Start, Kör, skriv cmd och klicka på OK.
    2. Skriv följande kommando vid kommandotolken och tryck på RETUR:
      net stop dns && net start dns

Så distribuerar du registervärdet RpcProtocol till många datorer

Du kan använda ett skript för att distribuera registervärdet RpcProtocol. På så vis kan du enklare inaktivera fjärrhantering av DNS Server-tjänsten på många datorer. Gör så här:
  1. Logga in i domänen med ett konto som har rättigheter att ändra DNS-servrarna. Du kan till exempel logga in som domänadministratör.
  2. Skapa en lista över alla DNS-servrar genom att köra följande kommando vid en kommandotolk:
    dsquery * -filter "(servicePrincipalName=DNS*)" -attr dNSHostName -l > dns_servers.txt
    Redigera om det behövs filen dns_servers.txt manuellt, så att alla DNS-servrar anges. Det här kommandot omfattar till exempel bara domänkontrollanter som är konfigurerade som DNS-servrar. Därför måste du manuellt lägga till DNS-servrar som är konfigurerade som medlemsservrar.

    Obs! Du kan använda fliken Namnservrar i dialogrutan Egenskaper för DNS-zon för de olika zonerna i DNS-snapin-modulen för att fastställa namnen på DNS-servrarna som ska läggas till i listan.
  3. Om det behövs använder du kommandot cd vid kommandotolken för att växla till katalogen där du sparade filen dns_servers.txt.
  4. Skriv följande kommando och tryck sedan på RETUR:
    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
    Med det här kommandot lägger du till registerposten RpcProtocol tillsammans med värdet 0x4.
  5. Stoppa DNS Server-tjänsten på alla datorer genom att skriva följande kommando och trycka på RETUR:
    for /f %i in (dns_servers.txt) do sc \\%i stop DNS
  6. Starta DNS Server-tjänsten på alla datorer genom att skriva följande kommando och trycka på RETUR:
    for /f %i in (dns_servers.txt) do sc \\%i start DNS

Så kontrollerar du att registerposten RpcProtocol har angetts på många datorer

Så här frågar du servrarna och kontrollerar att registerposten RpcProtocol har angetts:
  1. Logga in på en DNS-server där registerposten RpcProtocol har angetts.
  2. Kopiera följande skript till en textfil och ge sedan filen namnet 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
    Obs! I det här skriptet jämförs registerundernyckeln Parameters på fjärrdatorerna med samma registerundernyckel på datorn där du kör skriptet.

    Viktigt! Det får inte finnas några avslutande blankstegstecken i skriptet.
  3. Kör filen Dnsquery.cmd genom att dubbelklicka på den.

Så tar du bort registervärdet RpcProtocol från många datorer

Så här ångrar du åtgärden som anger registervärdet RpcProtocol:
  1. Logga in i domänen med ett konto som har rättigheter att ändra DNS-servrarna. Du kan till exempel logga in som domänadministratör.
  2. Starta en kommandotolk, och använd sedan kommandot cd för att växla till katalogen där du sparade filen Dns_servers.txt.
  3. Skriv följande kommando och tryck sedan på RETUR:
    for /f %i in (dns_servers.txt) do reg delete \\%i\HKLM\SYSTEM\CurrentControlSet\Services\DNS\Parameters /v RpcProtocol /f
  4. Stoppa DNS Server-tjänsten på alla datorer genom att skriva följande kommando och trycka på RETUR:
    for /f %i in (dns_servers.txt) do sc \\%i stop DNS
  5. Starta DNS Server-tjänsten på alla datorer genom att skriva följande kommando och trycka på RETUR:
    for /f %i in (dns_servers.txt) do sc \\%i start DNS

Egenskaper

Artikel-id: 936263 - Senaste granskning: den 12 maj 2007 - Revision: 2.1
Informationen i denna artikel gäller:
  • Microsoft Windows Server 2003 Standard Edition
  • Microsoft Windows Server 2003 Enterprise Edition
  • Microsoft Windows Server 2003 Datacenter Edition
  • 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
Nyckelord: 
kberrmsg kbhowto kbinfo kbtshoot kbregistry KB936263

Ge feedback

 

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