named.conf 설정 ( centos 6 버전 )
# vi /etc/named.conf -> DNS 데몬 설정 파일 # vi /etc/named.conf // options { listen-on port 53 { any; }; -> DNS 서버의 port 번호 설정과 접근 할 수 있는 IP 설정 옵션 -> DNS port 53에 대한 모든 IP가 접근 가능하도록 설정 -> zone 파일 디렉토리 설정 옵션 -> cache dump 파일이 생성되는 파일의 디렉토리 설정 옵션 statistics-file "/var/named/data/named_stats.txt"; -> 통계파일이 생성되는 디렉토리와 파일의 이름을 지정하는 설정 옵션 -> memory관련 통계파일이 생성되는 디렉토리와 파일의 이름을 지정하는 설정 옵션 allow-query { any; }; -> DNS 서버의 쿼리를 허용할 ip 대역 설정 recursion yes; -> 외부에서 Name Server를 지정하여 허용/차단 옵션 dnssec-enable yes; -> DNSSEC 서명검증 기능 설정 (공개키 암호화방식으로 데이터 위조-변조 공격을 막는 설정 ) -> DNSSEC ( Domain Name System Security Extension ),bind 9버전 부터 적용 -> DNSSEC 검증 확인 설정 /* Path to ISC DLV key */ managed-keys-directory "/var/named/dynamic"; -> DLV ( DNSsec Lookaside Validator ) logging { ->Name Server의 실행에 있어 디버깅시에 참조 할 수 있는 log파일 생성 위치를 지정하는 설정 옵션 zone "." IN { -> "." 루트 도메인 지정 -> type : hint(루트도메인을 지정), master(1차 네임서버), slave(2차 네임서버) -> file : Name Server에 대한 설정을 named.ca라는 파일에서 참조하는 설정 -> named.ca 파일은 13개의 루트 네임서버의 정보가 있다. -> 루트 네임서버가 13개일 경우 493Byte으로 UDP 연결이 가능하지만 루트 네임서버가 13개 이상일 경우 512Byte가 넘어서 TCP 연결로 해야하기 때문에 부하가 많아 생겨 13개까지 루트 네임서버가 있다. include "/etc/named.rfc1912.zones"; -> 외부 설정파일 설정 옵션 -> root 영역을 위한 DNSKey 파일 # named-checkconf /etc/named.conf -> conf 파일 정상적인지 체크 |
named.rfc1912.zones 설정 ( centos 6 버전 )
# vi /etc/named.rfc1912.zones -> zone 관련 외부 설정 파일 -> zone 설정을 named.conf에서 설정하지 않고 named.rfc1912.zones 파일에서 설정 // named.rfc1912.zones: zone "localhost.localdomain" IN { zone "localhost" IN { zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN { zone "1.0.0.127.in-addr.arpa" IN { zone "0.in-addr.arpa" IN { zone "dongwook.com" IN { ->도메인명 (dongwook.com 도메인명으로 요청이 들어오면 dongwook.zone 파일을 참조해서 질의 응답) -> MASTER / SLAVE 설정 file "dongwook.zone"; -> zone 파일 설정 (정방향) allow-update { none; }; -> zone 파일 갱신 허용 (any or none) }; zone "0.168.192.in-addr.arpa" IN { ->192.168.0 대역으로 요청이 들어오면 dongwook.rev 파일을 참조해서 질의 응답) -> MASTER / SLAVE 설정 file "dongwook.rev"; -> zone 파일 설정 (역방향) allow-update { none; }; -> zone 파일 갱신 허용 (any or none) }; # named-checkconf /etc/named.rfc1912.zones -> conf 파일 정상적인지 체크 -> 아무런 메세지가 발생하지 않으면 OK |
정방향 zone파일 새성
도메인 주소를 IP주소로 변경 정방향 zone 파일은 *.zone으로 생성
# cd /var/named/ --> 링크 파일인 zone 파일 위치
# cd /var/named/chroot/var/named --> zone 파일 위치 --> zone, rev 파일 설정 후 service named restart 하면 chroot 아래 자동으로 파일 생성됨 # cp /var/named/named.localhost /var/named/dongwook.zone -> named.localhost을 샘플로 이용해서 dongwook.zone 파일 생성
# chown root:named dongwook.zone # chmod 660 dongwook.zone --> 정방향 zone파일 권한 변경 |
정방향 zone 파일 설정
# vi /var/named/dongwook.zone $TTL 86400 -> Time To Live, 데이터의 수명 (1일) -> 도메인 IP을 변경했을 경우 다른 네임서버들은 적용되려면 1하루가 걸린다. -> localhost. 네임 서버 주소 지정, root.localhost. 관리자 메일 주소 -> 데이터 버전정보나 년월일시간으로 시리얼 값 설정 14400 ; Retry -> Refresh가 안될경우 다시 재조회 하는 시간 -> Retry이나 1차 네임서버에 데이터가 수정 및 삭제 되었을 경우 해당 정보 삭제하는 시간 -> TTL 값
IN NS dongwook.com. : 네임 서버 지정 IN MX 10 mail.dongwook.com. : 메일을 보낼 도메인 또는 주소 IN A 192.168.10.10 : dongwook.com 도메인을 찾아갈 IP 주소 (192.168.10.10 으로 찾음) ns IN A 192.168.10.10 : ns.dongwook.com 도메인을 찾아갈 IP주소 (192.168.10.10 으로 찾음) www IN A 192.168.10.10 : www.dongwook.com 도메인을 찾아갈 IP주소 (192.168.10.10 으로 찾음) test1 IN A 192.168.10.101 : test1.dongwook.com 도메인을 찾아갈 IP 주소 (192.168.10.101 으로 찾음)
# 특이사항 : 도메인 끝에다가는 항상 '.' 찍어서 마지막을 나타내야한다. .을 안찍으면 dongwook.com.dongwook.com 으로 인식함.
@ : public domain을 의미 ( 공백 = @ = public domain ) IN : 우측 설정을 적용 SOA : Start Of Authority 권한이 시작됨을 의미 NS : Name Server 네임 서버 지정 A : 호스트 이름에 대응하는 IP주소 설정 PTR : IP 주소에 대응하는 호스트 이름 설정 MX : Mail Exchanger 메일 서버 지정 TXT : 호스트에 대한 텍스트 정보 HINFO : 호스트의 CPU 정보와 운영체제 정보 MINFO : 메일박스와 메일 리스트 정보 UINFO : 사용자 정보 ANY : 호스트에 관련된 모든 레코드들의 정보 # named-checkzone "도메인명" "파일명" # named-checkzone dongwook.com /var/named/dongwook.zone zone dongwook.com/IN: loaded serial 0 -> zone 파일 설정이 정상적인지 검사 |
역방향 rev 파일 새성
IP주소를 도메인으로 변경 (reverse zone) 역방향 rev 파일은 *.rev으로 생성
# cd /var/named/ --> 링크 파일인 rev 파일 위치
# cp /var/named/dongwook.zone /var/named/dongwook.rev -> dongwook.zone 파일을 샘플로 이용해서 dongwook.rev 생성 # vi /var/named/chroot/var/named/dongwook.rev --> 역방향 rev 파일 생성
# chmod 640 dongwook.rev # chown root:named dongwook.rev --> 역방향 rev 파일 권한 변경 |
역방향 zone 파일 설정
# vi /var/named/dongwook.rev $TTL 86400 -> Time To Live, 데이터의 수명 (1일) -> @=public domain, localhost. 도메인네임서버 주소, root.localhost. 관리자 메일 주소 -> 데이터 버전정보나 년월일시간으로 시리얼 값 설정 14400 ; Retry -> Refresh가 안될경우 다시 재조회 하는 시간 -> Retry이나 1차 네임서버에 데이터가 수정 및 삭제 되었을 경우 해당 정보 삭제하는 시간 -> TTL 값
.을 안찍으면 dongwook.com.dongwook.com 으로 인식함. @ : public domain을 의미 ( 공백 = @ = public domain ) IN : 우측 설정을 적용 SOA : Start Of Authority 권한이 시작됨을 의미 NS : Name Server 네임 서버 지정 A : 호스트 이름에 대응하는 IP주소 설정 PTR : IP 주소에 대응하는 호스트 이름 설정 MX : Mail Exchanger 메일 서버 지정 TXT : 호스트에 대한 텍스트 정보 HINFO : 호스트의 CPU 정보와 운영체제 정보 MINFO : 메일박스와 메일 리스트 정보 UINFO : 사용자 정보 ANY : 호스트에 관련된 모든 레코드들의 정보 # named-checkzone "도메인명" "파일명" # named-checkzone 192.168.0.10 /var/named/dongwook.rev -> zone 파일 설정이 정상적인지 검사 |
/etv/resolv.conf
# vi /etc/resolv.conf nameserver 192.168.10.10 -> DNS 서버 IP 설정 -> 다른 네트워크에 있는 IP에 해당하는 도메인과 매칭(찾아) 시켜주는 파일(외부적으로 사용) /etc/hosts, /etc/resolve.conf 차이점 -> /etc/hosts은 특정 서버의 호스트명을 관리하는 파일이다. 인터넷이 미미하던 시절에는 /etc/hosts에다가 호스트명을 관리하고 다른 서버에도 동일하게 내용을 복사해서 넣어줘야 하지만 관리할 서버가 많아지면서 호스트 이름이 중복이 되거나 오타가 나면서 관리가 불가능해졌다. 그래서 이런 문제점을 해결하려고 나온 것이 DNS이다. -> /etc/hosts에서 정의된 내용이 없을 경우 /etc/resolve.conf 정의된 내용을 참조한다. |