리눅스 실습

DNS서버(실습)

세용용용용 2023. 5. 17. 15:06

1. 가상환경 가져오기

어댑터1(가상환경 우클릭 >>> 설정 >>> 네트워크)

 

어댑터2(가상환경 우클릭 >>> 설정 >>> 네트워크)

우측상단 파일 >>> 호스트 네트워크 관리자 ( DHCP서버 사용함)

DHCP서버 : 네트워크에서 IP 주소와 관련된 구성 정보를 동적으로 클라이언트에게 제공하는 역할

 

우측상단 파일 >> 환경설정 >> 네트워크 10.0.3.0/24 추가

 

밑에 사진과 같이 설정 해줄것임

역할 DNS 서버 WEB 서버 DB 서버
FQDN (서버이름.도메인네임) ns.(도메인네임)
ex) ns.jsyoung.local
web.(도메인네임)
ex) web.jsyoung.local
(별명www.jsyoung.local)
db.(도메인네임)
ex) db.jsyoung.local
IP Address
(NAT Network연결)
(주의: NAT아님.)
10.0.3.10/24
gw 10.0.3.1
dns 8.8.8.8
(dns구축후 변경)
10.0.3.20/24
gw 10.0.3.1
dns dns 8.8.8.8
(dns구축후 변경)
10.0.3.30/24
gw 10.0.3.1dns dns 8.8.8.8
(dns구축후 변경)
IP Address
(Host Only) -자동할당 됨.
자동할당 하거나 static
(gateway나 dns는 설정하지 않음)
자동할당 하거나 static
(gateway나 dns는 설정하지 않음)
자동할당 하거나 static
(gateway나 dns는 설정하지 않음)

 

가상환경 실행후 ssh로 연결

 

1. hostname 설정하기

sudo hostnamectl set-hostname ns.jsyoung.local

hostname >>> 바뀌었는지 확인하기

exec sudo systemctl restart systemd-hostnamed >>> 변경된 호스트네임을 즉시 적용하기 위해 아래 명령어를 실행

ssh 다시 재접속

 

2. ip주소 설정

일단 ip addr show, nmcli con show, nmcli device로 확인

 

sudo nmcli con add con-name enp0s3-static type ethernet ifname enp0s3 ipv4.method manual ipv4.addresses 10.0.3.10/24 ipv4.gateway 10.0.3.1 ipv4.dns 8.8.8.8 >>> [enp0s3 인터페이스에 정적 IP 주소를 할당]

sudo nmcli con up enp0s3-static : 활성화 , 업시켜주기

nmcli con show, ip addr show : 바뀐지 확인ping 8.8.8.8, ping 10.0.3.1 >>> 되는지 확인

 

DB, WEB 서버도 똑같은 방식으로 위의 사진과 같이 설정 해주자 ㄱㄱ

최종 적으로 마지막 만든 db서버에서 web,dns랑 ping되는지 확인!!!

최종 적으로 마지막 만든 db서버에서 web,dns랑 ping되는지 확인!!!

 

DNS서버 먼저 구축 해보자

 

(1)

yum install bind bind-utils  : bindbind-utils 패키지를 설치

[BIND는 DNS(Domain Name System) 서버 소프트웨어입니다. DNS는 인터넷에서 도메인 이름과 IP 주소 간의 매핑을 담당하여 사용자가 도메인 이름을 사용하여 웹 사이트를 찾을 수 있도록 도와줍니다.]

 

(2)

rpm -ql bind : bind 패키지의 파일 목록을 확인하기 위해 다음 명령어를 사용

rpm -ql bind-utils : bind-utils 패키지의 파일 목록을 확인하기 위해 다음 명령어를 사용

 

(3)

네임서비스를 위한 config 구성파일 변경

named.conf 파일은 BIND DNS 서버의 동작 및 설정에 대한 중요한 구성 정보를 포함

sudo vim /etc/named.conf ( 밑의 사진과 같이 변경후 wq로 저장하고 나감)

 

 

(4) vim /etc/named.rfc1912.zones : 어떤 도메인은 어떤 zone파일을 찾아야 하는지 연결 정보

이 두개를 추가 시켜주기 위에가 정방향, 밑에가 역방향

sudo named-checkconf : 파일 문법 체크 오류 없어야됨!!!!

 

 

(5) 지정한 zone 만들러 이동!!!

도메인 네임 존파일 연결!!

정방향 영역 zone - jsyoung.local(도메인 네임) : /var/named/jsyoung.local(도메인네임).zone

역방향 역영 zone - 3.0.10.in-addr.arpa : /var/named/10.0.3.0.zone

 

존파일 만들어 주기

sudo -i : 현재 사용자를 root로 전환하는 명령어(계속 sudo치기 귀찬으니까 그냥 전환해주자 ㅋㅋㅋ)

cd /var/named , ls -l : 기존의 zone 파일들이 있음cp named.empty jsyoung.local.zone : 기존 zone 파일 복사cp named.empty 10.0.3.0.zone : 기존 zone 파일 복사ls - l : 만들어 졌나 확인 ㄱㄱㄱ

 

정방향 존파일 부터 수정해보자!!!sudo vim jsyoung.local.zone

  • NS ns.jsyoung.local.: NS(Name Server) 레코드 설정으로, 도메인의 주 DNS 서버를 지정합니다.
  • ns IN A 10.0.3.10: A(Address) 레코드 설정으로, 도메인의 IP 주소를 지정합니다.
  • web IN A 10.0.3.20: 도메인의 서브도메인 "web"의 IP 주소를 지정합니다.
  • www IN CNAME web: "www" 서브도메인을 "web" 서브도메인에 대한 별칭(CNAME)으로 설정합니다.

변경후 : named-checkzone jsyoung.local /var/named/jsyoung.local.zone( 오타가 있는지 확인하는 명령어)

 

역방향 존파일 수정!!!

sudo vim 10.0.3.0.zone

변경후 : sudo named-checkzone 3.0.10.in-addr.arpa /var/named/10.0.3.0.zone

 

아래 사진의 존파일에 대한 소속 그룹을 named로 변경(named.service 데몬을 named 그룹이 관리함)

chown :named *.zone

 

 

nmcli connection show NetNetwork | grep ipv4.dns : 네트워크 연결에 대한 IPv4 DNS 설정 정보를 확인

nmcli connection modify NetNetwork ipv4.dns 127.0.0.1,8.8.8.8 : NetNetwork"라는 이름의 네트워크 연결에 대해 DNS 서버 주소를 수정하는 명령입니다. 이 명령은 IPv4 DNS 서버 주소를 "127.0.0.1"과 "8.8.8.8"로 설정합니다.

nmcli con up NetNetwork : 정보를 바꿔주었기 때문에 재활성화

cat /etc/resolv.conf : 변경확인

 

데몬 시작/자동시작

$ systemctl status named.service

$ systemctl start named.service

$ systemctl enable named.service

$ systemctl status named.service

 

(6) 방화벽 정책 추가해보자

firewall-cmd --list-all : firewalld 서비스의 현재 설정을 표시하는 명령

firewall-cmd --add-service=dns : firewalld의 설정에 "dns" 서비스를 추가하는 명령어입니다. 이를 통해 DNS 서비스에 대한 통신이 허용됩니다.

firewall-cmd --add-service=dns --permanent : 명령은 firewalld의 설정에 "dns" 서비스를 영구적으로 추가하는 명령

firewall-cmd --list-all : 추가 됬는지 확인

 

(7) test(localhost)

sudo systemctl restart named : DNS 서비스를 다시 시작하여 변경 사항을 적용하거나 서버를 재시작하는 데 사용됩니다.

WEB, DB 서버에서 nslookup www.jsyoung.local,  nslookup 10.0.3.50했을 때, 정상적으로 답장이와야함.

1) bind-utils 설치

2) ip설정 정보에서 dns설정 정보(8.8.8.8로 설정한거) 내부의 DNS server(10.0.3.10)로 변경

3) nslookup test 해보기

 

WEB, DB 서버에서

yum install bind bind-utils

sudo nmcli con modify NetNetwork ipv4.dns 10.0.2.10

sudo nmcli con up NetNetwork