달력

5

« 2024/5 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2008. 11. 21. 08:37

10-4.웹사이트 인증 및 기본 보안 Windows Networking2008. 11. 21. 08:37

웹서버는 웹 클라이언트의 요청을 받아서 그들이 요청하는 파일을 제공하는 일을 한다. 무작정 아무에게나 파일을 주지는 않는다. 웹서버는 클라이언트가 접근을 할 때 제일 먼저 사용자 인증이라는 과정을 거치게 된다. 다만, IIS의 기본설정이 어느 누구라도 접근할 수 있는 익명 액세스를 허용하고 있기 때문에 인증이 없는것처럼 보일 뿐이다. 회사의 홍보페이지나 상업용 사이트라면 당연히 홈페이지를 보여주는데 별도의 계정과 암호를 요구해서는 안 될 것이다. 우리가 일반적으로 어떤 사이트에 들어가서 사용자 계정과 암호를 넣어서 로그인을 하게 되는데, 그것과는 구분해야 한다. 그러한 사이트의 홈페이지에 접근할 때는 인증을 요구하지 않는다는 것을 생각하면 될 것이다.

 

<그림10-20. 웹사이트 등록정보 디렉토리 보안 탭>


웹사이트의 인증에 관련된 작업은 웹 사이트 등록정보디렉토리 보안탭에서 설정할 수 있다. 디렉토리 보안탭은 익명 액세스 및 인증제어’ ‘IP주소 및 도메인 이름 제한’ ‘보안통신이라는 3가지 구성으로 되어 있다. 첫번째 [편집]을 눌러 보았다.

 


<그림10-21. 인증 방법 구성>


인증방법화면으로 접근했더니 익명 액세스라는 옵션을 볼 수 있다. 기본적으로 체크되어 있다. 윈도우 서버 2003가 설치되면 기본적으로 “IUSR_컴퓨터이름형식의 계정이 생성되어 있다. 이 계정이 익명액세스를 허용했을 때 사용되는 계정이다. [편집]을 클릭하여 확인할 수 있다.

웹사이트가 회사홍보용이나 상업용이 아닌 내부적으로 사용하기 위한 용도의 컨텐츠를 담고 있다면 익명액세스를 허용하는 것은 바람직하지 않다. 혹은 웹기반의 인트라넷 사이트가 구성되어 직원의 근태관리, 급여관리, 회계관리 등이 이루어진다면 역시 마찬가지이다. 그때는 회사의 직원들이 각각 계정과 암호를 가지고 접근하도록 구성할 필요가 있을 것이다. 익명액세스를 해제하여야 한다. 그러면 계정이 없는 사용자는 더 이상 이 웹사이트에 접근할 수 없다.

 

인증된 액세스 방법으로는 Windows 통합인증, Windows 도메인 서버의 다이제스트 인증, 기본인증,.NET Passport인증이라는 4가지 방법이 제공되는데 ‘Windows 통합 인증이 기본값이다. Windows 통합인증은 익명액세스가 허용되지 않는 경우나, 익명액세스가 허용되어 있더라도 웹페이지의 특별한 파일이 IUSR_computer계정에게 NTFS퍼미션이 허용되지 않는 경우에 사용된다. 이름에서 느껴지는 것처럼 Windows 통합인증은 웹사이트에 접근하는 사용자의 현재 Windows 로그온 정보를 그대로 사용한다. 해당 정보를 이용해서 인증에 문제가 있다면 그 때 로그인 창을 팝업시키게 된다. 멤버서버로 설정된 웹서버에 도메인의 계정으로 로그온한 사용자가 접근하고 있다면 사용자는 별도의 인증과정을 거칠 필요 없이 웹서버의 자원에 접근하는 것이 가능하다는 것이다. Windows 통합인증은 Kerberos, NTLM 등의 암호화된 인증을 사용한다. 기본적으로는 Microsoft 의 운영체제에서만 지원한다. 거의 대부분의 회사환경에서 인증을 원한다면 이 Windows 통합인증을 사용하면 무방하다.

 

기본인증(암호를 일반 텍스트로 보냄)”옵션은 인증을 하긴 하지만 클라이언트가 서버에게 보내는 인증 요청은 Clear text (평문)로 전송되기 때문에 제3자에 의한 도청의 위험이 있다. 좋지 않은 방법이다. 하지만 가장 뛰어난 호환성이 제공되므로 모든 벤더의 웹브라우저의 버전들과 호환이 된다.

 

“Windows 도메인 서버의 다이제스트 인증은 기본인증보다 한단계 향상된 보안을 제공한다. 암호를 전송하기는 하지만 실제로 암호 자체를 전송하는 것이 아니라 MD5 해시함수를 이용한 해시를 인증에 사용하고 있다. 3자가 도청을 하더라도 해시함수의 특성상 해시를 이용해서 원본을 알기는 어렵기 때문에 안전하다고 할 수 있다. 이 다이제스트 인증을 사용하기 위해서는 Windows 2000 도메인 즉, Active Directory가 필수적으로 있어야 한다. 사용자는 Active Directory에 계정을 가지고 있어야 하며 Active Directory에 저장되는 사용자 계정의 암호는 시스템 자체에서 암호화되지 않은 일반문서 형태로 저장되어 있어야만 사용될 수 있다.

 

.NET Passport 인증은 IIS6.0에서 추가된 기능이다. 많이들 사용하는 메신저 프로그램인 MSN Messenger를 사용하기 위해서는 MSN, Hotmail등의 계정에 가입하거나 본인의 메일주소를 Passport로 등록해야 한다는 것을 알고 있을 것이다. 그러한 Passport 계정을 IIS6.0에서 인증하도록 하겠다는 것이다. 결국 마이크로소프트에서 전세계 사용자들을 대상으로 등록받은 그야말로 글로벌 디렉터리인  Passport IIS6.0 웹서버에서 인증용으로 사용할 수 있도록 하겠다는 것인데, 참으로 놀라운 일이 아닐 수 없다. 사용자들이 Passport 계정 하나만 가지면 되도록 하겠다는 야심찬 도전이라고 생각된다. 발표당시에는 상당한 이슈가 되었던 것이 사실이지만 현재 시점에서의 보편성에 대해서는 다소 부정적이다. 늘 그렇듯이 새로운 도전이 보편화되기 위해서는 어느 정도 진통을 겪어야 하는 만큼 분위기가 무르익어야 될 것으로 보여진다.


<그림10-22. .NET Passport 인증>


웹서버에서 .NET Passport 인증을 선택했을 때 (익명인증 옵션 제거) 클라이언트가 접근하면 <그림10-22>의 인증창을 볼 수 있다. 기존에 가진 Passport ID와 암호를 입력하면 로그인이 가능하다.


<그림10-23. 해독가능한 암호화 저장>


<
그림10-23>을 보면 Active Directory 사용자 및 컴퓨터 스냅인을 이용하여 yhsong 이라는 계정의 옵션을 들여다 보고 있다. ‘해독가능한 암호화를 사용하여 암호를 저장합니다.’ 옵션이 체크되어 있어야만 다이제스트 인증을 사용할 수 있다.


<그림10-24. IP 주소 액세스 제한>


<
그림10-20>에서 이번에는 ‘IP주소 및 도메인 이름제한에 대한 설정을 살펴보자. 유용한 설정이다. 기본적으로 IIS IP제한이나 도메인 제한을 전혀 하지 않고 있다. 사내의 게시판을 위해 사용되는 웹서버라면 외부에서는 아예 접속자체를 차단시킬 수 있는 방법이 된다. 혹은 외부의 특별한 몇몇 컴퓨터들의 IP Address를 기준으로 필터링하는 것도 가능하다. 세가지 유형으로 제한할 수 있는데, 특정한 컴퓨터(IP Address), 컴퓨터그룹(네트워크ID), 도메인이름 중 하나를 선택할 수 있다.

<그림10-25. 단일 컴퓨터 액세스 허가>

대부분의 보안제품들이 그렇듯이 액세스 제한방법은 2가지를 사용할 수 있다. 최대의 보안(모든 것을 막고 필요한 것만 열어주는 방법)과 최소의 보안(모든 것을 열고 필요한 것만 제한하는 방법) 을 사용할 수 있다. 메시지가 다소 헷갈리긴 하지만 논리적으로 생각하면 쉽게 이해할 수 있다. 예제에서는 최소한의 보안을 적용한 것으로 192.168.0.16을 제외한 모든 IP를 허용한 것을 보여준다. 도메인 이름을 이용한 제한을 사용하고자 할때는 DNS서버의 역방향 조회 영역의 구성이 되어 있어야 한다.


<그림10-26.IP 주소 액세스 제한 >



192.168.0.16
클라이언트에서 해당 웹사이트에 연결하면 <그림10-26>과 같은 에러메시지를 만나게 된다.


<그림10-27.사용자 지정 오류 메시지>


이러한 경우 뿐만 아니라 IIS서버에는 다양한 오류 메시지가 미리 정의되어 있다. %WinDir%\Help\iisHelp\common를 확인하면 수많은 html 문서들을 볼 수 있다. html문서를 편집해도 좋고, 새로운 오류 메시지 문서를 만들어서 웹사이트에 연결시킬 수도 있다.

 

이상으로 IIS의 웹사이트 등록정보에 대해서 필수적인 사항들을 위주로 몇 가지 살펴보았다. IIS서버의 온라인 도움말 페이지를 참고하기 바란다. 이미 MS는 방대한 수준의 자료를 도움말을 통해서 제공하고 있다.

:
Posted by 새벽예찬