환경 - Ubuntu 18.04
DNS 설정을 위한 선행조건
- bind9 패키지 설치
- ufw(방화벽)에 53/tcp,udp 포트 추가
- /etc/hosts 파일에 DNS 추가
- /etc/bind/디렉토리 속 zone, rev파일 생성
1. bind9 패키지 설치
$ sudo apt-get install bind9
2. ufw(방화벽) 설정
$ sudo ufw enable - Ubuntu는 기본적으로 방화벽이 Off 상태이므로, 꼭 방화벽을 먼저 활성화 합니다.
$ sudo ufw allow 53 - allow 명령을 이용하여 53번 포트를 추가해줍니다. (tcp,udp를 생략하면 둘 다 등록!!)
3. /etc/hosts 파일에 사용할 DNS 추가
$ sudo vi /etc/hosts
127.0.0.1 localhost
127.0.1.1 test-virtual-machine
192.168.0.20 ns.test.local <- 다음과 같이 로컬아이피와 사용할 DNS입력
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
4. bind9 설정파일 변경
$ sudo vi /etc/bind/named.conf.options
options {
directory "/var/cache/bind"; <- 디렉토리 경로 설정
dnssec-validation auto; <-
auth-nxdomain no;
listen-on port 53 { localhost; 192.168.0.0/24; }; <- server가 query에 응답할 인터페이스와 포트를 지정
allow-query { any; }; <- DNS query를 할 수 있는 host를 지정(any면 모두 가능)
forwarders { 8.8.8.8; }; <- 포워딩에 사용될 IP를 입력
recursion yes; <- 재귀 query를 활성화
};
5. bind9 영역 설정
$ sudo vi /etc/bind/named.conf.local
// FORWARD
ZONE zone "test.zone" IN { <- domain 이름 지정
type master; <- type은 주로 master or slave로 사용
file "test.zone"; <- test.zone 파일 경로 지정
};
// REVERSE
ZONE zone "0.168.192.in-addr.arpa" IN { <- IP를 역순으로 기재(/24이기에 x.x.x만 입력)
type master; <- type은 주로 master or slave로 사용
file "test.rev"; <- test.rev 파일 경로 지정
};
6. bind9 zone 파일 생성
$ sudo vi /var/cache/bind/test.zone <- 주의!! 꼭 named.conf.local 속 설정한 파일 이름으로 만들기!!
$TTL 86400
@ IN SOA ns.test. root.ns.test. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
86400) ; Negative Cache TTL
;
@ IN NS ns.test.
ns IN A 192.168.0.20
7. bind9 zone 파일 생성
$ sudo vi /var/cache/bind/test.rev <- 주의!! 꼭 named.conf.local 속 설정한 파일 이름으로 만들기!!
$TTL 86400
@ IN SOA ns.test. root.ns.test. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
86400) ; Negative Cache TTL
;
@ IN NS ns.
20 IN PTR ns.test.
8. bind9 설정 구문 오류 테스트
# named-checkconf <- 해당 명령어 입력 시 아무런 문구가 안뜨면 오류가 없는 것!
9. bind9 데몬 재시작
$ sudo systemctl restart bind9
10. nslookup으로 설정한 DNS 확인
$ nslookup
> ns.test
Name: ns.test.
Address: 192.168.0.20
ns.test로 테스트 시 ns.test의 IP가 나오는걸 확인할 수 있다.
'Linux > Ubuntu' 카테고리의 다른 글
Ubuntu - Root 계정 활성화 및 SSH 설치, Root 접속 활성화 (0) | 2021.11.24 |
---|---|
Ubuntu - APM 설치 방법 (0) | 2021.11.19 |
댓글