RadarURL
Skip to content
조회 수 4202 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
0. 필요성 및 문제점?
 1) 필요성
 요즘 개인정보 보호를 위해서 인증서 설치가 필수가 되었다.
왜냐면? 패킷을 분석해 보면 id, 비밀번호, 주민번호 기타 개인정보가 다 보인다는 것이며, 이를 보호하기 위해서 패킷을 암호화 하는 ssl 을 사용해야 한다고 한다...
 
 2) 문제점
  하지만, ssl특성상 가상호스트를 지원하지 않는다. 왜냐하면? 가상호스트는 http헤더에 붙어서 나오고 웹서버에서 이 헤더의 "Host : " 부분을 참조하여 호스트를 결정한다.  ssl은 헤더를 읽기도 전에, 인증서교환이 선행된다. 인증서 교환은 아이피,포트를 통해서 접속하므로 이름기반 가상호스트를 지원하지 않는다.

3) SSL의 인증과정 (조금 생략)
   1. 클라이언트는 https(SSL)을 사용하여 서버에 접속한다. IP와 포트정보를 가지고
   2. 서버는 클라이언트에게 인증서를 제공한다.
   3. 클라이언트는 인증서를 평가한다. CN과 입력한 호스트 이름을 비교한다.
       맞으면 진행, 틀리면 경고창을 내보낸다.
   4. 3번항목에서 맞다면, 대칭키를 하나 생성한다.(대부분 128비트, 256비트)
   5. 생성된 대칭키를 인증서의 공개키로 암호화 해서 서버로 보낸다.
      공개키로 암호화 한 대칭키는 서버의 공개키로만 해독 할 수 있다.
   6. 서버에 대칭키가 도달되면, 이 대칭키로 통신을 계속 하게 된다.

  (주의!. 위 과정이 전부는 아님.. 간소화 하였음)

  


1. 가상호스트 문제점 해결법?
  HTTP 1.1 프로토콜에서는 헤더를 이용하여 가상호스트를 지원한다. 하지만, SSL은 TCP/IP 계층의 더 하위 계층에서 암호화 해 버리기 때문에 가상호스트를 지원하지 않는다.
SSL은 TCP/IP의 응용계층과 전송계층 사이에서 클라이언트와 서버간의 안전한 통신을 위해 암호화 한다.
전송계층에서 목적지가 결정되기 때문에, 가상호스트는 불가능 하다.

 참고
  응용 계층 프로토콜 : FTP, HTTP,  IMAP, IRC, NNTP, POP3 등...
  전송 계층 프로토콜 : TCP, UDP, SCTP, DCCP ...

 웹에서 사용하는 HTTP는 TCP를 사용한다.


 1) 포트를 이용한 SSL 가상호스트
  브라우져에서 접속할때, 포트를 다르게 하면, 다중 도메인 지원이 가능하다.
 포트가 다르다는 것은 전송계층의 프로토콜인 TCP에서 지원 가능하다.
 
  아파치의 ssl.conf파일을 여러개 만들어서 포트를 다르게 하면, 쉽게 설정 가능하다.
 단지 불편하다면, 웹브라우져에서 접속 할 때
 https://도메인:포트 <== 이렇게 붙여 주어야 하는 불편함이 있다.
 

 2) 아이피를 이용한 SSL 가상호스트
  아이피 기반의 가상호스트 설정은 물론 가능한 방법이다.



 3) 하나의 인증서를 이용하여 여러개 도메인 인증
  하나의 인증서에 여러개의 CM(Common Name)이 등록되어 있다면, SSL 가상 호스트가 적용된다.
 이는 이미 SSL 인증서 교환이 이뤄지고,  SSL 가상 호스트를 통하여 적용 된다.


참고
 (openssl에서, 하나의 인증서에 여러개의 CN 넣기)
openssl.cnf 파일을 열어서 편집한다.
[ req_distinguished_name ]
0.commonName                    = CommonName
0.commonName_default = www.first-domain.com
0.commonName_max = 64
1.commonName                    = CommonName
1.commonName_default = www.second-domain.com
1.commonName_max = 64

( 위와같은 방법으로 CN 추가 )

문제점?
멀티 인증서는 문제점을 가지고 있다.
1. 인증서 관리의 불편함(도메인 중 하나를 변경하려면 인증서 갱신)
2. 브라우져와의 호환성 떨어짐. (아래 표 참고)

웹브라우져
호환 버젼 호환되지 않는 버전
사파리
1.2.4
OmniWeb
5.0.1
인터넷익스플로러(Mac OS X)
5.2
Chimera 0.2.8
모질라
1.4


2. 잡담
  이제 SSL 적용은 선택이 아니라 필수가 되었다.
 이미 미국, 일본에서는 적용되었으며, 보안에 대한 의식도 높다..

 보안을 위해 다음것도 지켜줘야 한다.

 Telnet 대신 SSH를 사용한다.
 FTP대신 SFTP를 사용한다.

 

 

출처 : http://www.linux.co.kr/blog2/doly/entry/한-서버에-여러개의-ssl-인증서-사용-하는-방법

?

List of Articles
번호 제목 글쓴이 날짜 조회 수
71 .htaccess JaeSoo 2009.06.24 4322
70 .htaccess 를 이용한 이미지 핫링크 예방법 JaeSoo 2012.03.07 2630
69 .htaccess 사용해서 이미지 외부링크 막기 JaeSoo 2012.03.07 2919
68 Apache 서버에서 확장자 .htm 파일 내의 php 코드가 실행되지 않는 문제 해결 방법 JAESOO 2014.05.26 1692
67 Apache 2.0 에서 여러 도메인에 SSL 인증서 적용하기 JaeSoo 2013.03.01 3150
66 Apache eating up 100% of cpu load with only 12req/s (아파치 웹서버가 CPU 점유율 100%가 될때) JaeSoo 2013.03.08 4577
65 apache httpd.conf 설정 및 설명 JaeSoo 2012.09.09 1549
64 Apache Redirect 설정 팁 - http또는 https로 접속 시 www를 항상 자동으로 붙히기 JaeSoo 2013.02.28 4238
63 Apache rewrite 사용 방법 - 특정 URL이 입력되면 다른 URL로 연결 JaeSoo 2013.04.08 4625
62 Apache Struts 버전 확인 방법 JAESOO 2014.05.09 2166
61 Apache 버전 확인방법 JaeSoo 2013.02.20 1263
60 Apache 실행환경을 nobody 사용자로 변경 JAESOO 2014.05.28 1508
59 Apache2 openssl on Winows XP (https 접속) JaeSoo 2013.03.01 3644
58 Apache: A good Webalizer.conf for the Webalizer Apache Log Analyzer utility JAESOO 2014.12.22 1236
57 Apache에서 .htaccess 파일 활용하기 - Rewrite mod JaeSoo 2009.05.12 3819
56 Apache에서 mod_expires를 이용한 이미지 캐싱 처리 JaeSoo 2012.08.29 2402
55 apache용 ewrite rule (htaccess)을 nginx rewrite rule로 변환 JaeSoo 2013.04.06 3785
54 apache의 httpd.conf 설정 팁 JaeSoo 2012.09.09 1623
53 APMSETUP + JSP 2 JaeSoo 2012.04.13 6125
52 APMSETUP 7 + eAccelerator 설치.. JaeSoo 2011.05.21 9518
Board Pagination Prev 1 2 3 4 Next
/ 4

PageViews   Today : 4683 Yesterday : 5037 Total : 21960735  /  Counter Status   Today : 4544 Yesterday : 4602 Total : 1187267

Edited by JAESOO

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소