반응형
우분투 22.04에서 BIND 9.20.8을 소스에서 설치하고 systemd 서비스로 등록하는 방법
BIND 9.20.8 소스 설치
필요한 개발 도구와 의존성을 설치
sudo apt update
sudo apt install -y build-essential \
libssl-dev libuv1-dev libnghttp2-dev \
libcap-dev libjemalloc-dev pkg-config \
python3-ply
BIND 9.20.8 소스 다운로드
wget https://downloads.isc.org/isc/bind9/9.20.8/bind-9.20.8.tar.xz
tar -xJf bind-9.20.8.tar.xz
cd bind-9.20.8
소스 컴파일 및 설치
configure 스크립트 실행
./configure \
--prefix=/usr/local \
--sysconfdir=/etc/named \
--with-libtool \
--enable-threads \
--with-openssl \
--with-libuv
컴파일 및 설치
make -j$(nproc)
sudo make install
설치 확인
/usr/local/sbin/named -v
BIND 설정
설정 디렉토리 생성 및 기본 설정 파일 복사
sudo mkdir -p /etc/named
sudo cp doc/misc/named.conf /etc/named/named.conf
named.conf 수정
sudo vim /etc/named/named.conf
options {
directory "/var/cache/bind";
listen-on port 53 { any; };
allow-query { any; };
};
캐시 디렉토리 생성
sudo mkdir -p /var/cache/bind
sudo chown -R bind:bind /var/cache/bind
sudo chmod -R 770 /var/cache/bind
bind 사용자 생성
sudo groupadd bind
sudo useradd -r -g bind -d /var/cache/bind -s /sbin/nologin bind
systemd 서비스 등록
- systemd 서비스 파일 생성
sudo vim /etc/systemd/system/named.service
[Unit]
Description=BIND 9 Domain Name Server
After=network.target
Documentation=man:named(8)
[Service]
Type=forking
ExecStart=/usr/local/sbin/named -u bind -c /etc/named/named.conf
ExecReload=/usr/local/sbin/rndc reload
ExecStop=/usr/local/sbin/rndc stop
Restart=on-failure
PIDFile=/run/named/named.pid
[Install]
WantedBy=multi-user.target
PID 디렉토리 생성
sudo mkdir -p /run/named
sudo chown bind:bind /run/named
sudo chmod 775 /run/named
728x90
systemd 설정 리로드
sudo systemctl daemon-reload
서비스 활성화(부팅 시 자동 시작)
sudo systemctl enable --now named.service
서비스 재시작
sudo systemctl restart named.service
서비스 상태 확인
sudo systemctl status named.service
로그 확인
vim /etc/named.logging.conf
logging {
channel default_log {
file "/var/log/named/default.log" versions 3 size 20m;
severity info;
print-time yes;
};
category default { default_log; };
};
로그 디렉토리 생성
sudo mkdir -p /var/log/named
sudo chown bind:bind /var/log/named
sudo chmod 770 /var/log/named
테스트
로컬에서 DNS 쿼리 테스트
dig @127.0.0.1 scbyun.com
원격에서 테스트
dig @<서버_IP> scbyun.com
BIND 9.20.8을 성공적으로 설치하고 systemd 서비스로 등록할 수 있습니다.
반응형
'네임서버' 카테고리의 다른 글
BIND9에 뷰를 설정하는 방법 (0) | 2025.05.09 |
---|---|
우분투 22.04에서 BIND9를 설치하고 설정하는 방법 (0) | 2025.05.09 |
CentOS 7에서 Unbound를 설치하고 DNSSEC을 활성화하여 사용하는 방법 (2) | 2024.10.05 |
BIND에서 nsupdate 명령을 사용하여 동적으로 존을 변경하는 방법 (0) | 2024.05.29 |
우분투에 BIND를 컴파일하고 설치하는 방법 (0) | 2024.05.13 |