인터넷은 이미 우리 생활의 일부가 되어있다. 이때 발생할 수 있는 보안상의 취약성에 대해 우린 때로 안일하게 생각하는 경향이 있기도 하다. 이러한 보안상의 위협으로부터 우리의 소중한 데이터를 지키기 위한 프로토콜이 SSL(Secure Socket Layers)이다.
SSL은 데이터를 암호화하거나 통신상대를 인증하는 등의 방법으로 데이터를 보호한다. "https://"로 시작하는 URL에서 보이듯이 HTTPS는 "HTTP over SSL"을 생략한 것으로, HTTP를 SSL로 암호화한 프로토콜이다.
# 대표적인 SSL 서버 소프트웨어
SSL 서비스를 제공하는 서버 소프트웨어에는 오픈소스인 OpenSSL과 Windows Server의 표준으로 포함되어 있는 IIS가 있다.
OpenSSL은 웹 서버인 Apache에 모듈을 설치하여 Apache와 연계하여 사용하는 구성이 일반적이다.
ISS는 SSL기능을 표준으로 갖추고 있다. 이 두가지 소프트웨어는 SSL 서비스를 제공한다는 점에서 같지만, 서포트하고 있는 플랫폼이나 어플리케이션이 다르다.
# SSL로 보호할수 있는 위협
SSL은 중요한 데이터를 지키기 위해 암호화, 메세지 다이제스트, 디지털 인증서를 조합하여 사용한다.
암호화는 정해진 룰을 기반으로 데이터를 변환하는 기술이다. 암호화에 따라 제3자가 데이터를 몰래 훔쳐보는 행위를 막을 수 있다.
메세지 다이제스트는 데이터로부터 고정길이의 데이터(해쉬값)를 계산하는 방법이다. 데이터를 송수신할 때 송신하는 쪽과 수신하는 쪽이 모두 해쉬값을 비교하여 같을 경우 데이터에 문제가 없음을 알 수 있어 제3자가 데이터를 변환, 위조하는 것을 막을 수 있다.
디지털 인증서는 그 컴퓨터가 진짜인지를 증명하는 파일이다. 통신상대가 진짜인지 확인하는 것으로 위조, 거짓 등의 행위를 막을 수 있다.
'개발서 > 서버의 기본' 카테고리의 다른 글
5-08 SSL 서버 기술 (0) | 2020.09.04 |
---|---|
5-07 두가지 암호화 기술 (0) | 2020.09.03 |
5-05 웹 서버에서 일어나는 처리 (0) | 2020.09.01 |
5-04 웹서버의 역할 (0) | 2020.09.01 |
5-03 클라우드 환경(AWS)의 서버 공개 (0) | 2020.08.26 |