Lightsail VHOST SSL

비용을 아껴보려고 lightsail을 사용해보려고 한때가 있었다

당연하게도 인증서도 저렴하게 쓸 생각이었고

bitnami 가 기본 설치되어 있었으니 그걸 최대한 활용

1. 인증서만 발급

**하기전에 DNS에 해당 도메인 a레코드를 등록해야한다(www, non-www 둘다)

LEGO ->

sudo /opt/bitnami/ctlscript.sh stop
//sudo /opt/bitnami/letsencrypt/lego --tls --email="EMAIL-ADDRESS" --domains="DOMAIN" --domains="www.DOMAIN" --path="/opt/bitnami/letsencrypt" run
sudo /opt/bitnami/letsencrypt/lego --tls --email="mail@mail.kr" --domains="DOMAIN" --domains="www.DOMAIN" --path="/opt/bitnami/letsencrypt" run
sudo /opt/bitnami/ctlscript.sh start

→ 이후

/opt/bitnami/apache/conf/extra/httpd-vhost.conf

ex)
<VirtualHost *:80>
    DocumentRoot "/opt/bitnami/apache/htdocs"
    ServerName DOMAIN
    ServerAlias www.DOMAIN
    #https로 리다이렉트
    RewriteEngine On
	RewriteCond %{HTTPS} !on
	RewriteCond %{HTTP_HOST} ^www\. [NC]
	RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
	RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=permanent]
	RewriteCond %{HTTPS} !on
	RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [L,NE,R=permanent]
</VirtualHost>

/opt/bitnami/apache/conf/bitnami/bitnami-ssl.conf

ex)
<VirtualHost *:443>
  DocumentRoot "/opt/bitnami/apache/htdocs"
  ServerName DOMAIN:443
  ServerAlias www.DOMAIN
  SSLEngine on
  SSLCertificateFile "/opt/bitnami/letsencrypt/certificates/DOMAIN.crt"
  SSLCertificateKeyFile "/opt/bitnami/letsencrypt/certificates/DOMAIN.key"

  # BEGIN: Configuration for letsencrypt
  Include "/opt/bitnami/apps/letsencrypt/conf/httpd-prefix.conf"
  # END: Configuration for letsencrypt
  
  #www -> non-www redirect
  RewriteEngine On
	RewriteCond %{HTTP_HOST} ^www\. [NC]
	RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
	RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=permanent]

  ErrorLog "logs/DOMAIN-error_log"
  CustomLog "logs/DOMAIN-access_log" common
</VirtualHost>

의 파일 적절히 수정

2**. 자동갱신 크론탭**

/opt/bitnami/letsencrypt/scripts/renew-certificate.sh

#!/bin/bash
sudo /opt/bitnami/ctlscript.sh stop apache
sudo /opt/bitnami/letsencrypt/lego --tls --email="EMAIL-ADDRESS" --domains="DOMAIN" --path="/opt/bitnami/letsencrypt" renew --days 90
sudo /opt/bitnami/ctlscript.sh start apache

해당 도메인 추가 입력

→ 저 파일을 반복 실행하도록 크론탭 등록해뒀음,(매달 1일 새벽 5시 실행)

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다