DNS 서버 설치 · 2 min read · Feb 11, 2026
우분투 하디 8.04 LTS DNS 서버 설치 - 페이지 4
10 DNS 서버 설치
실행
apt-get install bind9보안상의 이유로 BIND를 chrooted로 실행하고자 하므로 다음 단계를 수행해야 합니다:
/etc/init.d/bind9 stop파일 /etc/default/bind9를 편집하여 데몬이 비특권 사용자 bind로 실행되고 /var/lib/named에 chroot되도록 합니다. 다음 줄을 수정합니다: OPTIONS=”-u bind”를 OPTIONS=”-u bind -t /var/lib/named”로 변경합니다:
vi /etc/default/bind9| OPTIONS="-u bind -t /var/lib/named" # Set RESOLVCONF=no to not run resolvconf RESOLVCONF=yes |
/var/lib 아래에 필요한 디렉토리를 생성합니다:
mkdir -p /var/lib/named/etc
mkdir /var/lib/named/dev
mkdir -p /var/lib/named/var/cache/bind
mkdir -p /var/lib/named/var/run/bind/run그런 다음 /etc에서 /var/lib/named/etc로 구성 디렉토리를 이동합니다:
mv /etc/bind /var/lib/named/etc구성 디렉토리의 새 위치에 대한 심볼릭 링크를 이전 위치에서 생성합니다 (향후 bind가 업데이트될 때 문제를 피하기 위해):
ln -s /var/lib/named/etc/bind /etc/bindnull 및 random 장치를 만들고 디렉토리의 권한을 수정합니다:
mknod /var/lib/named/dev/null c 1 3
mknod /var/lib/named/dev/random c 1 8
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
chown -R bind:bind /var/lib/named/var/*
chown -R bind:bind /var/lib/named/etc/bind/etc/default/syslogd를 수정하여 여전히 중요한 메시지를 시스템 로그에 기록할 수 있도록 합니다. 다음 줄을 수정합니다: SYSLOGD=””를 SYSLOGD=”-a /var/lib/named/dev/log”로 변경합니다:
vi /etc/default/syslogd| # # syslogd의 상위 구성 파일 # # 가능한 인수에 대한 전체 문서는 매뉴얼 페이지 # syslogd(8)에 있습니다. # # 원격 UDP 로깅을 사용하려면 SYSLOGD="-r" # SYSLOGD="-a /var/lib/named/dev/log" |
로깅 데몬을 재시작합니다:
/etc/init.d/sysklogd restartBIND를 시작하고 /var/log/syslog에서 오류를 확인합니다:
/etc/init.d/bind9 start11 BIND 구성
이제 BIND의 주요 구성 파일은 named.conf입니다. 그러나 named.conf.local은 이미 named.conf에 포함되어 있으며 사용자 정의 구성을 위해 존재하므로 named.conf.local을 편집하고 영역을 추가합니다. 여기서는 tm.local이라는 영역과 192.168.0.0에 대한 역방향 영역을 추가했습니다:
vi /etc/bind/named.conf.local| zone "tm.local" { type master; file "/etc/bind/zones/tm.local.db"; }; zone "3.13.10.in-addr.arpa" { type master; file "/etc/bind/zones/rev.0.168.192.in-addr.arpa"; }; |
named.conf 또는 named.conf.local에 주석을 추가하려면 //를 사용해야 하며, 위의 tm.local에 대한 영역 파일은 tm.local.db라고 하며 /etc/bind/zone에 위치합니다. 가장 중요한 것은 영역 파일이 주석의 접두사로 //가 아닌 점(.)을 사용해야 한다는 것입니다. 많은 포럼에서 혼란을 보았기 때문에 여기에 추가하고자 했습니다 - (역방향 영역도 동일합니다).
12 영역 구성
tm.local 영역부터 시작하겠습니다.
mkdir /etc/bind/zonesvi /etc/bind/zones/tm.local.db| $TTL 1500 @ IN SOA server1.tm.local. root ( 2007062703 ;serial 28800 ;refresh 3600 ;retry 604800 ;expire 38400 ) ;minimum 25 minutes tm.local. IN NS server1.tm.local. server1 IN A 192.168.0.100 webserver1 IN A 192.168.0.103 webserver2 IN A 192.168.0.104 loadb1 IN A 192.168.0.101 loadb2 IN A 192.168.0.102 tm.local. IN MX 10 server1.tm.local. |
위의 영역 이름 (tm.local) 또는 DNS 서버 이름 (server1)을 필요에 따라 변경하실 수 있습니다. 단, 영역 이름 뒤에 점(.)이 있는 것을 주의하세요.
이제 역방향 영역으로 진행하겠습니다.
vi /etc/bind/zones/rev.3.13.10.in-addr.arpa| $TTL 1500 @ IN SOA server1.tm.local. root ( 2007062703 ;serial 28800 ;refresh 3600 ;retry 604800 ;expire 38400 ) ;minimum 25 minutes IN NS server1.tm.local. 100 IN PTR server1.tm.local. 103 IN PTR webserver1.tm.local. 104 IN PTR webserver2.tm.local. 101 IN PTR load1.tm.local. 102 IN PTR load2.tm.local. |
이제 서버가 외부 IP를 해결할 수 있도록 ISP 서버에 요청을 전달하도록 구성합니다.
vi /etc/bind/named.conf.options전달자 섹션의 주석을 제거하여 다음과 같이 보이도록 합니다:
| forwarders { # Replace the address below with the address of your ISP DNS server 123.123.123.123; }; |
13 서버가 DNS로 자신을 사용하도록 구성
vi /etc/resolv.conf| search tm.local nameserver 192.168.0.100 |
14 참고 문헌 및 출처
- Falko의 기사 “완벽한 서버 - 우분투 하디 헤론 (우분투 8.04 LTS 서버)”
- 우분투의 BIND “DNS 서버를 bind로 설정하는 방법“
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.