DNS Introduction and Advanced Duration: 5 days

DNS Introduction and Advanced

CONTENTS
This course gives you the fundamentals of DNS and all the important terminology is covered. In the course you will learn how to design DNS structure to achieve scalability and high availability. You will learn how to install and configure DNS name servers and you will get an understanding for how zones and domains are delegated, administratively as well as in technical solutions.

The advanced part covers more complex DNS topics, such as DNS in combination with Firewalls and ”Split-DNS”. A complete treatment of DNSSEC (signing and authentication of DNS data) as well as TSIG (DNS Transaction Signatures, EDNS(0) and dynamic updates. There is an obvious relation between DHCP and Dynamic DNS Updates and the course covers the interaction with DHCP in detail together with dynamic updates.

PREREQUISITES
This course requires fundamental knowledge about the Internet and TCP/IP. Experience with either Unix or Windows environments is helpful.

EXCERCISES
This is a theoretical training with practical exercises.

NOTE: This course is not delivered with the FoldOut methodology.

Introduction
•        Background, why was DNS created

Internet before DNS
•        DNS design requirements
•        Introduction to the concept of a ”Resource Record”
•        The A and AAAA Records for IPv4 and IPv6 addresses
•        Structure Records and Data Records

Caching, TTL and scalability
•        Delegation, the key to scalability
•        The SOA Record: the start of a new zone, the serial number
•        The NS Record
•        Zones and domains
•        The ice-floe model

Name server roles
•        Authoritative name servers
•        Iterative mode resolvers (aka recursive name servers)
•        Security aspects and threats
•        “Cache poisoning”

Root name servers
•        The hints file
•        The System Query
•        Scalability
•        Problems with erroneous queries, the AS112 project

Resolvers
•        Stub resolver and iterative mode resolver
•        Interpretation of response messages
•        Recursive and non-recursive queries
•        The NXDOMAIN response
•        Referrals
•        CNAMEs
•        Authority at delegation points

Detailed message exchange walk-through

Name server implementations
•        BIND (both authoritative and recursive server)
•        NSD (authoritative-only server)
•        Unbound (recursive-only server)
•        Other implementations
•        Differences, pros and cons

Lab Exercise: Compilation and installation of the DNS software

Debugging tools
•        dig, nslookup, others

Fundamental types of Resource Records
•        CNAME: aliasing
•        MX: mail exchange

The named.conf configuration file
•        The “options” stanza for global configuration
•        The “logging” stanza for tuning of when, how and where to log

Lab Exercise: Configuration of caching only resolver

Private addresses, RFC1918
•        NAT, address translation

Name server terminology
•        Master and slave
•        Primary master
•        Hidden master
•        Stealth servers

Zones: the administrative entity of DNS
•        Zone directives in named.conf
•        Zone transfer
•        The AXFR operation
•        The IXFR operation
•        NOTIFY

Lab Exercise: Configuration of an authoritative server
•        The “child role”

Lab Exercise: Delegation of sub-domain
•        The “parent role”
•        Who is responsible for what?

IPv6 and DNS
•        New data, new record types
•        Nibbles for IPv6 reverse zones, ip6.arpa
•        IPv6 data vs. IPv6 transport
•        The root name servers and IPv6
•        Resolver support

Lab Exercise: IPv6

Quick repetition of traditional DNS

Principles behind the DNS protocol:
•        autonomy, coherence, redundancy

Packet format:
•        The different parts of the DNS message and their usage

Name server implementations
•        BIND (both authoritative and recursive server)
•        NSD (authoritative-only server)
•        Unbound (recursive-only server)
•        Other implementations
•        Differences, pros and cons

Lab Exercise: Compilation and installation of the DNS software

DNS Vulnerabilities overview

Role separation for name servers:
•        inevitable when deploying DNSSEC
•        different implementation alternatives
•        usage together with TSIG
•        pitfalls

TSIG: signing DNS transactions
•        Symmetric encryption
•        Symmetric algorithms: HMAC-SHA1, HMAC-SHA256
•        Securing zone transfers (server-server)
•        Securing queries (client-server)

  • BIND: TSIG Configuration innamed.conf:
    • key, server and masters directives
  • NSD: TSIG Configuration innsd.conf:
    •  key: attributes and the use of the NOKEY keyword
  • Securing the transport vs securing the data

Lab Exercise: Using TSIG between master and slave
•        Configuration
•        Need for synchronized clocks
•        Debugging

BIND: rndc
•        remote management via rndc: pros and cons
•        Key management
•        Configuration of rndc.conf

Firewall issues
•        Split-DNS
•        Forwarding
•        Internal delegations
•        Queries “leaking” to the wrong side
•        management of internal connections
•        multiple versions of the name space and DNS coherency
•        varying functionality in different implementations
•        “forward” zones and stub zones
•        Split-DNS in conjunction with DNSSEC

Lab Exercise: firewalls, forwarding, split-DNS

EDNS(0):
•        framework for DNS protocol extensions
•        usage of the OPT pseudo-RR
•        fields in the DNS packet that are expanded via EDNS(0) and their use

Introduction to DNSSEC
•        Background, threat scenario, the Kaminsky attack, etc
•        Walkthrough of the concepts

DNSSEC: Validation of signed DNS data
•        “Trusted keys” and validation of data
•        What does ”security apex” mean?
•        What should happen when data doesn’t validate?

Lab Exercise: Configuration of a validating resolver

DNSSEC: Publication of signed DNS data
•        Asymmetric encryption with public keys
•        Asymmetric algorithms: RSA, DSA
•        KSK and ZSK: different operational uses for keys

DNSSEC: Protocol extensions and new record types:
•        RRSIG: digital signature of DNS records
•        DNSKEY: publik key stored and distributed via DNS
•        DS: identification of the ”KSK” in use

DNSSEC low-level tools:
•        dnssec-keygen to create keys
•        dnssec-signzone to sign zones

Lab Exercise: Publishing a DNSSEC signed zone
•        Create the configuration
•        Generate the keys and add them to the zone
•        DNSSEC Zone Signing

DNSSEC Key Rollover: Replacing old keys with new keys
•        Policy management
•        Delegation Signer and parent interaction
•        Parent/child interaction with examples
•        Tools to simplify DNSSEC management

Lab Exercise: The DS record and interacting with your parent
•        Closing the signature chain from the parent
•        Verification of the signature chain
•        Debugging

Resolver issues
•        Suitable API
•        Securing the ”last mile”
•        The requriement for a ”clear path”

Lab Exercise: Key Rollover of ZSK and KSK
•        Logging

DNSSEC Protocol extension: ADE (Authenticated Denial of Existence)
•        Why is ADE so important?
•        NSEC: Filling out the empty space to facilitate ADE
•        NSEC3: When zone contents must not be listedLab Exercise: NSEC3

DNSSEC high-level tools
•        OpenDNSSECLab: OpenDNSSEC
•        others

International outlook:
•        Signing different Top-Level domains
•        Signing the root zone
•        Development and and adjustment of different systems for DNSSEC

Dynamic Update
•        The four different roles: Client, Authoritative name server for forward zone, Authoritative name server for backward zone and the DHCP server
•        Security policies
•        Granularity in access rights: control over nodes or entire sub-trees, retrictions on available record types
•        update-policy{}
•        Alternatives for authentication: TSIG (symmetric key), SIG(0) (asymmetric key), GSS-TSIG
•        Comparison SIG(0) vs TSIG

Lab exercise: Manual dynamic update
•        Name server configuration
•        How to trigger the dynamic update automatically
•        Client configuration
•        Name server configuration
•        Design choices in environments with a mix of dynamic and static DNS data
•        Dynamic update of DNSSEC secured data: key management, signatures

Lab Exercise: Automatic dynamic update (with DHCP)
•        Name server configuration
•        Relation DHCP server and name server

Summary

SHARE THIS:

Price (excl. VAT)

Interested?