메뉴 닫기

Ubuntu 22.04 에서 MaraDNS 3.5.0036 설치하기

Ubuntu 22.04 에서 MaraDNS 설치하는 방법입니다.

apt 와 같은 패키지 관리 툴로 손쉽게 설치가 가능한 부분이 있지만,

# apt -y update

# apt -y install maradns

여기에서는 소스로 설치하고 관리하는 방법을 알려드립니다.

우선 MaraDNS 의 특징은 용량이 작고, 가볍고 (메모리 점유율이 낮음), 빠른 (Performance) 장점이 있습니다.

PowerDNS 는 DB 와 연동을하여 레코드로 zone 파일 내용을 관리하지만, MaraDNS 는 Bind 와 같이 파일로 레코드를 관리합니다.

1. 설치

소스를 설치하기 위해 gcc 컴파일러를 우선 설치 합니다.

# apt -y install gcc

그리고 현재 기준 MaraDNS 3.5.0036 버전을 다운로드하고 압축을 풀어 설치합니다.

– Download : https://maradns.samiam.org/download.html

# cd /usr/local/src

# wget https://maradns.samiam.org/download/3.5/3.5.0036/maradns-3.5.0036.tar.xz

# tar xvf maradns-3.5.0036.tar.xz

# cd maradns-3.5.0036

# CC=cc

# export CC

# ./configure

# make

# make install

설치가 모두 마무리되면 출력된 내용과 같이 데몬을 실행해줍니다.

# systemctl start maradns
# systemctl start deadwood    // 필수 구동은 아니므로, 아래 설명 확인 후 구동 여부를 선택해주세요.

netstat 명령으로 포트가 확인되면 좋은데, MaraDNS 는 UDP 통신을 하므로, netstat 명령으로 포트가 확인되지 않아 프로세스 상태로 체크해봐야 합니다.

# systemctl status maradns

2. 설정

MaraDNS 는 역할에 따라 설정 파일이 두개로 나뉩니다.

1) /etc/mararc (관련 데몬 : maradns)

이 파일은 DNS 서버를 실행하는 데 사용되며, DNS 질의 및 응답 동작을 제어하는 다양한 설정을 포함합니다. 주요한 설정 사항은 zone 파일의 경로, Listen 주소, 캐싱 및 안전성 관련 설정 등이 있습니다.

2) /etc/dwood3rc (관련 데몬 : deadwood)

이 파일은 특정 환경에서의 DNS 서버 동작을 제어하는데 사용됩니다. DNS 캐시 설정, 불필요한 DNS 쿼리에 대한 차단, 차단된 도메인 목록 관리 등과 같은 설정을 포함할 수 있습니다. DNS 의 보안과 효율성을 향상시키는데 사용됩니다.

여기에서는 기본 설정만 다루겠습니다.

# vi /etc/mararc

csv2 = {}
csv2[“kwj123.shop.”] = “db.kwj123.shop”           # 등록할 도메인과 zone 파일 이름
ipv4_bind_addresses = “10.8.2.148”    # Binding 할 IP 주소 (ifconfig 로 확인되는 IP)
chroot_dir = “/etc/maradns”

* 외부 질의를 허용하려면 Binding 주소를 공인 IP 로 변경해야 합니다.

  VM 의 경우 ifconfig 명령으로 공인 IP 가 보이지 않는 경우에는 (공인과 연결된) 사설 IP 로 입력해 보시기 바랍니다.

도메인 zone 파일을 생성합니다.

# vi /etc/maradns/db.sysdocu.kr

kwj123.shop.      +86400    soa    ns1.kwj123.shop. dns@kwj123.shop. 2023121701 86400 3600 604800 10800 ~
kwj123.shop.      +86400    ns     ns1.kwj123.shop. ~
kwj123.shop.      +86400    ns     ns2.kwj123.shop. ~
kwj123.shop.      +86400    mx     10 mail.kwj123.shop. ~
mail.kwj123.shop. +86400    a      49.247.170.71 ~
ns1.kwj123.shop.  +86400    a      49.247.170.71 ~
ns2.kwj123.shop.  +86400    a      49.247.170.71 ~
kwj123.shop.      +86400    a      49.247.170.71 ~
www.kwj123.shop. +86400    a      49.247.170.71 ~

적용을 위해 데몬을 재시작 합니다.

# systemctl restart maradns

 

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x