[SSL] win-acme와 Let’s encrypt로 무료 SSL 인증서 발급하기
1. ToDo
https를 설정하기 위해서는 SSL이 있어야 하는데 유료이다.
하지만 능력자분들이 win-acme와 Let’s encrypt로 무료 SSL 인증서를 발급할 수 있게 해줬다.
win-acme 프로그램을 통해 무료로 발급 가능한데 여기에서 프로그램을 다운로드 하면 된다.
다운로드 받은 후에 압축을 풀고 .exe 파일을 더블 클릭해 실행하거나, cmd를 켜서 압축 푼 위치로 이동한 다음에 다음 명령어로 실행한 다음에 사용법을 참고하면 된다.
1
wacs.exe
2. 사용법
![]()
우리는 처음이기 때문에 M을 입력해 인증서를 생성해준다.
M: 전체 옵션을 이용해 인증서 생성
R: 갱신
A: 갱신 관리
![]()
사용자가 직접 입력하면서 진행하므로 2번 선택
![]()
그럼 Host를 입력하라고 할텐데 본인의 도메인을 입력해주면 된다. 그리고 Friendly… 라고 뜰텐데 Enter로 넘기면 된다.
![]()
인증서를 어디에 저장할 것이냐고 묻는데 웬만하면 1번을 선택하자.
그렇다면 path를 입력하라고 할텐데 도메인의 root 위치를 입력하면 된다. 그리고 web.config 파일을 만들거냐고 묻는데 나는 저장하지 않을 것이기 때문에 no를 입력했다.
*Apache일 때 기본 root는 ${SRVROOT}/htdocs이다.
![]()
키 속성 값은 RSA key로 결정
![]()
저장할 파일과 파일 경로를 입력해줘야하는데 먼저 2를 입력한 다음에, file path에 .pem 파일을 보관할 디렉토리 위치를 입력하면 된다.
![]()
그 다음에 패스워드는 저장하지 않기 위해 1번을 입력하고
![]()
또 다른 곳에 파일을 저장할거냐나는 질문에 저장하지 않을 것이기 때문에 5와 3을 순서대로 입력해준다.
그럼 지정한 file path에 .pem 파일들이 생겼다.
3. 443 포트 설정
3-1. httpd.conf
1
2
3
# 주석 해제하기
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule ssl_module modules/mod_ssl.so
3-2. httpd-vhost.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
<VirtualHost *:443>
DocumentRoot {root path}
ServerName {domain}
<Directory {root path}>
Require all granted
</Directory>
SSLEngine on
SSLCertificateFile "{file path}/{domain}-crt.pem"
SSLCertificateKeyFile "{file path}/{domain}-key.pem"
SSLCertificateChainFile "{file path}/{domain}-chain.pem"
</VirtualHost>
지금까지 에러 없이 잘 따라왔다면 https://{domain}에 접속이 잘 될 것이다.