본문 바로가기
컴퓨터 활용(한글, 오피스 등)/기타

CentOS7 Apache ssl 인증서 적용 그리고 80 to 443 redirect

by 3604 2023. 11. 24.
728x90

출처: https://cleanupthedesk.tistory.com/27


 
$find . -name mod_ssl.so

http://ftp.linux.or.kr/pub/apache/http-2.0.59.tar.gz

 

 

ssl 인증서를 적용하는 일이 자주 있는 건 아니라서 

매번 할 때는 어케어케 찾아서 하는데 매번 헤맨다 ㅠㅠ 그래서 오늘은 정리!

 

1.mod_ssl 설치

# yum install mod_ssl -y

2. httpd.conf 에 Load Modle 추가 

1) LoadModule, Include 부분 중에 없는 항목 추가

2) ServerName 도메인으로 추가

# vi /etc/httpd/conf/httpd.conf

LoadModule ssl_module modules/mod_ssl.so
Include conf.modules.d/.conf
Include conf.d/.conf

ServerName XXX.YYY.com

4. ssl.conf 파일 수정 

httpd.conf 에 모든 내용을 담으면 헷갈려서 ssl.conf 에 인증서 정보 설정

# vi /etc/httpd/conf.d/ssl.conf

LoadModule ssl_module modules/mod_ssl.so
Include conf.modules.d/.conf
Include conf.d/.conf


LoadModule ssl_module modules/mod_ssl.so
NameVirtualHost *:443
Listen 443


AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl    .crl
SSL Virtual Host Context
<VirtualHost *:443>


ServerAdmin $mail_ID@naver.com  -> 수정
ServerName XXX.YYY.com -> 수정


DocumentRoot /var/www/html
ErrorLog    /var/log/httpd/ssl-test.or.kr-error_log
TransferLog /var/log/httpd/ssl-test.or.kr_access_log


LogLevel error
SSLEngine on
SSLProtocol all -SSLv2


SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW

-> 아래 부분 키 저장 경로에 맞게 수정

SSLCertificateFile /root/keys/cert.pem 
SSLCertificateKeyFile /root/keys/keys.pem
SSLCertificateChainFile /root/keys/chain.pem


</VirtualHost> 

 

5. apache httpd 재기동

# systemctl restart httpd

 

6. 브라우저에서 설정한 도메인으로 https 접근되는지 확인 

 

7. ssl 인증서 적용까지만 하면 https 로 접근했을때만 보안 연결이 되므로 http (80)로 접근하더라도 https(443) 로 redirect 시켜주는게 좋은데, 이때는 httpd.conf 에만 VirtualHost 설정을 추가하면 된다.

httpd.conf 파일 제일 하단에 아래 내용을 추가해줬다.

# vi /etc/httpd/conf/httpd.conf

<VirtualHost :80>
Servername     XXX.YYY.com -> 수정
<IfModule mod_rewrite.c> 
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^/user/login(.)$ https://%{HTTP_HOST}%{REQUEST_URI} [R, L]
</IfModule> 
</VirtualHost> 

 

8. apache httpd 재기동

# systemctl restart httpd

 

9. 브라우저에서 설정한 도메인으로 http 연결을 하면 https 로 자동 변환되어 보안 연결이 사용되었다는 자물쇠를 확인할 수 있다. 

728x90
반응형