본문 바로가기
수업/보안 운영체제

[보안 운영체제] 네임 서버 (중간고사 정리-4)

by graygreat 2018. 4. 23.
728x90
반응형

네임 서버의 개념


● 네임서버 = DNS(Domain Name System) 서버


● 도메인 이름을 IP주소로 변환시켜 주는 역할 = 이름 해석(Name Resolution)


예) www.nate.com -> 211.234.241.204



1. 가장 초기의 네트워크 접속 방법


- 컴퓨터가 몇 대 안됨


- 사용자가 모두 외워서 직접 IP주소로 접근함.





2. hosts 파일을 이용하여 네트워크 접속


- 인터넷에 연결된 컴퓨터가 수십~수백대로 늘어남


- 'hosts' 파일에 URL과 IP주소를 기록해 놓는 방식 사용

예) 127.0.0.1 localhost

     ::1 localhost

     203.249.3.66 www.kyonggi.ac.kr

     172.217.160.100 www.google.com


- hosts 파일의 존재로 어느 정도의 네트워크 규모는 커버 가능




3. 네임 서버를 이용하여 네트워크 접속


- 네트워크상의 컴퓨터가 기하급수적 증가로 인해 모든 IP 정보를 파일 하나에 기록하기가 무리


- 또한 페이지에 대한 IP 변경이 있는 경우에도 hosts 파일을 수동으로 수정하여 실시간 대응 불가


- 이름 해석(Name Resolution)을 전무적으로 해 주는 서버 컴퓨터가 필요해짐(= DNS 서버 = 네임 서버)


- 네임 서버는 인터넷에서 변화하는 모든 컴퓨터의 URL과 IP 정보를 거의 실시간으로 제공하므로, 사용자는 더 이상 URL에 해당하는 IP주소를 신경 쓸 필요가 없어짐


- URL만 알고 있으면 어디서든지 해당하는 컴퓨터에 접속





● IP 주소를 얻는 내부 흐름도



1. URL 입력'


2. /etc/host.conf 파일 조회 후 우선순위 확인


3. /etc/hosts 파일을 열어 nate.com의 IP 주소 확인


4. hosts 파일에 IP 정보가 있다면 IP 주소 획득 후 접속


5. hosts 파일에 없으면 /etc/resolv.conf 파일 확인해 nameserver 네임서버 IP부분이 있는지 확인


6. nameserver 네임서버 IP에 IP부분이 없다면


7. IP 주소 획득 실패


8. nameserver 네임서버 IP가 적혀있다면


9. 해당 네임서버에서 nate.com의 IP 주소 질의


10. 네임 서버가 nate.com의 IP주소를 확인 후 알려줌


11. 네임서버가 응답하지 않으면 IP주소를 알 수 없음




네임 서버의 구축


● 도메임 이름 체계


- 초창기 인터넷에서는 1대의 네임 서버만으로 충분히 IP주소와 이름의 관리가 가능


- 하지만 인터넷이 폭발적으로 확장되면서, 몇 대의 네임서버로는 실시간으로 인터넷 상의 수많은 컴퓨터들을 관리할 수 없게 되었음


- 그래서 트리 구조와 같은 '도메인 이름 체계'를 고안함




● 로컬 네임 서버가 작동하는 순서


- DNS 서버의 이름 해석 순서


1. PC에서 URL 입력


2. /etc/resolv.conf에서 로컬 네임서버 컴퓨터 검색


3. 로컬에서 URL의 IP주소를 물어 봄


4. 로컬은 자신의 캐시 DB 검색 및 정보확인


5. 로컬 -> ROOT에 URL의 IP주소를 물어봄


6. ROOT도 주소를 모르므로 COM 주소를 알려주고 COM에게 물어보라고 함


7. 로컬 -> COM에게 URL의 IP주소를 물어봄


8. COM도 정보를 모르므로 nate.com을 관리하는 주소를 알려주고 nate.com에게 물어보라고 함


9. 로컬 -> nate.com에 URL의 IP주소를 물어봄


10. URL의 IP주소를 알기 때문에 IP주소를 알려줌


11. 로컬 www.nate.com의 IP주소를 요구한 PC에 IP주소를 알려줌



● 캐싱 전용 네임 서버


- PC에서 URL로 IP주소를 얻고자 할 때, 해당하는 URL의 IP주소를 알려주는 네임 서버를 말함


- 앞서 그림에서 로컬 네임서버가 여기서 캐싱 전용 네임 서버의 역할을 수행



● 라운드 로빈 방식의 네임 서버


- 여러 대의 웹 서버를 운영해서, 웹 클라이언트가 서비스를 요청할 경우에 교대로 서비스를 실시하도록 하는 방식


- 웹 서버의 부하를 줄일 수 있음


- 라운드 로빈 방식 네임 서버 작동 방식


1. 외부 사용자는 JH.com 네임 서버에 www.JH.com의 IP주소를 요청


2. 웹 서버를 3대 운영한다라는 가정하에 JH.com 네임 서버는 요청 순서대로 응답




네임 서버 보안


- dig, host, nslookup 등의 도구로 질의를 보내 특정 도메인 조사 가능


- 경우에 따라 전체 DNS DB 정보를 알 수 있음


- 이런 취약점 보완을 위해 BIND는 장비, 네트워크 주소, 암호화 인증에 기반한 접근 제한 기능 제공



● named.conf의 보안 기능






반응형

댓글