Let’s Encrypt는 비영리 인터넷 보안 연구 그룹 (ISRG)에서 제공하는 무료, 자동 및 공개 인증 기관입니다. 무료인 만큼 약간의 제약이 있으나 소규모 웹사이트나 단기간 사용시 매우 유용합니다. 자세한 설명은 https://letsencrypt.org/ko/about/ 에서 확인 할 수 있습니다.
본 포스팅은 Let’s Encrypt 을 이용하여 윈도우 시스템에서 운영되는 아파치 서버에 SSL을 설치하는 법을 알아보도록 하겠습니다. 이를 위해서는 아래와 같은 조건을 만족해야 합니다. 사내 교육 및 수행 기록을 위한 것으로 상세한 설명이 없는 점 양해 부탁합니다.
환경
- 설정 가능한 도메인
- AWS 윈도우 인스턴스
- XAMPP
AWS 설정
인스턴스 생성
보안 그룹 설정
윈도우 방화벽 설정
윈도우키를 누르고 Firewall 입력 후 Windows Defender Firewall with Advanced Security 실행
XAMPP 설치
Internet Explorer 설정
XAMPP 다운로드
https://www.apachefriends.org/download.html
도메인 설정
호스트 IP(A) 설정
연결 확인
Let’s Encrypt 설정시 도메인 소유권 확인을 위해서 이 단계에서 반드시 도메인이 서버에 연결 되어 있어야 함
Let’s Encrypt 설정
https://github.com/PKISharp/win-acme/releases
아래의 순서대로 인증서 설치
Apache 설정
<VirtualHost _default_:443>
# General setup for the virtual host
DocumentRoot "C:/xampp/htdocs"
ServerName www.ahnsw.com:443
ServerAdmin sewonist@gmail.com
ErrorLog "C:/xampp/apache/logs/error.log"
TransferLog "C:/xampp/apache/logs/access.log"
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine on
SSLCertificateFile "C:\xampp\apache\certs\www.ahnsw.com-crt.pem"
SSLCertificateKeyFile "C:\xampp\apache\certs\www.ahnsw.com-key.pem"
SSLCertificateChainFile "C:\xampp\apache\certs\www.ahnsw.com-chain.pem"
...
</VirtualHost>
도메인 명과 경로, 각 파일명은 본인의 환경에 맞게 설정
Conclusion
여기까지 윈도우 아파치 서버에 SSL을 설치하는 과정을 살펴 보았습니다. Let’s Encrypt 는 6개월에 한번씩 갱신해야 하고 약간의 속도 제한이 있으나 무료이며 투명합니다. 또한 자동갱신도 제공하기 때문에 대형 사이트가 아니라면 크게 사용상의 불편함이 없습니다. 아직 SSL 을 사용하고 있지 않는 사이트라면 등록을 적극 추천합니다. 다음엔 리눅스에서 설치법을 알아보도록 하겠습니다.
감사합니다.