2. Web 서버 SSL / TLS 상에서 동작

Download Report

Transcript 2. Web 서버 SSL / TLS 상에서 동작

HTTPS Packet Capture Tutorial
2014 . 11 . 28
Overview
 https 패킷을 capture하기 위해 Linux에
Web 서버를 동작시키고 그 서버를 TLS
상에서 동작시킨다.
 TLS에서 동작하는 Web 서버가 클라이언트와
주고 받는 https 패킷을 capture하기 위해
Wireshark에 적절한 field 값을 채운다.
※TLS(Transport Layer Security)
:
TCP상에서 동작하는 응용 프로그램이 네트워크로 통신을 하는
과정에서 인증 및 기밀성을 지원해주기 위해서 설계
HTTPS Packet Capture Tutorial
1
Fedora에 Web 서버 동작
2
Web 서버 SSL / TLS상에서 동작
3
HTTPS Packet Capture
4
1. Fedora Web 서버 동작

IP 주소를 확인 후 Web 브라우저를 통해
자신의 Ip에 Web서버가 동작하지 않음을 확인한다.
1. Fedora Web 서버 동작
 Web 서버 프로그램 Apache 설치한다.
% yum –y install httpd*
 Web 서버를 동작시킨다.

자신의 IP로 web서버가 동작하는 것을 확인
2. Web 서버 SSL / TLS 상에서 동작
 SSL은 공인인증기관으로부터 서버와 클라이언트간의 인증을
하는데 사용된다. https를 사용하면 SSL로 암호화된 페이지를
요청하게 된다.
 기본적으로 http에서 동작하는 서버를, https에서 동작시키기
위해 SSL 인증서를 설치한다.
 인증서는 공인인증기관에게 직접 발급받거나
자기 자신이 공인인증기관이 되어 발급하는 방법
(self sign)이 있다.
2. Web 서버 SSL / TLS 상에서 동작
 자신의 IP로 https:// 접속이 불가한 것을 확인
 https 동작을 위해 CSR(Client Signing Request)을 만들어
인증서를 발급받는다.
 ssl module을 설치한다. yum –install mod_ssl
2. Web 서버 SSL / TLS 상에서 동작
 CSR 메시지를 생성하기 위해 필요한 Key file 생성
% openssl genrsa –out ca.key(키이름 )
ca.key
Private key
Public key
 생성된 Key file은 개인키와 공개키의 쌍으로 이루어
진 Key pair이다.
2. Web 서버 SSL / TLS 상에서 동작
 생성된 개인키로 CSR(Client Signing Request) 만들기
 % openssl req –new –key ca.key –out ca.csr
 각 필드에 맞는 값을 입력해준다.
2. Web 서버 SSL / TLS 상에서 동작
 생성된 CSR을 self sign하여 공인인증서 만들기
 % openssl x509 -req -days 365 -in ca.csr -signkey ca.key
-out ca.crt
2. Web 서버 SSL / TLS 상에서 동작
 Web서버를 TLS상에서 동작시키기 위해 환경설정을 바꾼다.
 vi /etc/httpd/conf.d/ssl.conf
 SSLCertificateFile 공인인증서 위치로 변경
 SSLCertificateKeyFile 개인키 파일 위치로 변경
3. HTTPS Packet Capture
 설정 변경 후 Web서버를 재시작한다. 일반적으로 TLS data는
암호화 되어 있어 SSL stream 으로 볼 수 없다.
3. HTTPS Packet Capture
 Edit- Peferences- Protocol –SSL field에
서버IP, Port Number, Protocol, key pair 를 입력하여 복호화 한다.
3. HTTPS Packet Capture
 값 설정 뒤 TLS data 를 SSL stream 으로 볼 수 있다.