Apache2 서버에 SSL 인증서 설치
Apache 서버에 SSL 인증서를 설치하면 Apache 서버가 HTTPS 보안 접속을 지원하도록 할 수 있습니다. 본 문서에서는 Apache 서버에 SSL 인증서를 설치하는 방법을 안내합니다.
설명
본 문서에서는 Apache 버전을 Apache/2.4.58(ubuntu) 예시로 설명합니다.
설치 전 443 포트가 점유 중이 아닌지 확인해 주십시오. 443 포트가 이미 사용 중인 경우, 인증서 설치 시 다른 포트를 바인딩해 주십시오.
인증서 가져오기
- 당사에서 인증서를 발급한 후 압축(.zip) 형식의 인증서 파일을 발급해 드립니다. 압축 파일 안에는 Tomcat, Nginx, IIS, Apache 네 가지 인증서 형식에 대응하는 네 개의 폴더가 있으며, Apache 서버에서는 Apache 폴더 내의 인증서를 사용합니다.
- Apache 폴더에는 다음 세 개의 파일이 포함되어 있습니다.
domain_com.crt인증서 파일domain_com.key개인키 파일domain_com.ca-bundle인증서 체인 파일
SSL 인증서 설치
- 확보한
domain_com.crt인증서 파일,domain_com.key개인키 파일,domain_com.ca-bundle인증서 체인 파일을 로컬 디렉터리에서 Apache 서버의/etc/apache2/ssl디렉터리로 복사합니다. 설명:
- 만약
/etc/apache2/ssl디렉터리가 존재하지 않는 경우,mkdir -p /etc/apache2/ssl명령을 사용해 생성할 수 있습니다. - 버전에 따라 차이가 있을 수 있으며, 일부 Apache 디렉터리는
/etc/httpd로 표시될 수 있습니다.
- Apache는
sites-enabled내의 구성 파일만 읽으므로, 심볼릭 링크를 설정해야 합니다.
ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/000-default-ssl.conf
/etc/apache2/sites-available/default-ssl.conf파일을 편집하여 다음 내용을 수정합니다:
<VirtualHost *:443>
DocumentRoot /var/www/html
#启用 SSL 功能
SSLEngine on
#证书文件的路径
SSLCertificateFile /etc/apache2/ssl/domain_com.crt
#私钥文件的路径
SSLCertificateKeyFile /etc/apache2/ssl/domain_com.key
#证书链文件的路径
SSLCertificateChainFile /etc/apache2/ssl/domain_com.ca-bundle
</VirtualHost>
수정 후 구성 파일을 저장하고 다음 명령을 실행하십시오:
a2enmod ssl #加载ssl模块,如果是替换证书可以忽略
apache2ctl configtest #检测配置文件是否报错
apache2ctl restart #重启Apache使配置生效
SSL 인증서 테스트
브라우저 주소창에 SSL 인증서가 바인딩된 도메인을 입력하여 SSL 인증서가 정상적으로 설치되었는지 테스트하십시오. 설치에 성공한 경우 브라우저 주소창에 보안 자물쇠 아이콘이 표시되며, 클릭하면 인증서 정보를 확인할 수 있습니다.

HTTP 자동 HTTPS 리디렉션 보안 설정(선택 사항)
HTTP 요청을 자동으로 HTTPS로 리디렉션하려면 다음 단계에 따라 설정하십시오:
- 명령줄에
a2enmod rewrite을(를) 입력하여 리디렉션 모듈을 활성화합니다. - 이후 http 설정 파일을 엽니다. 예:
/etc/apache2/sites-available/000-default.conf. 설정 파일에 다음 내용을 추가합니다:
<VirtualHost *:80>
# 新增
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)?$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
</VirtualHost>
- Apache 서버를 재시작하면 도메인으로 접속할 수 있으며, HTTP에서 HTTPS로 자동 리디렉션됩니다.