FrontPage › bind_gentoo
1.1. 소개 ¶
이 문서는 chroot BIND 문서이다. chroot 로 운영하지 않으려면 아래 ebuild /var... config 항목을 실행시켜 주지 않으면 된다. 그리고 기본 디렉토리를 /var/bind 로 가정한다.
1.2.2.1. chroot 빌드 ¶
chroot 로 돌리기 위해서 아래와 같이 실행한다
# ebuild /var/db/pkg/net-dns/<bind version>/<bind-version> config
설치된 버전이 bind-9.2.2-r3 임으로 아래와 같이 입력한다
# ebuild /var/db/pkg/net-dns/bind-9.2.2-r3/bind-9.2.2-r3.ebuild config * * Setting up the chroot directory... Done. * * Add the following to your root .bashrc or .bash_profile: * alias rndc='rndc -k /chroot/dns/etc/bind/rndc.key' * Then do the following: * source /root/.bashrc or .bash_profile *
위와 같이 하면 /etc/conf.d/named 파일 내용을 보면 CHROOT 라는 항목도 변경되어 있다
chroot 로 변경하는 이유는 named 가 보안버그상 취약성이 발견되어 뚫릴 수가 있는데, 이럴때를 방지하기 위해서 사용한다. chroot 사용 안하는 사람은 /var/bind 로 사용한다.
chroot 로 변경하는 이유는 named 가 보안버그상 취약성이 발견되어 뚫릴 수가 있는데, 이럴때를 방지하기 위해서 사용한다. chroot 사용 안하는 사람은 /var/bind 로 사용한다.
1.2.2.2. chroot 옵션확인 ¶
# cat /etc/conf.d/named # Set various named options here. # OPTIONS="" # Set this to the number of processors you have. # CPU="1" # If you wish to run bind in a chroot, run: # ebuild /var/db/pkg/net-dns/<bind version>/<bind-version> config # and un-comment the following line. # You can specify a different chroot directory but MAKE SURE it's empty. CHROOT="/chroot/dns"
1.2.2.3. chroot directory ¶
chroot 하위디렉토리는 아래와 같이 구성되어 있다.
# cd /chroot # tree . `-- dns |-- dev | |-- random | `-- zero |-- etc | |-- bind | | |-- named.conf | | |-- pri -> ../../var/bind/pri | | |-- rndc.key | | `-- sec -> ../../var/bind/sec | `-- localtime `-- var |-- bind | |-- named.ca | |-- pri | | |-- 127.zone | | `-- localhost.zone | |-- root.cache -> ../../var/bind/named.ca | `-- sec `-- run `-- named 12 directories, 9 files
1.4.2. zone 파일생성 ¶
/chroot/dns/etc/bind/pri/kkanari.info.zone 파일을 아래와 같이 만들어 준다.
$TTL 3600 @ IN SOA ns.kkanari.info. root.kkanari.info. ( 2005012701 ; serial 28800 ; refresh 7200 ; retry 604800 ; expire 86400 ; minimum ) ; ; IN NS ns.kkanari.info. IN A 210.111.16.144 IN MX 10 mail ; ; ns IN A 210.111.16.144 ns2 IN A 210.111.16.144 mail IN A 210.111.16.144 ftp IN A 210.111.16.144 www IN A 210.111.16.144 home IN A 210.111.16.144 * IN A 210.111.16.144
1.4.4. log 확인 ¶
/var/log/everything/current 로그를 확인해 보면 (syslogd 가 아닌 metalog 다 ;;)
Jan 27 15:06:21 [kernel] process `rndc' is using obsolete setsockopt SO_BSDCOMPAT Jan 27 15:06:21 [named] loading configuration from '/etc/bind/named.conf' Jan 27 15:06:21 [named] no IPv6 interfaces found Jan 27 15:06:21 [named] zone kkanari.info/IN: loaded serial 2005012701위와같이 정상적으로 읽어들였다.
1.4.5. 테스트 !!! ¶
테스트를 해 보자
> server kkanari.info Default Server: kkanari.info Address: 210.111.16.144 > kkanari.info Server: kkanari.info Address: 210.111.16.144 Name: kkanari.info Address: 210.111.16.144 > www.kkanari.info Server: kkanari.info Address: 210.111.16.144 Name: www.kkanari.info Address: 210.111.16.144 > mail.kkanari.info Server: kkanari.info Address: 210.111.16.144 Name: mail.kkanari.info Address: 210.111.16.144
아주 잘 된다 
