본문 바로가기
linux

[Linux] dns 서버 구축하기

by seohan1010 2024. 4. 30.

 

 

 

오늘의 랩 

 

 

시나리오

vm1에는 web server 및 dns server를 

구축하고, vm2에서는 

도메인 이름으로 vm1의 web server

에 접근한다.

  

 

dns server 설치 및 설정 

 

 

 

named 서비스를 사용하기 위해 bind 패키지를 설치 

 

 

 

 

named 서비스가 설치되었다. 

 

 

 

systemctl start name.service 

systemctl enable named.service

systemctl status named.service 

를 차례대로 입력 

 

 

 

 

 

firewall-cmd 명령으로 dns를 방화벽 설정해주고 

firewall-cmd --reload 명령어로 

방화벽을 재시작 해준다. 

 

 

web server 설치 및 설정 

 

 

 

httpd 설치 

 

 

 

/var/www/html 디렉토리에 

index.html 파일을 생성하고 

위의 코드를 입력 

 

 

 

 

systemctl start httpd 

systemctl enable httpd

명령어를 입력하여 httpd 서비스 시작 및 

linux를 켤때도 실행할수 있도록 한다. 

 

 

 

 

수정 전 

 

수정 후 

 

dns 서버 설정을 위해 

/etc/named.conf 파일을 수정 

 

 

 

 

 

/etc/named.confg 파일에서

/etc/named.rfc1912.zones 

파일을 참조하고 있다. 

 

 

 

 

/etc/named.rfc1912.zones 파일에 

zone 설정 

 

 

 

named-checkconf 명령어를 입력해

오류여부를 확인한다. 

 

 

 

만약 위처럼 형식에 맞지 않게 

입력했다면 

 

 

 

이렇게 오류가 난다. 

 

 

/var/named 디렉토리로 이동 

 

 

 

 

named.empty를 복사해서 spring.com.zone 

파일을 생성 

 

 

 

 

A record (도메인명을 ip 주소로 변환)을 

추가해준다. 

 

 

 

spring.com.zone 파일의 그룹 소유자를 

 

named 그룹으로 변경해준다. 

 

 

 

 

spring.com.zone 파일의 작성이 완료되었다면 

named-checkzone spring.com spring.com.zone 

명령어를 입력해서 검사를 해주어야 하지만

name-checkzone 명령어가 없어서 패스

 

named-checkzone 명령어가 없다면 

dnf install bind-utils 

명령어를 입력해서 설치해 준다 

 

 

 

named 서비스를 restart

 

 

 

/etc/resolv.conf 의 name server를 211.100.2.170으로 변경 

---> 자기 자신이 dns 서버이기 때문이다. 

 

 

 

vm1에서 도메인 명을 이용한 핑테스트 

 

 

 

vm2에서 dns 테스트 

 

 

 

 

결론  

named 서버에서 dns를 사용하기 위해

zone 파일을 작성해 주었을때 

소유자 그룹이 named로 되어 

있는지 확인하자 

 

 

후기

 

named 서비스와 httpd 서비스를 설정하는 

것도 중요하지만, spring.com.zone 파일의

소유 그룹을 named로 변경해 준 것과 같이

각각의 서비스에서 설정한 것들이 어떻게

실행이 되는지 숙지할 필요가 있을거 같다.