반응형
Cache DNS 서버 생성하기 (실습)
| Cache DNS 서버 생성하는 이유 실제 캐시서버를 dns 서버로 많이 지정한다 캐시가 없다면 매번 루트 서버 - TLD 서버 - 권한 있는 서버를 거치는 복잡한 과정을 반복 해야 되기때문이다 캐시가 있다면 이전에 방문했던 도메인 정보를 로컬 캐시 서버가 기억했다가 즉시 답변해준다 1. 반복 질의 수행: 클라이언트 대신 루트(.)부터 하위 도메인까지 직접 찾아가 IP를 알아내는 복잡한 과정을 대행 2. 응답 속도 향상: 한 번 찾은 IP는 메모리에 저장(캐싱)하여, 다음 요청 시 외부 망 접속 없이 즉시 응답 3. 트래픽 절감: 반복적인 외부 질의를 줄여 네트워크 대역폭 낭비를 방지 |
| 실습하기 1. 리눅스 서버(192)에 Bind 서버 설치 확인 및 설치 # dnf list bind bind-utils - 설치 확인하기 # dnf install -y bind bind-utils - (* 반드시 bind 와 bind-utils 둘 다 설치) 2. /etc/named.conf 파일 설정 - 많은 내용들이 있는데 다 지우고 아래 내용만 입력할 것 # vi /etc/named.conf 입력 options { directory "/var/named"; }; zone "." { type hint; file "named.ca"; }; # cat /etc/named.conf - 내용 저장되어있는지 확인 하기 3. 그룹 소유자 named로 설정하기 # chgrp -R named /etc/named.conf # chgrp -R named /var/named # ls -l /etc/named.conf - 2개파일 다 named 로 지정 되어 있는지 확인 하기 4. systemctl start named.service - 서비스 실행 5. nslookup www.google.com 192.168.10.1x - nslookup [조회할 도메인] [질문할 DNS 서버] - 남의 집주소(구글) 도 잘 알아다 주는지 확인하는 테스트 (캐싱 서버 기능이 작동하는지 확인) 그리고 nslookup www.google.com ast19.sec 에 물어보면 오류가 나와서 /etc/resolv.conf 에 nameserver 192.168.10.11 과 nameserver 8.8.8.8을 적으면 됨 nslookup www.google.com 만 적으면 local DNS Server 에 물어보는 것임 |
💡참고사항
| /etc/named.conf 파일 설정 - 데몬(/usr/sbin/named)(여기서는 설정 안 함):DNS 서비스를 실제로 돌리는 실행 파일 - 관리 스크립트(/usr/lib/system/system/named.service)(설정 안 함): systemctl 명령어로 서버를 켜고 끄는 관리 도구 - 환경 설정 파일(/etc/named.comf)(핵심 설정): 누가 접속하게 할지, 어디를 참고할지를 적는 가장 중요한 파일 (내가 지금 세팅하는 options, zone 명령어는 모르는 주소를 요청받으면, /var/named/named.ca 파일에 적힌 루트 서버를 참고해서 대신 찾아줘라 는 뜻) - 설정 파일 경로(/var/named/)(데이터 폴더 위치 확인): 루트 서버 정보(named.ca)가 이 폴더 안에 들어 있어야 한다 (서버가 작동하려면 폴더 위치(/var/named)와 파일(named.ca)을 알아야 하고, 그 폴더와 파일들에 접근할 수 있는 권한(named 그룹 소유)이 반드시 있어야 한다) * named.ca 파일: 전 세계 루트 DNS 서버 주소가 들어 있음 / zone 파일들: 특정 도메인(예: naver.com)의 IP 정보를 직접 소유하고 관리하는 원본 데이터 파일 인데 캐싱 DNS 서버는 도메인을 관리하지 않으므로 zone 파일들이 필요가 없음 - 이외 관련 파일 /etc/resolv.conf: 이 컴퓨터가 주소를 물어볼 DNS 서버의 IP 주소를 적어두는 파일 /etc/host.conf: 주소를 찾을 때 **내 컴퓨터의 메모(hosts 파일)**를 먼저 볼지, DNS 서버에 먼저 물어볼지 그 순서를 정하는 파일. 기본 설정이 잘 되어있어서 기본값으로 둠 - 실행을 위한 최소 권한: named.conf와 named.ca 파일의 그룹 주인이 named 여야 서버가 실행 된다 |

Authoritative DNS서버 생성하기 (실습)
| 프로세스 확인하기 1. DNS 서버 설치 및 확인 2. /etc/named.conf 파일 설정 3. Cache 파일 확인: named.ca 파일 4. Zone 파일 생성 - 도메인 zone 파일 - localhost zone 파일 5. name 서버 시작 |
| * { type [ master | slave | hint ]; file " zone 파일명"; allow-update {[ none | 2차 DNS 서버 IP ] ; }; masters { master DNS 서버 IP; }; }; -----> allow-update: 외부 수정을 허용할 때 쓰는데, 지금은 직접 수정하니까 필요 없음 masters: 남의 데이터를 복사해올 때 쓰는데, 지금 서버는 원본이니까 필요 없음 지금 실습은 type, file만 쓸 것임 * sec 사용 배경: 예시로 yahoo.com을 등록 하려면 com에 등록해야 하지만 현재 실습 하는 동안 도메인이 없으므로 존재하지 않는 도메인(ex. ast##.sec) 로 도메인을 등록 한 것임 |
💡참고사항
| * { type [ master | slave | hint ]; file " zone 파일명"; allow-update {[ none | 2차 DNS 서버 IP ] ; }; masters { master DNS 서버 IP; }; }; -----> allow-update: 외부 수정을 허용할 때 쓰는데, 지금은 직접 수정하니까 필요 없음 masters: 남의 데이터를 복사해올 때 쓰는데, 지금 서버는 원본이니까 필요 없음 지금 실습은 type, file만 쓸 것임 * sec 사용 배경: 예시로 yahoo.com을 등록 하려면 com에 등록해야 하지만 현재 실습 하는 동안 도메인이 없으므로 존재하지 않는 도메인(ex. ast##.sec) 로 도메인을 등록 한 것임 |
'Infra & Security Eng > Project Implementation' 카테고리의 다른 글
| slave name server 만들기 (master-slave 네임서버 구조, 역할 비교, 실습) (0) | 2026.01.28 |
|---|---|
| 다중 도메인 서버 구현하기 (0) | 2026.01.27 |
| vsftpd 사용자 접근제어 (user_list 화이트리스트, PAM 기반 접속 제한 설정하기) (0) | 2026.01.23 |
| vsftpd를 이용한 FTP 서버 구축 및 chroot 기반 사용자 격리 보안 설정 (0) | 2026.01.22 |
| CRON 명령, RSYNC 서버 프로그램 설치하기, /etc/rsyncd.conf 에서 서버 설정하기 (0) | 2026.01.21 |