RadarURL

조회 수 3653 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
SSL인증서를 사용할 때, https는 왜 도메인기반 virtual host가 안되는가에 대해서 http://linuxchannel.net/board/read.php?table=qna&no=6427 에 2006년 1월에 답변한 내용을 정리한 것이다. 단일도메인 인증서(인증서 1개에 하나의 도메인만 갖고 있음)를 기준으로 답변한 내용이다. 와일드카드 인증서(*.foo.com 형태의 인증서)와 멀티인증서(foo.com, bar.com 등 여러 도메인을 하나에 넣은 인증서. 즉, Common Name(CN)을 여러개 갖고 있음)는 1개의 인증서로 같은 IP, 같은 포트(443)로 여러 도메인의 SSL 서비스가 가능하다.

한편 Channy's Blog( http://channy.creation.net/blog/?p=444 )에 따르면 TLS 프로토콜(RFC 2246)의 확장 규약(RFC 3546)에서 웹 서버와 브라우저 사이의 통신을 할 때 서버명을 미리 보내는 SNI(Server Name Indication)을 추가하였다고 한다. 따라서, 브라우저와 서버가 지원하게 되면 쉽게 virtual 설정이 가능할 날이 올 것으로 보인다.

----------------------------------------------------------------------------------------------------
글쓴이 : 좋은진호
글쓴날 : 2006년 01월 10일

     [이현철]님이 남기신 글:

> 상용화용 CA와 서버에서 만든 CA(테스트용 CA)를 사용할 경우
> 다른점은 단지 웹브라우저 접속시 서버에서 만든 CA를 사용해서 서명한 사이트 경우에는 경고창이 뜬다는것으로 알고 있습니다.
> (신뢰성이 없는 사이트라는 형태의 메세지)
>
> 상용화 CA라는것을 사용하는 이유는 신뢰성을 믿고 사이트를 이용해도 된다는 판단이라고 생각합니다.
>
> 그 이외 기능은 같다고 생각합니다.(암호화 처리)
    
예. 그렇습니다.

사설인증서를 사용하더라도 테스트는 동일하게 하실 수 있으며,
내부용으로 사용하는 것이나 단지 암호화를 위한거라면 사설인증서를 사용해도 됩니다.

> ----------------   ------------------ --------------------
> 현재 1대서버에 2개의 도메인이 존재하고 두개의 도메인 전부(http)웹서비스 그리고
> 하나의 도메인에 관해서만(https) 이용하고있습니다.(상용화키를 이용하지 않음-테스트용ca를 가지고 https형태로 이용중)
>
> httpd.conf에는
> ---------------------------------------------------
> <VirtualHost xxx.xxx.xxx.xxx:80>
>    ServerAdmin xxxxxxxxx
>    DocumentRoot /home/xxxxxxx
>    ServerName zec.gigaprize.co.jp
>    ErrorLog logs/error.log
>    CustomLog logs/access.log common
> </VirtualHost>
> <VirtualHost xxx.xxx.xxx.xxx:80>
>    ServerAdmin xxxxxxxxx
>    DocumentRoot /home/xxxxxxx
>    ServerName gourmet-star.gigaprize.co.jp
>    ErrorLog logs/error_1.log
>    CustomLog logs/access_1.log common
> </VirtualHost>
> ---------------------------------------------
>
> http://zec.gigaprize.co.jp/index.html (현재 index.html와 존재하지 않치만 도메인까지 접속은 가능함)
> http://gourmet-star.gigaprize.co.jp/index.html (현재 test용 index.html)이 존재함
>
> ----------------------------------
> ssl.conf에는
> ----------------------------------
> <VirtualHost _default_:443>
> #   General setup for the virtual host
> DocumentRoot /home/xxxxxxx
> ServerName gourmet-star.gigaprize.co.jp:443
> ErrorLog logs/ssl-error_log
> TransferLog logs/ssl-access_log
> -----------------------------------------------
> gourmet-star.gigaprize.co.jp 만 https(ssl)형태로 설정이 되어 있음.
>
> ----
> 실제 접속을 해보시면 알시겠지만 https://gourmet-star.gigaprize.co.jp/index.html
> 제대로 접속이 되고 있습니다.
>
> 그런데
> https://zec.gigaprize.co.jp/index.html
> 로 접속해보면 이 도메인도 https로 접속되어 버립니다.(index.html은 실제 존재하지 않는데, 내용을 보면 gourmet-gigaprize.co.jp 형태로 접속해버립니다.(웹브라우저 URL은 zec.gigaprize.co.jp 인데 index.html은
> gourmet-star.gigaprize.co.jp 내용이 보이고 있습니다)
>
> -------질문 1입니다..-----------------
> 위의 결과를 보면 1대의 서버에 443의 포트로 요청이(https가 설치되어있지않은 도메인도 ) ssl.conf에 설정된 도메인으로 결과를 보여주고 있는데 이것이 정상인지요?
> 개인적으로 https 설정되지 않은 도메인 경우에는 80은 보여주지만
> 443관해서는 에러가 나는 것이 정상이라고 생각하는데, 아니면 제 설정이 잘못되었습니까?
>------------------------------------

정상적인 현상입니다.
이유는 아래 질문에서 답변.

> --------질문2입니다-------------------
> 그리고 위의 두개 도메인을 전부 https형태로 시험해봤지만.
> (ssl.conf에 버츄얼로 두개의 도메일 등록-물론 ca와 각각 도메인별로 만들었음-테스트용 ca를 사용)
>
> 두개의 도메인을 등록 후 아파치설정 syntax테스트
> #sh apache2/bin/apachectl configtest
> Syntax OK
> 그리고 restart 한후 error.log를 보면 기존의 443포트가 이용하고 있기때문에 apachessl를 기동할수없다고 나옵니다.
> 결국 한대의 서버에 443포트는 하나의 도메인만 움직일수 있다는 결론인데요.(80포트는 몇개의 도메인을  띄울수있는데 말이죠)
>
> 결국 한대의 서버에 하나의 도메인만 https형태로 작동하는지요.
> --------------------------------------------------------------
> (상용화 CA사이트에 보면 700달러 정도주면 서브도메인(aaa.domail.com ,
> bbb.domail.com) 까지 전부 대응하는 CA도 팔고 있는데요..
> --------------------------------------------------------------

우선 처음 질문올릴 때 말씀하신, 여러 도메인을 SSL로 서비스를 한다면

1) 한 서버에 여러 IP를 할당하고, 웹서버는 각각의 IP에 바인딩해서 올리셔야 합니다.
   또는 https 포트를 443외에 각 도메인별로 다르게 하여 바인딩하거나.

2) 완전히 다른 서버에 한대당 하나의 도메인을 사용해야 합니다.

http(80포트)에서 virtual host 설정하는 것처럼 https를 도메인기반 virtual 설정으로는 안됩니다.

이유는 프로토콜의 계층만 이해하면 간단합니다.
HTTPS로 표시되는 SSL프로토콜층은 HTTP보다 하위에 있습니다.
그런데 웹서버의 virtual host설정에 의한 도메인정보는 HTTP의 헤더에 붙어있습니다.
즉, SSL프로토콜은 HTTP보다 하위이니 HTTP의 헤더를 이해를 못하는 것이겠죠.
따라서 도메인기반 virtual host설정과는 다르게 어떤 도메인으로 들어오든 첫 설정에 따라 결정이 되는겁니다.

layer는 http://coffeenix.net/doc/network/ssl_fig3.gif 에서 볼 수 있고,

0.gif

이유는 http://www.modssl.org/docs/2.8/ssl_faq.html 에서 볼 수 있습니다.
    
Why can't I use SSL with name-based/non-IP-based virtual hosts?

The reason is very technical. Actually it's some sort of a chicken and egg problem: The SSL protocol layer stays below the HTTP protocol layer and encapsulates HTTP. When an SSL connection (HTTPS) is established Apache/mod_ssl has to negotiate the SSL protocol parameters with the client. For this mod_ssl has to consult the configuration of the virtual server (for instance it has to look for the cipher suite, the server certificate, etc.). But in order to dispatch to the correct virtual server Apache has to know the Host HTTP header field. For this the HTTP request header has to be read. This cannot be done before the SSL handshake is finished. But the information is already needed at the SSL handshake phase. Bingo!

 

 

출처 : http://truefeel.tistory.com/79

?

공부 게시판

공부에 도움되는 글을 올려주세요.

  1. [공지] 공부 게시판 입니다.

    Date2003.08.18 By처누 Views928102
    read more
  2. 메모리 부족 현상 (allowed memory size of 134217728 bytes..)

    Date2023.08.01 Category웹 프로그래밍 ByJaeSoo Views2207
    Read More
  3. Guzzle - cURL error 60: SSL certificate problem: unable to get local issuer certificate 문제 해결

    Date2023.07.30 Category웹 프로그래밍 ByJaeSoo Views2188
    Read More
  4. XE 캐시파일 재성생후 404 Oops, Sorry. Page is not found! 나올때

    Date2023.07.29 Category웹 프로그래밍 ByJaeSoo Views2117
    Read More
  5. XE - " Fatal error: Class 'Object' not found in " / class 낫파운드 오류

    Date2023.03.20 Category웹 프로그래밍 ByJaeSoo Views147
    Read More
  6. iOS 앱 개발을 위한 인증서 생성 및 관리

    Date2023.01.18 Category웹 프로그래밍 ByJaeSoo Views218
    Read More
  7. PHP 파서 이해하기 (<?php의 php를 생략하고 간단히 <? 태그 와 ?> 태그를 사용하는 방법)

    Date2016.08.10 Category웹 프로그래밍 ByJaeSoo Views322
    Read More
  8. XE 비회원 글쓰기 항목 지우기

    Date2016.04.28 Category웹 프로그래밍 ByJaeSoo Views499
    Read More
  9. 오른쪽 마우스 금지 소스 / 드래그 금지 소스

    Date2016.01.20 Category웹 프로그래밍 ByJaeSoo Views475
    Read More
  10. Strict standards and C5 support errors

    Date2015.12.02 Category웹 프로그래밍 ByJaeSoo Views524
    Read More
  11. ICT노트 :: 반응형웹을 만드는 기술은?

    Date2015.09.26 Category웹 프로그래밍 ByJaeSoo Views489
    Read More
  12. [번역] 2014년 가장 인기있는 5가지 프론트엔드 프레임워크 비교

    Date2015.09.25 Category웹 프로그래밍 ByJaeSoo Views862
    Read More
  13. 최고의 반응형 CSS 프레임워크 18선 (2013년 7월기준)

    Date2015.09.25 Category웹 프로그래밍 ByJaeSoo Views586
    Read More
  14. 가장 진보된 반응형 웹을 위한 프레임워크 UIkit

    Date2015.09.25 Category웹 프로그래밍 ByJaeSoo Views559
    Read More
  15. 반응형 웹을 위한 프론트-엔드 프레임 워크 (front-end framework for developing responsive web)

    Date2015.09.25 Category웹 프로그래밍 ByJaeSoo Views739
    Read More
  16. 한국형 반응형웹 프레임웍을 찾아서 - 왜 우리는 IE 7,8때문에 고통받아야 하는가?

    Date2015.09.25 Category웹 프로그래밍 ByJaeSoo Views611
    Read More
  17. 한국을 위한 CSS 그리드 디자인 프레임워크

    Date2015.09.25 Category웹 프로그래밍 ByJaeSoo Views531
    Read More
  18. 과연 반응형 웹 디자인만이 해답일까?

    Date2015.09.25 Category웹 프로그래밍 ByJaeSoo Views535
    Read More
  19. 반응형 웹 디자인의 단점

    Date2015.09.25 Category웹 프로그래밍 ByJaeSoo Views567
    Read More
  20. 웹디자인 신기술 트렌드 및 적용 사례

    Date2015.07.28 Category웹 프로그래밍 ByJaeSoo Views510
    Read More
  21. 제이쿼리(jQuery) 튜토리얼(Tutorial) 모음

    Date2015.07.28 Category웹 프로그래밍 ByJaeSoo Views1253
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 15 Next
/ 15


즐겨찾기 (가족)

JAESOO's HOMEPAGE


YOUNGAE's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

숭실대 컴퓨터 통신연구실 (서창진)

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

아스가르드 좋은사람/나쁜사람

JServer.kr

제이서버 메타블로그

재수 티스토리


즐겨찾기 (강의, 커뮤니티)

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너