DNS-04 - 하위 도메인 인증

9119 단어 dns

DNS-04 - 하위 도메인 인증


실험 환경
ns1.magedu.com 172.18.71.101/24 CentOS-6.7-x86_64  
ns1.dev.magedu.com 172.18.71.102/24 CentOS-7.2-x86_64  
localhost.localdomain 172.18.71.103/24 CentOS-7.2-x86_64  
iptablesSELinux는 모두 폐쇄 상태에 있다.
설치bind
[root@ns1 ~]# yum install -y bind bind-libs bind-utils

우선 두 노드 호스트의 메인 프로필/etc/named.conf을 각각 수정하고 본 기기의 조회 요청과dnssec만 허용하고 감청 주소 목록에 각각 외부에 서비스를 제공하는 주소IP를 추가한다.
options {
    listen-on port 53 { 127.0.0.1; 172.18.71.101; };
    ...
    //allow-query     { localhost; };
    ...

    //dnssec-enable yes;
    //dnssec-validation yes;
    //dnssec-lookaside auto;
    ...
};

시간 동기화


일반적으로 다중 노드의 협동 작업은 우선 시간을 교정하여 시간을 동기화시키는 것이다.네트워킹 상태에서는 ntpdate 명령을 사용하여 일괄적으로 시간센터 교정을 찾을 수 있고, 네트워킹에서는 사용할 수 없음date 명령을 수동으로 교정할 수 없다.

상위 도메인 구성


먼저 DNS-02 - 단일 서버를 참조하여 정방향 영역magedu.com을 구성합니다.
또한 부역magedu.com구역 데이터베이스 파일에 자역NS 기록과 상응하는 A 기록을 추가해야 한다.
$TTL 1D
@    IN    SOA    @    ns-admin.magedu.com. ( 
        2016040801
        1D
        1H
        1W
        3H )
            IN    NS    ns1
            IN    MX    10 mx1
ns1            IN    A    172.18.71.101
mx1            IN    A    172.18.71.101
www            IN    A    172.18.71.101
www            IN    A    172.18.71.102
bbs            IN    CNAME    www
dev.magedu.com.        IN    NS    ns1.dev.magedu.com.
ns1.dev.magedu.com.    IN    A    172.18.71.102

영역 분석 데이터베이스 파일과 주 프로필의 문법 검사
[root@ns1 named]# named-checkzone magedu.com magedu.com.zone 
zone magedu.com/IN: loaded serial 2016040801
OK
[root@ns1 named]# named-checkconf

서비스 시작
[root@ns1 named]# /etc/init.d/named start
Generating /etc/rndc.key:                                  [  OK  ]
Starting named:                                            [  OK  ]

하위 도메인 구성


먼저 DNS-02 - 단일 서버를 참조하여 정방향 영역dev.magedu.com을 구성합니다.
$TTL 1D
@    IN    SOA    @    ns-admin.dev.magedu.com. ( 
        2016040901
        1D
        1H
        1W
        3H )
        IN    NS    ns1
        IN    MX   10    mx1
ns1        IN    A    172.18.71.102
mx1        IN    A    172.18.71.102
www        IN    A    172.18.71.102
bbs        IN    CNAME    www

영역 분석 데이터베이스 파일과 주 프로필의 문법 검사
[root@ns1 named]# named-checkzone dev.magedu.com dev.magedu.com.zone 
zone dev.magedu.com/IN: loaded serial 2016040901
OK
[root@ns1 named]# named-checkconf

서비스 시작
[root@ns2 ~]# systemctl start named

테스트 결과


1. 상위 도메인 서버가 하위 도메인 이름 확인


부역 서버를 사용하여 부역 도메인 이름을 해석하면 결과를 얻을 수 있습니다.
[root@localhost ~]# dig -t A www.dev.magedu.com @172.18.71.101

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -t A www.dev.magedu.com @172.18.71.101
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62292
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.dev.magedu.com.        IN    A

;; ANSWER SECTION:
www.dev.magedu.com.    86100    IN    A    172.18.71.102

;; AUTHORITY SECTION:
dev.magedu.com.        86400    IN    NS    ns1.dev.magedu.com.

;; Query time: 2 msec
;; SERVER: 172.18.71.101#53(172.18.71.101)
;; WHEN:   4  08 20:57:43 CST 2016
;; MSG SIZE  rcvd: 81

하위 도메인 서비스 닫기
[root@ns1 ~]# systemctl stop named

부모 서버 캐시에서 분석 결과 비우기
[root@ns1 ~]# rndc flush

위의 테스트를 다시 하면 해석 결과를 얻을 수 없습니다.
[root@localhost ~]# dig -t A www.dev.magedu.com @172.18.71.101

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -t A www.dev.magedu.com @172.18.71.101
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 49365
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.dev.magedu.com.        IN    A

;; Query time: 2 msec
;; SERVER: 172.18.71.101#53(172.18.71.101)
;; WHEN:   4  08 21:17:21 CST 2016
;; MSG SIZE  rcvd: 47

2. 하위 도메인 서버가 상위 도메인 이름 확인


하위 서버로 하위 도메인 이름을 해석하면 정확한 결과가 나오지 않은 것을 볼 수 있다. 이것은 하위 서버가 귀속 허용 옵션을 켜서 자신이 결과를 얻을 수 없는 상황에서 네트워크에서 루트를 찾아 교체 조회를 해서 결과를 얻었기 때문이다. 클라이언트에게 하위 서버가 귀속 조회를 도와주었다.
[root@localhost ~]# dig -t A www.magedu.com @172.18.71.102

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -t A www.magedu.com @172.18.71.102
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12729
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 10

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.magedu.com.            IN    A

;; ANSWER SECTION:
www.magedu.com.        600    IN    A    101.200.188.230

;; AUTHORITY SECTION:
magedu.com.        172799    IN    NS    v2s2.xundns.com.
magedu.com.        172799    IN    NS    v2s1.xundns.com.

;; ADDITIONAL SECTION:
v2s1.xundns.com.    172799    IN    A    115.238.253.250
v2s1.xundns.com.    172799    IN    A    124.232.156.76
v2s1.xundns.com.    172799    IN    A    183.57.38.184
v2s1.xundns.com.    172799    IN    A    113.17.169.37
v2s1.xundns.com.    172799    IN    A    115.238.241.21
v2s2.xundns.com.    172799    IN    A    116.10.184.143
v2s2.xundns.com.    172799    IN    A    121.10.104.13
v2s2.xundns.com.    172799    IN    A    115.238.241.20
v2s2.xundns.com.    172799    IN    A    115.238.253.252

;; Query time: 2385 msec
;; SERVER: 172.18.71.102#53(172.18.71.102)
;; WHEN:   4  08 21:00:26 CST 2016
;; MSG SIZE  rcvd: 248

하위 서버의 주 프로필 /etc/named.conf 을 수정하고, 귀속 허용 옵션을 닫습니다.
[root@ns1 ~]# vim /etc/named.conf
options {
    ...
    recursion no;
    ...
};

구성 파일 다시 로드
[root@ns1 ~]# rndc reload
server reload successful

위의 테스트를 다시 하면 이번에는 해석 결과를 완전히 얻지 못할 것이다.
[root@localhost ~]# dig -t A www.magedu.com @172.18.71.102

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -t A www.magedu.com @172.18.71.102
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 31585
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.magedu.com.            IN    A

;; Query time: 1 msec
;; SERVER: 172.18.71.102#53(172.18.71.102)
;; WHEN:   4  08 21:07:28 CST 2016
;; MSG SIZE  rcvd: 43

3. 결론


하위 도메인 권한 수여는 하위 도메인 서버가 자신이 관할하는 영역의 일부분을 하위 도메인 서버에 맡겨 해석을 맡긴다.
  • 부역 서버를 사용하여 부역 도메인을 분석할 때 부역 서비스가 정지되고 부역 서버에 해당하는 캐시 결과가 없으면 분석을 완성할 수 없습니다.
  • 반대로 하위 도메인 서버는 부 도메인 이름을 해석할 수 없다.하위 도메인 서버에서 허용되는 경우
  • 조회는 인터넷에서 루트 교체 조회를 찾아 결과를 얻을 때까지 한다.그렇지 않으면 해석 결과를 얻을 수 없습니다.(하위 도메인 서버에서 부모 도메인 이름을 검색할 때 층층이 교체하는 것은 자원을 낭비하는 방식이다. 이것은 우리가 기대하는 것이 아니기 때문에 실제적으로 모두 전송하는 방식으로 이 문제를 해결한다. DNS-05-전송 참조)
  • 역방향 구역의 하위 구역 권한 수여는 비교적 번거롭기 때문에 여기는 소개하지 않겠습니다.

    좋은 웹페이지 즐겨찾기