■ DNS
- Domain Name System
- UDP 53, TCP 53: 데이터 전송량이 512byte 이상, Zone Transfer일 때 TCP 사용
- DNS Zone Transfer: 여러 대의 DNS Server 간에 DNS 데이터베이스를 복제하는 데 사용되는 방법
○ DNS 통신 흐름
1) Cache 확인(이전에 접속했다면 Cache에 저장해둔다)
2) /etc/hosts, 해당 Directory에 Domain 정보가 있는지 확인
3) 설정한 DNS Server에서 정보 확인
- 4, 5번: 설정한 DNS Server에서 확인이 되지 않으면, Root DNS를 확인 -> 관련 있는 정보(com, org 등)를 보내준다.
- 6, 7번: com에서 정보 확인 -> babo.com 주소의 Name Server 위치 정보를 알려준다.
- 8, 9번: babo.com Name Server에서 www.babo.com의 IP 주소를 확인한다.
- 10, 11번: DNS Server가 www.babo.com의 정보를 PC에 보내주고, PC는 해당 주소로 신호를 보낸다.
○ 설치 및 설정
- 보안 설정을 아직 알지 못하기 때문에 설정 파일에서 disabled로 설정
- setenforce 0를 이용하는 경우, reboot시 설정이 저장되지 않는다.
- 설정을 적용시키기 위해서는 reboot가 필요하기 때문에, 여기서는 setenforce 0를 이용하여 disabled 적용
- 3개를 설치해야 한다.
=> bind, bind-utils, bind-libs
- /etc/named.conf: DNS Server의 기본 설정을 한다.
- listen-on port 53 : 외부에서 네임 서버에 접속해야 하므로, 127.0.0.1 -> any로 변경 / 53번은 유지 (네임서버의 포트 번호와 접근할 수 있는 IP를 설정)
- allow-query : any로 변경, 해당 네임 서버에 질의할 수 있는 호스트를 지정
=> 네임 서버는 하나의 네임 서버만 있는 것이 아니고 하나의 DNS 서버에는 여러 개의 네임서버를 가져올 수 있다. 즉, 추가되는 네임서버 확인에 대한 허용 여부
- recursion : 순환한다는 의미로, Yes로 설정하면 네임 서버에 설정되지 않은 도메인에 대한 질의가 있을 시 캐싱 네임서버의 역할을 하여 DNS(외부) 질의 과정을 거치게 된다. 주 네임 서버는 캐싱 네임서버 역할이 필요하지 않으므로 여기서는 No로 설정.
- /etc/named.rfc1912.zeones : 존을 추가하거나 삭제할 수 있는 파일
- type : master/slave (주 영역/보조 영역)
- file : zone 파일 명
- allow-update : 업데이트(전송) 허용
- 보조 영역 존 파일 설정
- masters : master(주 영역) 위치 표시
- zone을 만들기 위해서 /var/named 있는 다른 zone파일을 복사한다.
=> 기본 파일로 named.localhost 파일을 사용하면 된다.
- $TTL 1D : 다른 서버가 가주가고 얼마 동안 보관할 건지(캐시)-
- @ IN SOA ns1.dodo.com. : 주 도메인 설정, 여기서 설정한 네임서버가 모든 정보를 가지고 있음을 선언.
- root. : 관리자 메일 주소를 정의
- NS ns1.dodo.com. : 네임서버
- MX 10 mail.dodo.com. : 메일 교환기
- ns1 A 1.0.0.3 : ns1.babo.com 호스트는 1.0.0.3이라는 의미(A가 Host를 의미)
* Windows
- 방화벽에 53번 포트 추가
- 방화벽 서비스 재 시작
- #service named start : DNS Server 시작
- 권한을 수정하지 않으면, 에러가 발생한다.
- zone 파일이 있는 /var/named/ Directory에 읽기, 실행 권한을 줘야 다른 PC에서 zone파일을 확인할 수 있다.
- dns zone파일을 named라는 데몬이 읽는데, 그 폴더 소유가 루트 꺼라 권한이 없다. named라는 프로세스(백그라운드 프로그램)가 접근해서 읽을 수 있게 권한을 열어 줘야 한다.
=> Slave(보조 영역)가 있는 경우에는 주 영역으로부터 가주고 와서 써야 되기 때문에 쓰기 권한도 있어야 된다(chmod -R 777 /var/named)
- 서비스 재 시작
- nslookup으로 확인
'Server > Cent OS' 카테고리의 다른 글
Linux Server - HTTP(설치 & 설정) (0) | 2019.07.09 |
---|---|
Linux Server - FTP(설치 & 설정 / Passive Mode 포함) (0) | 2019.07.08 |
Linux Server - DHCP(설치 & 설정) (0) | 2019.07.08 |
Linux 패키지 설치 - YUM & Source (0) | 2019.07.08 |
Linux 방화벽 - iptable / firewall (0) | 2019.07.08 |