TCP Data Communication Over SSL/TLS
이전 페이지에서 작성한 인증서와 암호키를 이용하여 TLS/SSL 보안된 TCP 통신을 간단하게 시험한다.
TCP 통신 도구로는 인증서와 암호키를 만들때 사용한 OpenSSL를 사용한다.
1. TCP Server 설정
♦ 윈도우즈 커맨드 창에서 OpenSSL의 bin으로 경로(ex: D:\OpenSSL-Win64\bin>)를 이동한다.
♦ OpenSSL에서 다음과 같이 옵션을 지정하여 서버를 기동한다.
→ OpenSSL/bin>openssl s_server -cert server.crt -key server.key -verify 1 -CAfile ca.crt -accept 20000
or
→ OpenSSL/bin>openssl s_server -cert server.crt -key server.key -Verify 10 -CAfile ca.crt –accept 20000
2. TCP Client 설정
♦ 윈도우즈 커맨드창을 하나더 오픈하거나 다른 PC에서 Openssl를 실행하여 다음의 옵션으로 TCP Client를 기동한다.
→ OpenSSL/bin>openssl s_client -cert client.crt -key client.key -verify 1 -CAfile ca.crt -connect 192.168.0.2:20000
or
→ OpenSSL/bin>openssl s_client -tls1_2 -connect 192.168.0.2 -port 20000 -showcerts -CAfile ca.crt -cert client.crt -key client.key
3. 암호화된 TCP 채널로 데이터 송수신하기
아래 그림과 같이 TCP Client에서 먼저 서버에게 인사를 거넸고, 이어 서버가 답례 인사를 해 온 모습을 확인할 수 있다.
4. 패킷 캡쳐로 TCP 통신 확인하기
추후 삽입예정
이상으로 TLS/SSL로 암호화된 TCP 통신을 간단하게 시험하였다, 이후에 이어지는 MQTT 암호화 통신의 경우에도 동일한 방식으로 시험이 진행되 것이다.