본문 바로가기

네임서버

BIND DNS에서 TSIG를 설정하는 방법

반응형

BIND DNS에서 TSIG를 설정하는 방법

DNS 역할 아이피 주소 도메인 비고
Master 192.168.56.51 ns1.bind.sangchul.kr  
Slave 192.168.56.52 ns2.bind.sangchul.kr  

 

도메인 위임

Cloudflare1

1. TSIG 키 생성 (마스터 - node1)

Kexample.cohttp://m.+165+12345.key 및 Kexample.com.+165+12345.private와 같은 두 파일을 생성합니다.

2. 생성된 TSIG 키 확인 (마스터 - node1)

3. 마스터 BIND 구성 파일 편집 (node1)

다음과 같이 TSIG 키를 추가합니다.

4. BIND 서버 재시작 (마스터 - node1)

5. 슬레이브 BIND 구성 파일 편집 (node2)

다음과 같이 TSIG 키를 추가하고 슬레이브 설정을 추가합니다.

여기서 node1_ip는 마스터 노드의 IP 주소로 대체되어야 합니다.

6. BIND 서버 재시작 (슬레이브 - node2)

이제 마스터(node1)와 슬레이브(node2) 간에 TSIG를 사용하여 DNS 데이터 전송이 설정되었습니다. 마스터와 슬레이브 간에 설정된 TSIG 키 정보를 정확하게 일치시켜야 합니다. 키 정보를 잘 보호하고 관리하는 것이 중요합니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[1차 DNS]

 

dnssec Key 파일 생성

[root@NS1 named]# dnssec-keygen -a HMAC-MD5 -b 128 -n Host my-domain.re.kr.
Kmy-domain.re.kr.+157+32789

 

[root@NS1 named]# ls -l Kmy*
-rw------- 1 root root  59 2013-07-04 09:58 Kmy-domain.re.kr.+157+32789.key
-rw------- 1 root root 165 2013-07-04 09:58 Kmy-domain.re.kr.+157+32789.private

 

[root@NS1 named]# cat Kmy-domain.re.kr.+157+32789.key
my-domain.re.kr. IN KEY 512 3 157 WUqP/du3BIcjhAN87/iZ+A==

 

[root@NS1 named]# cat Kmy-domain.re.kr.+157+32789.private
Private-key-format: v1.3
Algorithm: 157 (HMAC_MD5)
Key: WUqP/du3BIcjhAN87/iZ+A==
Bits: AAA=
Created: 20130704005732
Publish: 20130704005732
Activate: 20130704005732

 

my-domain.key.conf 파일 생성

[root@NS1 named]# vi /etc/my-domain.key.conf

[root@NS1 named]# cat /etc/my-domain.key.conf
key my-domain.re.kr. {
Algorithm hmac-md5;
secret "WUqP/du3BIcjhAN87/iZ+A==";
};

 

named.conf에 my-domain.key.conf 파일 추가

[root@NS1 named]# vi /etc/named.conf
...
zone "my-domain.re.kr" {
        type master;
        file "my-domain.re.kr-zone";
        allow-update { key my-domain.re.kr.; };
        };

 

include "/etc/my-domain.key.conf";

 

[2차 DNS]

 

my-domain.key.conf 생성

[root@NS2 named]# vi /etc/my-domain.key.conf

[root@NS2 named]# cat /etc/my-domain.key.conf
key my-domain.re.kr. {
Algorithm hmac-md5;
secret "WUqP/du3BIcjhAN87/iZ+A==";
};


ns1에서 키 파일 가져오기
[root@NS2 named]# scp 10.0.0.11:/var/named/K* /var/named/.


[root@NS2 named]# nsupdate -k Kmy-domain.re.kr.+157+32789.key
> server 10.0.0.11
> update add book.my-domain.re.kr. 300 IN A 10.0.0.55
> show
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:      0
;; flags:; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
;; UPDATE SECTION:
book.my-domain.re.kr.   300     IN      A       10.0.0.55

> send

>
> quit

 

key 파일 없이 nsupdate 시도
[root@NS2 named]# nsupdate
> server 10.0.0.11
> update add book.my-domain.re.kr. 300 IN A 10.0.0.55
> show
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:      0
;; flags:; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
;; UPDATE SECTION:
book.my-domain.re.kr.   300     IN      A       10.0.0.55

> send
update failed: REFUSED

 

[다른 서버에서 nsupdate 실행하기]

 

key 파일 가져오기
[root@resursive named]# scp 10.0.0.11:/var/named/K* /var/named/.
The authenticity of host '10.0.0.11 (10.0.0.11)' can't be established.
RSA key fingerprint is 43:08:da:18:32:3c:19:fd:1b:2b:3e:21:ad:50:d1:7f.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.0.0.11' (RSA) to the list of known hosts.
root@10.0.0.11's password:
Kmy-domain.re.kr.+157+32789.key                                            100%   59     0.1KB/s   00:00
Kmy-domain.re.kr.+157+32789.private                                        100%  165     0.2KB/s   00:00

 

nsupdate으로 car.my-domain.re.kr 도메인 추가
[root@resursive named]# nsupdate -k Kmy-domain.re.kr.+157+32789.key
> server 10.0.0.11
> update add car.my-domain.re.kr. 7200 IN A 127.0.0.1
> show
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:      0
;; flags:; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
;; UPDATE SECTION:
car.my-domain.re.kr.    7200    IN      A       127.0.0.1

> send
> quit

 

질의 테스트
[root@resursive named]# dig @10.0.0.11 car.my-domain.re.kr +short
127.0.0.1

 

 

728x90
반응형