라즈베리파이(20) SSL, 로드밸런싱 마지막
개요
❗요약
💡 SSL 추가로 인해 로드밸런싱 설정이 추가되어짐 ex) https 의 로드밸런싱
💡 정리할겸 다시 포스팅한다.
HTTP 로드밸런싱 처리하기
❗가상호스트에서 처리하도록 변경한다.
💡 SSL 추가로 인해 로드밸런싱 설정이 추가되어짐 ex) https 의 로드밸런싱
💡 정리할겸 다시 포스팅한다.
STEP1. (httpd.conf) 기존 로드밸런싱 제거
# ASIS
#jkMount /* lilo_lb
# TOBE1
#JkMount /* blang_balancer
#JkUnMount /.well-known/acme-challenge/* blang_balancer
#JkUnMount /jktest/* blang_balancer
# [23.08.15] vhost 에서처리하도록 변경.
❗설명
💡 기존 전역설정파일에 로드밸런싱을 제거했다.
STEP2. (httpd-vhosts.conf) 가상 호스트 로드밸런싱 추가
# Server1 :: www.blang.co.kr 으로 요청한경우
<VirtualHost *:9510>
ServerAdmin layup3@naver.com
DocumentRoot "/fswas/apache/httpd/httpd-2.4.541/htdocs"
ServerName www.blang.co.kr
ErrorLog "/fswaslog/apache/dbd/error_log"
CustomLog "/fswaslog/apache/dbd/error_log" common
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
JkMount /* blang_balancer
JkUnMount /jktest/* blang_balancer
</VirtualHost>
# Server2 :: blang.co.kr 으로 요청한경우
<VirtualHost *:9510>
ServerAdmin layup3@naver.com
ServerName blang.co.kr
ErrorLog "/fswaslog/apache/dbd/error_log"
CustomLog "/fswaslog/apache/dbd/error_log" common
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://www.%{HTTP_HOST}%{REQUEST_URI}
JkMount /* blang_balancer
JkUnMount /jktest/* blang_balancer
</VirtualHost>
❗설명
💡 각각 추가해줬다.
💡 이제 http 요청이 오면 이곳에서 로드밸런싱 설정을 호출한다.
HTTP 로드밸런싱 web서버 정적파일 제외하기
STEP1. (httpd-vhosts.conf) 가상 호스트에 패턴추가
<VirtualHost *:9510>
ServerAdmin layup3@naver.com
ServerName blang.co.kr
ErrorLog "/fswaslog/apache/dbd/error_log"
CustomLog "/fswaslog/apache/dbd/error_log" common
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/jktest/.*
RewriteCond %{HTTPS} off
RewriteRule (.*) https://www.%{HTTP_HOST}%{REQUEST_URI}
JkMount /* blang_balancer
JkUnMount /jktest/* blang_balancer
</VirtualHost>
❗설명
RewriteCond %{REQUEST_URI} !^/jktest/.*
💡 http 요청에 대해 특정 패턴이 들어오면 https 측으로 요청을 수행하지않는다.
💡 즉, /jktest 요청이오면 ssl을 수행하지 않는다.
HTTPS(SSL) 로드밸런싱 처리하기
STEP2. (httpd-ssl.conf) ssl 로드밸런싱 추가
요약내용
<VirtualHost _default_:443>
# 기본정보
DocumentRoot "/fswas/apache/httpd/httpd-2.4.541/htdocs"
ServerName www.blang.co.kr
ServerAdmin layup3@naver.com
ErrorLog "/fswas/apache/httpd/httpd-2.4.541/logs/error_log"
TransferLog "/fswas/apache/httpd/httpd-2.4.541/logs/access_log"
# SSL 엔진
SSLEngine on
# SSL 인증서
SSLCertificateFile "/etc/letsencrypt/live/www.blang.co.kr/cert.pem"
SSLCertificateKeyFile "/etc/letsencrypt/live/www.blang.co.kr/privkey.pem"
SSLCACertificateFile "/etc/letsencrypt/live/www.blang.co.kr/chain.pem"
# SSL 로드밸런싱처리(이부분 있어야 WAS측 https접속가능)
JkMount /* blang_balancer
# JkUnMount /jktest/* blang_balancer // SSL은 의미없음
</VirtualHost>
❗설명
💡 이미 적용된 내용인데 다시한번 작성했다.
💡 최하단에 SSLh(https) 요청이오면 로드밸런싱이 작동하도록 설정했다.❗과정
💡 1. 사용자 요청
💡 2. httpd-vhosts.conf 에서 https 붙여서 리다이렉트
💡 3. httpd-ssl.conf 파일이 수행되고 로드밸런싱 설정을 수행
Leave a comment