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-인증서-사용-하는-방법

?

  1. No Image 02May
    by JAESOO
    2016/05/02 by JAESOO
    Views 270 

    아파치 httpd.conf 재시작 없이 설정 적용하기

  2. No Image 01Jan
    by JAESOO
    2016/01/01 by JAESOO
    Views 338 

    톰캣 8 소개

  3. No Image 22Dec
    by JAESOO
    2014/12/22 by JAESOO
    Views 544 

    리눅스 아파치 로그 뷰어 webalizer, utf-8로 변환하기

  4. No Image 22Dec
    by JAESOO
    2014/12/22 by JAESOO
    Views 803 

    Webalizer Configuration – Configure Webalizer for SEO

  5. No Image 22Dec
    by JAESOO
    2014/12/22 by JAESOO
    Views 440 

    Webalizer, AWStats에서 국가 정보 확인하기

  6. No Image 22Dec
    by JAESOO
    2014/12/22 by JAESOO
    Views 777 

    Webalizer에서 국가별 로그 출력하기

  7. No Image 22Dec
    by JAESOO
    2014/12/22 by JAESOO
    Views 1236 

    Apache: A good Webalizer.conf for the Webalizer Apache Log Analyzer utility

  8. No Image 21Dec
    by JAESOO
    2014/12/21 by JAESOO
    Views 481 

    아파치 로그분석 webalizer 설치

  9. No Image 19Dec
    by JAESOO
    2014/12/19 by JAESOO
    Views 743 

    Permission denied: .htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable

  10. Permission denied: /home/.htaccess pcfg_openfile: unable to check htaccess file

  11. No Image 19Dec
    by JAESOO
    2014/12/19 by JAESOO
    Views 521 

    pcfg_openfile: unable to check htaccess file, ensure it is readable

  12. No Image 04Jun
    by JAESOO
    2014/06/04 by JAESOO
    Views 2272 

    Tomcat 버전별 설명

  13. No Image 28May
    by JAESOO
    2014/05/28 by JAESOO
    Views 1510 

    Apache 실행환경을 nobody 사용자로 변경

  14. No Image 27May
    by JAESOO
    2014/05/27 by JAESOO
    Views 1872 

    리눅스 사용자 계정별 웹서버 운영하기

  15. No Image 26May
    by JAESOO
    2014/05/26 by JAESOO
    Views 1692 

    Apache 서버에서 확장자 .htm 파일 내의 php 코드가 실행되지 않는 문제 해결 방법

  16. No Image 16May
    by JAESOO
    2014/05/16 by JAESOO
    Views 1826 

    php 웹사이트에서 파일을 업로드 하는중 100%에서 멈춰버리는 현상 해결

  17. No Image 09May
    by JAESOO
    2014/05/09 by JAESOO
    Views 2166 

    Apache Struts 버전 확인 방법

  18. No Image 11Apr
    by JaeSoo
    2014/04/11 by JaeSoo
    Views 1752 

    robots.txt를 현명하게 사용하는 방법

  19. No Image 11Apr
    by JaeSoo
    2014/04/11 by JaeSoo
    Views 1759 

    robots.txt 파일(로봇배제 표준)

  20. No Image 18Apr
    by JaeSoo
    2013/04/18 by JaeSoo
    Views 4211 

    Windows / apache_2.4.3 + php_5.4.10 + mod_fcgid_2.3.7

Board Pagination Prev 1 2 3 4 Next
/ 4

PageViews   Today : 11607 Yesterday : 5037 Total : 21967659  /  Counter Status   Today : 11235 Yesterday : 4602 Total : 1193958

Edited by JAESOO

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소