Ubuntu Apache2 SSL

Certbot을 사용하여 Ubuntu 서버에서 Apache2에 SSL을 설정하는 방법을 안내해드리겠습니다. 다음 단계에 따라 진행하시면 됩니다:

1. Certbot 및 관련 패키지 설치


먼저 Certbot과 Certbot의 Apache 플러그인을 설치해야 합니다. 이를 위해 아래 명령어를 사용하세요.

sudo apt update
sudo apt install certbot python3-certbot-apache

2. Apache 서버 설정 확인

SSL 설정을 위해 Apache 설정 파일을 확인하고 필요시 수정합니다. 기본적으로 Apache가 설치되어 있고, 기본 설정 파일이 `/etc/apache2/sites-available/000-default.conf`에 있습니다. 해당 파일을 엽니다.

sudo nano /etc/apache2/sites-available/000-default.conf



해당 파일에 `ServerName` 지시어가 있는지 확인하고, 없다면 추가합니다. 예를 들어, 도메인이 `example.com`인 경우 다음과 같이 추가합니다:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html
    ServerName example.com
    ServerAlias http://www.example.com

    <Directory /var/www/html>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

3. Apache 모듈 활성화

SSL 및 재작성 모듈을 활성화합니다.

sudo a2enmod ssl
sudo a2enmod rewrite
sudo a2enmod headers
sudo systemctl restart apache2

4. Certbot을 사용하여 SSL 인증서 발급

이제 Certbot을 사용하여 SSL 인증서를 발급받을 수 있습니다.

sudo certbot --apache



이 명령어를 실행하면 Certbot이 Apache 설정을 자동으로 감지하고, SSL 인증서를 발급 및 설정해줍니다. 과정 중 도메인을 선택하고, 이메일 주소를 입력하며, `http`에서 `https`로 리디렉션할지 여부를 묻는 등의 단계를 거칩니다.

5. SSL 인증서 갱신 자동화

Certbot이 설치될 때 자동으로 갱신 크론 작업이 설정됩니다. 이를 수동으로 확인하려면 다음 명령어를 사용하여 테스트할 수 있습니다.

sudo certbot renew --dry-run


이 명령어가 성공하면 SSL 인증서 갱신이 자동으로 설정된 것입니다.

6. Apache 서버 재시작

마지막으로 Apache 서버를 재시작합니다.

sudo systemctl restart apache2



이제 SSL이 설정된 도메인으로 접속하여 HTTPS로 접속되는지 확인하시면 됩니다.

참고

– Certbot은 Let’s Encrypt의 무료 SSL 인증서를 제공합니다.
– 기본 설정 파일 외에 사용자 정의 설정 파일이 있을 경우 해당 파일을 수정해도 됩니다.
– 추가로 필요한 보안 설정이나 최적화 설정이 있을 수 있으므로, 상황에 맞게 Apache 설정을 조정하는 것이 좋습니다.

이 단계를 따라 진행하시면 Ubuntu 서버의 Apache2에 SSL을 설정할 수 있습니다.

Leave a Reply

Your email address will not be published. Required fields are marked *