Let’s Encrypt 설치
sudo apt-get install letsencrypt
방화벽 관리 패키지 설치
sudo apt-get install firewalld
80, 443 (HTTP, HTTPS) 포트 열기
firewall-cmd --permanent --zone=public --add-port=80/tcp && firewall-cmd --permanent --zone=public --add-port=443/tcp
방화벽 상태 조회
firewall-cmd --reload
확인
firewall-cmd --list-ports
인증서 생성
certbot --auto certonly --standalone -d [도메인.com]
아파치 설정파일
nano /etc/apache2/apache2.conf
<VirtualHost _default_:80 _default_:443>
DocumentRoot
#http로 접속하여 https 전환이 되지 않는 경우에 대체 접속 또는 400페이지로 공고
#400.php는 별도로 생성해야 함.
#ErrorDocument 400 "[도메인]"
servername link
SSLEngine on
SSLHonorCipherOrder on
SSLProtocol all -sslv3
#Cert.pem
SSLCertificateFile [파일주소]
#privkey.pem
SSLCertificatekeyFile [파일주소]
#chain.pem
#SSLCACertificateFile [파일주소]
<IfModule http2_module>
ProtocolsHonorOrder on
Protocols h2 http/1.1
</IfModule>
<IfModule mod_headers.c>
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS
</IfModule>
</VirtualHost>