5.3. 사용자 지정 부팅 가능 ISO를 사용하여 eDNS가 활성화된 RHEL 설치


사용자 지정 부팅 가능한 ISO를 생성하여 eDNS 적용 정책을 사용하여 RHEL을 설치하여 모든 DNS 쿼리가 설치 중 및 설치 후 비공개로 보호되도록 합니다. 사용자 정의 CA 인증서 번들이 필요한 경우 Kickstart 파일의 %certificate 섹션을 사용하여 설치해야 합니다. 그런 다음 스크립트에서 이 Kickstart 파일을 참조하여 엄격한 DoT 정책을 적용하기 위해 커널 인수를 포함하는 새 ISO를 빌드합니다. 환경에서 암호화되지 않은 DNS로 대체할 수 있는 경우 표준 RHEL 설치를 수행하고 나중에 eDNS를 구성할 수 있습니다.

사전 요구 사항

  • # 명령 프롬프트로 시작하는 명령에는 sudo 또는 root 사용자 액세스에서 제공하는 관리 권한이 필요합니다. sudo 액세스를 구성하는 방법에 대한 자세한 내용은 권한이 없는 사용자 활성화를 참조하여 특정 명령을 실행합니다.
  • 제품 다운로드 페이지에서 최소 설치 부팅 ISO 이미지를 다운로드했습니다.
  • 사용자 정의 CA 번들이 필요한 경우 %certificate 섹션이 포함된 Kickstart 파일이 준비되었습니다.
  • lorax 패키지가 설치되어 있습니다.

프로세스

  1. 선택 사항: %certificate 섹션을 사용하여 Kickstart 파일을 생성합니다. 인증서가 tls-ca-bundle.pem 이라는 파일에 저장되었는지 확인합니다.

    %certificate --dir /etc/pki/dns/extracted/pem/ --filename tls-ca-bundle.pem
    -----BEGIN CERTIFICATE-----
    <Base64-encoded_certificate_content>
    -----END CERTIFICATE-----
    %end
    Copy to Clipboard Toggle word wrap
  2. ISO에 Kickstart 파일 및 커널 인수를 추가합니다.

    다음 스크립트 예제에서는 eDNS가 활성화된 사용자 지정 부팅 가능 ISO를 생성하는 방법을 보여줍니다. 이 프로세스를 자동화하려면 스크립트 파일을 생성해야 합니다.

    #!/bin/bash
    
    set -ex
    
    KERNELARGS=""
    
    # Enable network
    KERNELARGS+="ip=dhcp "
    
    # Set DoT DNS server
    KERNELARGS+="rd.net.dns=dns+tls://_<server_ip>_#_<dns_server_hostname>_ "
    
    # Set to 'exclusive' to disable fallback to unencrypted DNS. Other values: 'backup', 'prefer'.
    KERNELARGS+="rd.net.dns-resolve-mode=exclusive "
    
    # Set the dnsconfd plugin for NetworkManager
    KERNELARGS+="rd.net.dns-backend=dnsconfd "
    
    # Remove any existing ISO to prevent conflicts with the new build
    rm -f _<output_iso_filename>_
    
    # Create a new bootable ISO with the Kickstart config file and kernel arguments
    mkksiso --ks _<kickstart_file>_ --cmdline "$KERNELARGS" _<input_iso_filename>_ _<output_iso_filename>_
    Copy to Clipboard Toggle word wrap
  3. 스크립트를 실행합니다.

    sh <script_filename>
    Copy to Clipboard Toggle word wrap
  4. 사용자 지정 ISO 파일을 사용하여 RHEL을 설치합니다.

검증

  • eDNS 구성을 확인합니다.

    $ dnsconfd status
    Copy to Clipboard Toggle word wrap

    예상 출력:

    Running cache service:
    unbound
    Resolving mode: exclusive
    Config present in service:
    {
        ".": [
            "dns+tls://198.51.100.143#dot.dns.example.com"
        ]
    }
    State of Dnsconfd:
    RUNNING
    Info about servers: [
        {
            "address": "198.51.100.143",
            "port": 853,
            "name": "dot.dns.example.com",
            "routing_domains": [
                "."
            ],
            "search_domains": [],
            "interface": null,
            "protocol": "dns+tls",
            "dnssec": true,
            "networks": [],
            "firewall_zone": null
        }
    ]
    Copy to Clipboard Toggle word wrap
  • nslookup 을 사용하여 DNS 서버가 응답 중인지 확인합니다.

    $ nslookup <domain_name>
    Copy to Clipboard Toggle word wrap

    &lt ;domain_name& gt;을 쿼리할 도메인으로 바꿉니다.

문제 해결

  • 바인딩되지 않은 에서 자세한 로깅 활성화 :

    # unbound-control verbosity 5
    Copy to Clipboard Toggle word wrap
  • 관련 서비스의 로그를 검토합니다.

    $ journalctl -xe -u <service_name>
    Copy to Clipboard Toggle word wrap

    &lt ;service_name&gt;을 NetworkManager,dnsconfd 또는 unbound 로 바꿉니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat