Linux,Unix,BSD

[bind] bad owner name (check-names) 오류 해결 방법

채윤아빠 2020. 8. 25. 15:16
728x90
반응형

문제점 및 증상

bind로 네임 서버를 구성하여 운영하던중에, 도메인에 대한 와일드카드 인증서(wildcard certification)를 발급받는 과정에서 "_acme-challenge" txt 레코드를 한 후, 다음과 같은 오류가 발생하였습니다.

24-Aug-2020 01:37:53.991 zoneload: info: managed-keys-zone: loaded serial 0
24-Aug-2020 01:37:54.038 zoneload: info: zone dtsewoon.io/IN: loaded serial 2020081810
24-Aug-2020 01:37:54.046 zoneload: info: zone smiledoctor.kr/IN: loaded serial 2020081210
24-Aug-2020 01:37:54.047 general: error: /etc/bind/hunature.net.zone:32: _acme-challenge.hunature.net: bad owner name (check-names)
24-Aug-2020 01:37:54.047 zoneload: error: zone hunature.net/IN: loading from master file /etc/bind/hunature.net.zone failed: bad owner name (check-names)
24-Aug-2020 01:37:54.047 zoneload: error: zone hunature.net/IN: not loaded due to errors.

원인분석

위와 같은 오류가 발생한 이유는 호스트 이름에 기본적으로 "_" 등의 문자가 포함되면 안되기 때문입니다. (RFC 1123)


하지만, 도메인에 대한 와일드카드 인증서(wildcard certification)를 발급받기 위해서는 반드시 "_acme-challenge" 이름으로 txt 레코드를 추가해야 하기 때문에, 관련 오류를 무시하고 설정할 수 있도록 옵션을 조정해 주어야만 합니다.


해결방안

"bind" 서비스의 "named.conf" 파일에 "check-names master ignore;" 옵션을 추가한 후, "bind" 서비스를 재시작하면, 위 문제를 무시할 수 있습니다.

options {

    check-names master ignore;

};

위와 같이 옵션을 추가한 이후에 "bind" 서비스를 재시작하면, 문제가 되었던 "_acme-challenge" 레코드가 정상적으로 등록되어 서비스 되는 것을 확인할 수 있습니다.

C:\Users\USER>nslookup -q=TXT _acme-challenge.hunature.net
서버:    kns.kornet.net
Address:  168.126.63.1

권한 없는 응답:
_acme-challenge.hunature.net    text =

        "Pj4tuOUdnsgEfp6YJ_Z7MRSTZez1XqTAjj5hS6Cz0A8"

hunature.net    nameserver = ns.hunature.net
ns.hunature.net internet address = 49.247.200.168

참고자료

"쉽게 쉽게":http://egloos.zum.com/singi/v/1369361
"bad owner name (check-names) - named 에러":https://blog.naver.com/rlatlstjs52/60110412698