본문 바로가기
모의해킹 침해대응 과정/Liunx 관리

리눅스 DNS(domain name system) /day 16

by 알거음슴 2021. 4. 16.

DNS

DNS는 인터넷 도메인 이름들의 위치를 알아내기 위한 IP 주소로 바꾸어주는 시스템이다. 도메인 이름은 인터넷 주소로서 사람들이 기억하기 쉽고, 의미있게 붙인 이름이지만, 인터넷에서 어떤 컴퓨터를 실제로 찾기 위해서는 숫자 체계로 된 IP 주소가 필요하다

 

 

http://www.naver.com URL 분석

www : host name

naver.com : domainname

www.naver.com  : FQDN (Fully Qualified Domain Name)

 * hostname 별로 IP가 부여되어 있으며 hostname 각각이 서버라고 볼 수 있다. 뒤의 도메인네임과 함깨 이용되며 DNS 서버는 각 hostname 별 IP에 이름을 부여하고 관리하는 서버이다.

 

 

리눅스에서 DNS 확인 순서

/etc/hosts : 자체적으로 지정하여 DNS서버보다 우선적으로 찾는 파일

/etc/resolv.comf : DNS 네임서버가 등록되어 있어. 서버내 자체 등록되지않은경우 네임서버와 연결하기 위한 파일

1) # cat /etc/host.conf  : multi 값 확인. 
multi on
2) # cat /etc/hosts : /etc/hosts 파일 내 등록여부 확인.
3) # cat /etc/resolv.conf 파일 내 등록여부 확인. 및 nameserver 로 연결.
nameserver 168.126.63.

[참고]Forward Zone  Reverse Zone

 Forward Zone(도메인 이름 → IP) : 도메인으로 IP 를 가져오는 설정

 Reverse Zone(IP → 도메인 이름) : IP 주소로 도메인을 가져오는 설정.

 

 

DNS 의 종류

 Master DNS Server : 해당 도메인을 관리하는 DNS 서버(Primary DNS Server)

 Slave DNS Server : 해당 도메인에 대한 백업 복사(Copy)를 유지하는 DNS 서버(Secondary DNS Server)

 Cache only DNS Server : 캐싱 기능만 갖는 DNS 서버 (라우터도 이러한 역할을 할 수 있다.)

 Forwarding DNS Server : 포워딩 기능만 갖는 DNS 서버 ( 주로 보안장비에 활용됨 ) 

 

 

BIND DNS 

 BIND : DNS를 효율적으로 구성하는 프로그램, 기존 DNS의 경우 계속 IP와 도메인을 추가한 파일들을 공유해야 했으나,BIND의 경우 .(최상위root) 와 .com 이후 naver.com 이후 www.naver.com   이런식으로 url을 나눠서 구역을 구분하고 그에 따른 DNS를 통한 IP를 알아오는 과정을 그룹화 한 기능.

 

[참고] BIND 9.X on CentOS 8.X 의 기능.

---------------------------------

Program: bind, bind-utils

Daemon & Port & Protocol: named, 53(TCP/UDP)

Configuration File(s): /etc/named.{conf|rfc1912.zones}

Sub Configuration File(s): /var/named/*

Service: named.service

---------------------------------

추가 정리 부분은 : 기능

---------------------------------

 

 

BIND DNS를 통한 DNS 서버 구축

 순서

 1) 패키지 설치 ( yum install bind bind-utils ) 

 2) 서버설정 ( /etc/named.conf /var/named 등)

 3) 서비스 기동 ( systemctl enable --now named )

 4) 방화벽 등록 ( firewall --perfirewall-cmd --permanent --add-service=dns )

 5) SElinux(?)

 

 BIND DNS 서버 구조 확인.

* /etc/named.conf : named 데몬의 설정파일, 개별도메인 설정을 위한 zone파일, named.ca파일 named.local 파일등의 대한 정보가 있다.

* /etc/named.rfc1912.zone : Caching-nameserver 패키지 파일, DNS서버 에 IP와 도메인을 비교해주는 zone파일과 rev 파일 경로와 정보가 있는 파일.

* /var/named : zone 파일들이 있는 디렉토리

* /var/named/named.ca : DNS 힌트 정보파일

* /var/named/ 하위에 위의 named.conf 에 명시한 zone 파일과 .rev 파일 등을 생성한다. 

[참고] 방화벽이 켜져있거나 NIC 카드등에 정보를 업데이트 해야할 경우 그에 따른 추가적인 작업 또한 필요하다.

 

[실습] Root(.)/com DNS 서버 구축 

[실습] DNS 클라이언트 명령어 (nslookup CMD)

[실습] example.com DNS 서버 구축

[실습] test.com DNS 서버 구축DNS

[실습] Master/slave DNS server

[실습] rndc 실습