DNS engedélyezése HTTPS-en keresztül a DNS-kiszolgálón (előzetes verzió)

Fontos

A DNS-lekérdezések HTTPS-en keresztül (DoH) funkció a Windows Server DNS-kiszolgálóhoz jelenleg előzetes verzióban érhető el. Ezek az információk egy előzetes termékre vonatkoznak, amely a kiadás előtt jelentősen módosítható. A Microsoft nem vállal kifejezett vagy hallgatólagos szavatosságot az itt megadott információkra vonatkozóan.

Ez a cikk bemutatja, hogyan engedélyezheti a DNS-t HTTPS-en keresztül (DoH) a Windows Serveren futó DNS Server szolgáltatásban.

A hagyományos DNS-forgalom titkosítatlan, így a DNS-lekérdezések lehallgathatók, elfoghatók és manipulálhatók a hálózaton lévő támadók számára. Ha meg kell védenie az ügyfelek és a DNS-kiszolgáló közötti DNS-kommunikációt, a DoH engedélyezése https használatával titkosítja ezt a forgalmat, megakadályozva a jogosulatlan megfigyelést vagy illetéktelen módosítást.

A DoH működésével kapcsolatos további információkért lásd a DNS HTTPS-en keresztüli DNS-titkosítást.

Előfeltételek

Mielőtt hozzákezdene, győződjön meg arról, hogy:

  • Windows Server 2025 a 2026-02 biztonsági frissítéssel (KB5075899) vagy újabb verzióval telepítve

  • Hozzáférés hitelesítésszolgáltatóhoz (CA):

    • Microsoft Nagyvállalati hitelesítésszolgáltató közzétett tanúsítványsablonokkal

    Vagy

    • Külső tanúsítványszolgáltató, például DigiCert, Let's Encrypt vagy Verisign
  • A DoH 443-as TCP-portján bejövő kapcsolatok engedélyezésére konfigurált tűzfalszabályok

  • Rendszergazdai vagy azzal egyenértékű hozzáférés a DNS Server szolgáltatást futtató Windows Serverhez

  • Ha HTTPS-en keresztül szeretné engedélyezni a DNS-t a DNS Server szolgáltatásban, kérjen hozzáférést a DoH használatával a Windows DNS Serveren: Nyilvános előzetes regisztráció. A kérést követően a folytatás előtt kövesse a kapott utasításokat.

A DoH-tanúsítványoknak meg kell felelniük a következő követelményeknek:

  • Bővített kulcshasználati bővítmény: Tartalmaznia kell a kiszolgálóhitelesítést (1.3.6.1.5.5.7.3.1) objektumazonosítót

  • Tárgy vagy Tárgy alternatív név (SAN): Egy aláírt tanúsítvány, amely Tárgy alternatív névvel (SAN) rendelkezik, és amelynek teljesen minősített domain neve vagy IP-címe megegyezik a konfigurált DoH URI sablonnal.

  • Titkos kulcs: A helyi számítógép tárolójában kell lennie, megfelelően kell hozzárendelni a tanúsítványhoz, és nem lehet erős titkos kulcsvédelem engedélyezve

  • Megbízhatósági lánc: Olyan hitelesítésszolgáltatónak kell kibocsátania, amelyet a DNS-kiszolgáló és a DNS-ügyfelek is megbíznak

Az összetettebb tanúsítványbeállításokat a Tanúsítványok és nyilvános kulcsok , valamint a Tanúsítványok használata című témakörben talál.

A tanúsítvány importálása

Ha már rendelkezik tanúsítvánnyal a kiszolgálón, lépjen a Tanúsítvány kötése elemre. Ellenkező esetben importálja a tanúsítványt a kiszolgálóra.

  1. Helyezze a tanúsítványfájlt .pfx (amely a tanúsítványt és a titkos kulcsot is tartalmazza) a DNS-kiszolgálót üzemeltető kiszolgálón.

  2. Nyissa meg a PowerShellt rendszergazdaként, és futtassa a következő parancsot a tanúsítvány importálásához, és ügyeljen arra, hogy <pfxpath> a fájl elérési útjára és .pfx a fájl jelszavára cserélje <pfxpassword> le:.pfx

    Import-PfxCertificate `
        -FilePath "<pfxpath>" `
        -CertStoreLocation "Cert:\LocalMachine\My" `
        -Password (Read-Host -AsSecureString "<pfxpassword>")
    
  3. Amikor a rendszer kéri, adja meg a tanúsítvány jelszavát.

  4. A tanúsítvány sikeres importálásának ellenőrzéséhez futtassa a következő parancsot, a tanúsítvány tárgyára cserélve <subject-name>:

    Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object { $_.Subject -match "<subject-name>" }
    

A tanúsítvány kötése

A tanúsítvány importálása után kösse hozzá a kiszolgálóporthoz, hogy a DNS-kiszolgáló használhassa HTTPS-kapcsolatokhoz.

  1. Hozzon létre egy új GUID-t, és tárolja azt egy változóban az alábbi parancs futtatásával:

    $guid = New-Guid
    
  2. Kérje le a tanúsítványt, és tárolja egy változóban az alábbi parancs futtatásával. Cserélje le <subject-name> a tanúsítvány tárgyára:

    $cert = Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object { $_.Subject -match "<subject-name>" }
    
  3. A következő parancs futtatásával kösse a tanúsítványt a kiszolgálóporthoz:

    netsh http add sslcert ipport=0.0.0.0:443 certhash=$($cert.Thumbprint) appid="{$guid}"
    

Jótanács

Ha azt szeretné, hogy a DNS Server szolgáltatás az összes cím helyett egy adott IP-címen válaszoljon a DoH-forgalomra, cserélje le 0.0.0.0 a kívánt IP-címre. Az IP-címnek vagy meg kell egyeznie a tanúsítvány SAN-jában található gazdagéppel, vagy fel kell oldódnia arra. A 443 helyére másik portszámot is beilleszthet.

A tanúsítványkötés ellenőrzése

Ellenőrizze, hogy a tanúsítvány megfelelően van-e kötve a megfelelő IP-címhez és porthoz.

  1. Futtassa a következő parancsot az SSL-tanúsítványkötések megjelenítéséhez:

    netsh http show sslcert
    
  2. Ellenőrizze, hogy a kimenet megjeleníti-e az IP-címet és a portot, és hogy a tanúsítvány kivonata megegyezik-e az ujjlenyomatával.

Tűzfalszabályok konfigurálása

A DoH más TCP-portot használ, mint a titkosítatlan DNS, ezért konfigurálnia kell a tűzfalat, hogy engedélyezze a bejövő forgalmat a tanúsítvány kötésekor megadott porton. A DoH alapértelmezés szerint a 443-as TCP-portot használja, hacsak nem adott meg másik portot az URI-sablonban és a tanúsítványkötési lépésekben.

Konfigurálja a Windows tűzfalat úgy, hogy engedélyezze a bejövő kapcsolatokat a konfigurált DoH-porton az alábbi lépések végrehajtásával:

  1. Ha olyan tűzfalszabályt szeretne létrehozni, amely engedélyezi a bejövő DoH-forgalmat, futtassa a következő parancsot:

    New-NetFirewallRule -DisplayName "DNS over HTTPS" -Direction Inbound -Protocol TCP -LocalPort 443 -Action Allow
    
  2. Ellenőrizze, hogy a tűzfalszabály létrejött-e a következő parancs futtatásával:

    Get-NetFirewallRule -DisplayName "DNS over HTTPS"
    

Megjegyzés:

Ha a DoH-t egy másik port használatára konfigurálta, cserélje le 443 az egyéni portszámra. Ha hardveres tűzfalat vagy hálózati biztonsági csoportot használ, győződjön meg arról, hogy a bejövő TCP-forgalmat is engedélyezi ugyanazon a porton.

A DoH engedélyezése

A tanúsítvány kötése és a tűzfalszabályok konfigurálása után engedélyezze a DoH-t a DNS-kiszolgálón.

  1. Engedélyezze a DoH-t, és állítsa be az URI-sablont a Set-DnsServerEncryptionProtocol paranccsal. Cserélje le dns.contoso.com a tanúsítvány SAN mezőjében található állomásnévre (vagy IP-címre):

    Set-DnsServerEncryptionProtocol -EnableDoh $true -UriTemplate "https://dns.contoso.com:443/dns-query"
    

    Megjegyzés:

    Győződjön meg arról, hogy az URI-sablon portszáma megegyezik a tanúsítvány kötésénél használt portszámmal.

  2. Indítsa újra a DNS-szolgáltatást a módosítások alkalmazásához:

    Restart-Service -Name DNS
    

DoH-konfiguráció ellenőrzése

Ellenőrizze, hogy a DoH megfelelően működik-e az ügyfél konfigurációjának és tesztelésének ellenőrzésével.

  1. Ellenőrizze a DoH-konfigurációt a kiszolgálón a Get-DnsServerEncryptionProtocol paranccsal:

    Get-DnsServerEncryptionProtocol
    
  2. Nyissa meg az Eseménynaplót a kiszolgálón, és lépjen az Alkalmazások és szolgáltatások naplói > DNS-kiszolgálóra.

  3. Ellenőrizze az eseményazonosítót 822, amely azt jelzi, hogy a DoH szolgáltatás sikeresen elindult.

Ügyféltől DoH tesztelése

Annak ellenőrzéséhez, hogy a DoH megfelelően működik-e, tesztelje a DNS-feloldási tesztet egy DoH-kompatibilis ügyféltől.

  1. Konfiguráljon egy DoH-ügyfelet a DNS-kiszolgáló titkosításának használatára ugyanazzal az URI-sablonnal, amelyet konfigurált. Az ügyfélkonfiguráció lépéseit lásd: Biztonságos DNS-ügyfél HTTPS-en keresztül (DoH).

  2. A konfigurált DoH-kliensen tesztelje a DNS-feloldást a Resolve-DnsName paranccsal. Cserélje le contoso.com a feloldani kívánt tartományra:

    Resolve-DnsName -Name contoso.com -Type A
    
  3. A DNS-lekérdezés sikeresen megoldódik.

A DoH-tevékenység további ellenőrzéséhez kövesse a következő lépéseket ismertető cikket a DoH dns-kiszolgálón való figyeléséhez.

Következő lépések