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 으로 볼 수 있다.