리눅스

Total 331
Today 0
profile_image
윤진한
08-02-28 11:41 0개 10회
설치문서
[FreeBSD] DNS 설치(bind9)
FreeBSD에서 기본적으로 설치되는 bind8 대신에 ports를 통해 bind9로 업그레이드 하는 방법을 설명한다.
zonefile 설정과 named.conf의 기본 설정에 대해서는 설명하지 않는다.
DNS 기초부터 알고 싶은 분은
- 김승영님의 Powered by DNS ( http://www.bsdnet.co.kr/doc/PoweredByDNS/ )
- 김정균님의 How to config BIND 9 for Linux ( http://oops.org/?t=lecture&s=bind9 )
를 먼저 읽어보기 바란다.

1. bind9 설치

# cd /usr/ports/dns/bind9

Makefile에서 CONFIGURE_ARGS= 에 설정파일 경로를 /etc/namedb 로 변경한다. 다른 디렉토리를 지정해도 상관없다.

 
CONFIGURE_ARGS= --localstatedir=/var --disable-linux-caps --with-openssl \

대신에

CONFIGURE_ARGS= --localstatedir=/etc/namedb --sysconfdir=/etc/namedb --disable-linux-caps --with-openssl \
 


# make install clean

2. /etc/rc.conf 설정

기본 설치된 bind 실행을 위해서는 다음과 비슷하게 되어 있을 것이다. ( named_flags= 는 차이날 수 있음)

 
# for bind 8.x
named_enable="YES"
named_program="/usr/sbin/named"
named_flags="-u bind -g bind"
 


다음과 같이 수정한다.

 
named_enable="YES"
named_program="/usr/local/sbin/named"
named_flags="-u bind"
named_pidfile="/var/run/named/pid"
 


3. named.conf 에서 rndc 관련 부분 설정

BIND 8에서 네임서버를 제어하는 툴인 ndc는 BIND 9에서는 rndc를 사용한다. rndc를 사용하기 위해서는
rndc key를 named.conf와 rndc.conf 파일에 설정을 해줘야 named 데몬과 rndc간에 통신이 가능하다.
rndc.conf 설정은 rndc-confgen 툴을 사용하면 간단하게 생성할 수 있다. 기본적으로 /dev/random을 통해서
램던한 데이터를 읽어들이게 되는데, FreeBSD에서 이를 통해 키를 생성하면 hang걸린 것 처럼 상당히 늦게
결과를 얻을 수도 있으니 다음처럼 /dev/urandom을 이용하거나 keyboard으로 부터 random한 데이터를
받을 수 있도록 한다. keyboard을 이용할 경우 'stop typing'이 나올 때까지 아무키나 계속 입력해야 한다.

 
# /usr/local/sbin/rndc-confgen -r /dev/urandom 또는
# /usr/local/sbin/rndc-confgen -r keyboard
start typing:
...............................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
stop typing.
... 생성된 키가 화면에 출력된다. 이하 생략 ...
 


출력된 결과를 아래 파일로 각각 저장을 한다.

[ /etc/named/rndc.conf ]
 
# Start of rndc.conf
key "rndc-key" {
        algorithm hmac-md5;
        secret "PUIGGLhuCYUmKclP4sayww==";
};

options {
        default-key "rndc-key";
        default-server 127.0.0.1;
        default-port 953;
};
# End of rndc.conf
 


[ /etc/named/named.conf ] - 기존 named.conf 내 적당한 부분에 다음을 넣는다.
 
key "rndc-key" {
        algorithm hmac-md5;
        secret "PUIGGLhuCYUmKclP4sayww==";
};
#
controls {
        inet 127.0.0.1 port 953
                allow { 127.0.0.1; } keys { "rndc-key"; };
};
 


named-checkconf named.conf 로 설정을 체크해 본 후 기존 named 데몬을 kill 하고
/usr/local/sbin/named -u named 로 실행한다.
/var/log/messages 에 남은 로그를 보는 것은 필수!!!

4. 참고자료

* BIND 9로 업그레이드하기: 알아야 할 9가지 특성 (2001년)
  http://network.hanbitbook.co.kr/view.php?bi_id=51

* chrooted 네임서버 설치, bind-9.2.0 for FreeBSD 4.5 (글 H.S. Mok, 2002년)
  http://coffeenix.net/board_view.php?bd_code=77

* BIND의 /etc/rndc.conf
  http://radiocom.kunsan.ac.kr/lecture/sol_install/bind_rndc_conf.html

댓글목록

등록된 댓글이 없습니다.