ci(itms): 개발서버 도메인(itms.zioinfo.co.kr) 리버스 프록시 vhost 추가 (적용 대기)
실측: itms.zioinfo.co.kr DNS→서버(101.79.17.164) 해석되나 nginx itms vhost 부재·앱 미기동(11020 등)·https 미구성. - deploy/nginx/itms.zioinfo.co.kr.conf: front(:11020) 진입점 리버스 프록시(80→443 리다이렉트, TLS·auth/api 선택 블록). 라이브 조건 명시: Tier2 앱 기동 + TLS 인증서 발급(certbot). 미충족 시 502/인증서 오류. - README: 접속 도메인·nginx 적용 절차 섹션 추가. 기존 vhost(zioinfo/app/jenkins) 무영향(신규 vhost만). 서버 미적용(산출물 준비형). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
8adec35979
commit
d85b47fa08
@ -46,3 +46,8 @@ ITMS는 단일-jar가 아니라 **4포트 독립 WAR 스택 + 데몬**:
|
||||
## 보안 불변
|
||||
- 이 디렉터리 어떤 파일에도 AES 암호문·DB 접속정보·NCP/카카오 키·Gitea 비번·SSH 계정을 **하드코딩 금지**. 자격증명은 env/서버 로컬에서만.
|
||||
- force push 금지. 기존 단일-jar 솔루션 배포에 무영향(deploy_server는 itms 블록만 추가).
|
||||
|
||||
## 접속 도메인 (개발서버)
|
||||
- **itms.zioinfo.co.kr** (서버 101.79.17.164). 브라우저 진입점 = front(:11020).
|
||||
- 리버스 프록시: `deploy/nginx/itms.zioinfo.co.kr.conf` 를 `/etc/nginx/sites-available/` 에 배치 → `sites-enabled` 심볼릭 → `nginx -t && systemctl reload nginx`.
|
||||
- 라이브 조건: ① Tier2 앱 기동(front 등) ② TLS 인증서 발급(certbot -d itms.zioinfo.co.kr). 미충족 시 각각 502 / 인증서 오류.
|
||||
|
||||
47
deploy/nginx/itms.zioinfo.co.kr.conf
Normal file
47
deploy/nginx/itms.zioinfo.co.kr.conf
Normal file
@ -0,0 +1,47 @@
|
||||
# itms.zioinfo.co.kr — ITMS 리버스 프록시 (적용 대기 템플릿)
|
||||
# 개발서버 도메인: itms.zioinfo.co.kr → 서버(101.79.17.164, 내부 10.0.1.6)
|
||||
#
|
||||
# 선결(라이브 조건):
|
||||
# 1) Tier2 앱 기동: front(11020) 필수, 필요 시 auth(11000)/api(11010) — 런타임 DB·JDK17·기관 프로파일 확보 환경에서
|
||||
# 2) TLS 인증서 발급(itms.zioinfo.co.kr) — 예: certbot --nginx -d itms.zioinfo.co.kr
|
||||
# ※ 앱 미기동 상태에서 적용하면 502. 인증서 미발급 시 443 블록의 ssl_certificate 경로부터 맞출 것.
|
||||
#
|
||||
# 진입점: front(:11020) 가 브라우저 진입점. front 가 auth/api 를 서버측 REST(Unirest)로 경유하므로
|
||||
# 일반적으로 front 만 프록시하면 됨. (OAuth 리다이렉트가 브라우저를 auth 로 보내는 구성이면 /oauth 블록 활성화)
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name itms.zioinfo.co.kr;
|
||||
location / { return 301 https://$host$request_uri; }
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443 ssl;
|
||||
server_name itms.zioinfo.co.kr;
|
||||
|
||||
ssl_certificate /etc/letsencrypt/live/itms.zioinfo.co.kr/fullchain.pem; # 발급 후 실제 경로로
|
||||
ssl_certificate_key /etc/letsencrypt/live/itms.zioinfo.co.kr/privkey.pem;
|
||||
|
||||
client_max_body_size 50m;
|
||||
|
||||
# 웹 UI (front :11020) — 브라우저 진입점
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:11020;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_read_timeout 120s;
|
||||
}
|
||||
|
||||
# (선택) OAuth 인가서버 직접 노출이 필요한 구성일 때만 활성화
|
||||
# location /oauth/ {
|
||||
# proxy_pass http://127.0.0.1:11000;
|
||||
# proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme;
|
||||
# }
|
||||
# (선택) API 직접 노출 — front 가 서버측 경유하면 불필요
|
||||
# location /api/ {
|
||||
# proxy_pass http://127.0.0.1:11010;
|
||||
# proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme;
|
||||
# }
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user