리눅스에 설치된 워드프레스 도메인 무료 SSL 설정 및 자동 갱신 방법
웹사이트의 보안은 오늘날 매우 중요한 이슈입니다. HTTPS를 사용하면 데이터가 암호화되어 안전하게 전송됩니다. Let's Encrypt는 무료 SSL 인증서를 제공하여 누구나 쉽게 HTTPS를 설정할 수 있게 합니다. 이번 포스팅에서는 리눅스 서버에 설치된 워드프레스 도메인에 무료 SSL 인증서를 설정하고 자동 갱신하는 방법을 단계별로 안내하겠습니다.
1. 서버 준비
리눅스 서버가 준비되어 있어야 하며, 우분투(Ubuntu) 서버를 기준으로 설명합니다. 서버에 SSH로 접속하여 필요한 패키지를 업데이트합니다.
sudo apt update
sudo apt upgrade
2. Apache 설치 확인
서버에 Apache 웹 서버가 설치되어 있는지 확인합니다. 설치되지 않은 경우 다음 명령어로 설치합니다.
sudo apt install apache2
sudo systemctl start apache2
sudo systemctl enable apache2
3. Certbot 설치
Certbot은 Let's Encrypt 인증서를 쉽게 발급받고 갱신할 수 있는 도구입니다. Certbot을 설치합니다.
sudo apt install certbot python3-certbot-apache
4. SSL 인증서 발급
Let's Encrypt를 사용하여 SSL 인증서를 발급받습니다. 도메인과 서브도메인(예: example.com, www.example.com)을 지정합니다.
sudo certbot --apache -d example.com -d www.example.com
Certbot은 자동으로 Apache 설정을 업데이트하고, SSL 인증서를 설치합니다. 프롬프트에 따라 이메일 주소를 입력하고, 이용 약관에 동의합니다. 이 과정에서 HTTP에서 HTTPS로 리디렉션하는 옵션을 선택할 수 있습니다.
5. SSL 설정 확인
Apache 설정 파일이 올바르게 설정되었는지 확인합니다. 필요한 경우 다음 명령어로 설정 파일을 편집합니다.
sudo nano /etc/apache2/sites-available/example.com.conf
설정 파일에 다음 내용을 포함해야 합니다.
<VirtualHost *:80>
ServerName example.com
Redirect permanent / https://example.com/
</VirtualHost>
<VirtualHost *:443>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/wordpress
ServerName example.com
ServerAlias www.example.com
<Directory /var/www/html/wordpress/>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Apache 설정을 저장한 후 Apache를 다시 시작합니다.
sudo systemctl restart apache2
6. SSL 인증서 자동 갱신 설정
Let's Encrypt SSL 인증서는 90일마다 갱신해야 합니다. Certbot은 자동 갱신 기능을 제공하므로, 이를 설정합니다. 다음 명령어로 자동 갱신이 잘 작동하는지 테스트합니다.
sudo certbot renew --dry-run
자동 갱신이 정상적으로 작동하면, Certbot이 cron 작업을 통해 자동으로 인증서를 갱신합니다. 다음 명령어로 cron 작업을 확인할 수 있습니다.
sudo systemctl list-timers
Certbot의 자동 갱신 cron 작업은 보통 /etc/cron.d/certbot
에 설정되어 있습니다. 필요할 경우 cron 작업을 수동으로 설정할 수도 있습니다.
sudo crontab -e
다음 라인을 추가하여 매일 자동 갱신을 시도하도록 설정합니다.
0 3 * * * /usr/bin/certbot renew --quiet
7. 워드프레스 HTTPS 설정
SSL 인증서를 설치한 후, 워드프레스 설정에서 HTTPS를 사용하도록 설정합니다. 워드프레스 관리 대시보드에 로그인하여 다음을 수행합니다:
설정 > 일반
에서워드프레스 주소(URL)
와사이트 주소(URL)
를https://example.com
으로 변경합니다.설정 > 고유주소
에서 퍼머링크 구조를 저장하여 리디렉션 규칙을 갱신합니다.
결론
리눅스 서버에 설치된 워드프레스 도메인에 무료 SSL 인증서를 설정하고 자동 갱신하는 방법을 따라 웹사이트의 보안을 강화할 수 있습니다. Let's Encrypt와 Certbot을 사용하면 무료로 SSL 인증서를 쉽게 발급받고 관리할 수 있습니다. 위 단계를 따라 SSL 인증서를 설치하고, 워드프레스에서 HTTPS를 활성화하세요.
더 많은 정보를 원하시면 Let's Encrypt 공식 사이트와 Certbot 공식 사이트를 참조하세요.