웹서버와 로드밸런서 분야에서 NGINX Plus를 운영 중이거나 도입을 검토 중이시라면, 최근 F5에서 발표한 라이센스 정책 변경사항과 생명주기 관리 방침을 정확히 이해하는 것이 중요합니다. 특히 2024년 11월 NGINX Plus R33 릴리스부터 도입된 JWT 라이센스 정책은 모든 사용자에게 직접적인 영향을 미치고 있습니다. 이번 글에서는 NGINX Plus의 현재 라이센스 체계, EOS/EOL 일정, 그리고 실무진이 알아야 할 핵심 정보들을 상세히 정리해드리겠습니다.

 

NGINX Plus는 오픈소스 NGINX를 기반으로 한 F5의 상용 웹서버 및 애플리케이션 전달 플랫폼입니다. NGINX Plus R33부터 모든 NGINX Plus 인스턴스에 유효한 JSON Web Token(JWT) 라이센스가 필수가 되었으며, 이는 F5의 자격부여 및 가시성 정책에 맞춰 진행된 중요한 변화입니다.

 

 

1. JWT 라이센스 정책의 핵심 변화사항

라이센스 파일 필수 요구사항

NGINX Plus R33부터 모든 NGINX Plus 인스턴스는 유효한 JWT 라이센스 파일이 필요합니다. 이 라이센스는 개별 인스턴스가 아닌 서브스크립션에 연결되며, 다음과 같은 위치에 저장되어야 합니다:

  • Linux: /etc/nginx/license.jwt
  • FreeBSD: /usr/local/etc/nginx/license.jwt
  • 사용자 지정 경로: mgmt 컨텍스트의 license_token 지시문으로 설정 가능

사용량 보고 시스템 (Usage Reporting)

NGINX Plus는 F5의 라이센싱 엔드포인트(product.connect.nginx.com)로 매시간 사용량 보고서를 자동 전송합니다. 이 시스템의 주요 특징은 다음과 같습니다:

구분내용
보고 주기매시간 자동 전송
초기 보고설치 또는 업그레이드 후 즉시 필요
오프라인 환경NGINX Instance Manager 2.18 이상 경유
유예 기간180일 (후속 보고 실패 시)

중요: 초기 사용량 보고가 실패하면 NGINX Plus가 즉시 트래픽 처리를 중단하므로, 네트워크 연결성과 방화벽 설정을 미리 확인해야 합니다.

 

 

2. 라이센스 모델 및 가격 정책

인스턴스별 라이센싱 (Per-Instance Licensing)

NGINX 제품은 ‘인스턴스별’로 라이센싱되며, 각 서브스크립션은 서브스크립션 기간 동안 소프트웨어의 단일 인스턴스 실행을 허용합니다.

가격 구조

NGINX Plus는 3가지 가격 에디션을 제공하며, 가격대는 $849에서 $2,099까지 다양합니다. 또한 무료 체험판도 제공됩니다.

라이센스 유형특징용도
Standard기본 로드밸런싱 및 프록시 기능중소규모 배포
Professional고급 모니터링 및 API 관리엔터프라이즈 환경
Enterprise전체 기능 + 우선 지원미션 크리티컬 시스템

 

 

3. NGINX Plus 릴리스 및 지원 생명주기

최신 릴리스 현황 (2025년 기준)

릴리스출시일기반 NGINX 버전24개월 지원 종료일주요 변경사항
R352024년 11월1.29.02026년 11월OIDC RP-Initiated Logout, QuickJS ES2023 지원
R342024년 4월1.27.42026년 4월OIDC 네이티브 모듈, 프록시를 통한 사용량 보고
R332024년 11월 19일1.27.22026년 11월JWT 라이센스 필수 도입, 사용량 보고
R322023년 12월 19일1.25.32025년 12월SSL 인증서 캐싱, Stream Pass 모듈
R312023년 10월1.25.22025년 10월네이티브 NGINX 사용량 보고
R302023년 7월1.25.12025년 7월네이티브 QUIC+HTTP/3 지원, 워커별 연결 텔레메트리

주요 과거 릴리스 및 EOL 현황

릴리스출시일기반 NGINX 버전24개월 지원 종료일EOL 상태주요 변경사항
R292023년 3월1.23.42025년 3월⚠️ 곧 EOLMQTT 프로토콜, SAML 인증, OpenTelemetry 지원
R282022년 8월1.23.22024년 8월❌ EOL 완료TLS 메트릭 추가, PROXY 프로토콜 v2 지원
R272022년 2월 15일1.21.52024년 2월❌ EOL 완료ALPN 지원 개선, JWT 인증 오류 코드 커스터마이징
R262021년 9월 28일1.21.32023년 9월❌ EOL 완료Nested JWT 지원, API v7 업데이트
R252021년 6월1.20.22023년 6월❌ EOL 완료JWT 커스텀 체크, HTTP 헬스체크 개선
R242021년 3월1.19.82023년 3월❌ EOL 완료암호화된 JWT (JWE) 지원, F5 Device ID+ 통합
R232020년 12월1.19.42022년 12월❌ EOL 완료gRPC 헬스체크, 쿠키 플래그 네이티브 지원

역사적 주요 릴리스 (참고용)

릴리스출시년도주요 이정표EOL 상태
R182019OpenTracing 모듈 도입 (R34에서 deprecated)❌ EOL 완료
R172018TLS 1.3 지원, 2단계 속도 제한❌ EOL 완료
R152018gRPC 프록시, HTTP/2 서버 푸시, OpenID Connect❌ EOL 완료
R142017개선된 JWT 인증, 중첩 클레임 지원❌ EOL 완료
R122017설정 공유, 프로덕션 레디 nginScript❌ EOL 완료
R102016JWT 지원 초기 버전❌ EOL 완료
R52015TCP 로드밸런싱 도입❌ EOL 완료

기술 지원 정책

F5는 각 NGINX Plus 릴리스에 대해 24개월간 기술 지원을 제공하며, 지원 기간은 각 버전의 최초 출시일부터 시작됩니다.

지원 단계별 정책

단계기간제공 서비스
Active Support릴리스 후 24개월전체 기술 지원, 버그 수정
Security Support최근 2개 릴리스만중요 버그 패치 및 보안 업데이트만 적용
End of Support24개월 후지원 종료

 

 

4. EOS (End of Software Development) 정책

소프트웨어 개발 종료 일정

각 NGINX Plus 릴리스는 다음 버전 출시일에 EoSD(End of Software Development)에 도달합니다. EoSD 이후에는 해당 버전에 추가 기능이나 일반 버그 수정이 적용되지 않습니다.

현재 지원 상태 (2025년 8월 기준)

릴리스EOS 상태보안 지원24개월 지원 남은 기간권장사항
R35Active✅ 지원 중15개월프로덕션 권장
R34Active✅ 지원 중8개월안전
R33EoSD⚠️ 보안만15개월업그레이드 검토
R32EoSD⚠️ 보안만4개월업그레이드 계획 필요
R31EoSD❌ 지원 종료 임박2개월즉시 업그레이드 필요
R30EoSD❌ 지원 종료 임박-1개월 (만료됨)즉시 업그레이드 필요
R29 이하EOL❌ 지원 종료즉시 업그레이드 필수

중요 모듈별 EOL 일정

1. ModSecurity WAF 모듈

  • EOL 날짜: 2024년 3월 31일 완료
  • 영향: ModSecurity 패키지가 NGINX Plus 저장소에서 완전히 제거됨
  • 대안: NGINX App Protect WAF로 마이그레이션 필요

2. OpenTracing 모듈

  • 도입: NGINX Plus R18 (2019년)
  • Deprecated: NGINX Plus R32 (2023년 12월)
  • 완전 제거 예정: NGINX Plus R34에서 완전 제거
  • 대안: OpenTelemetry Distributed Tracing 모듈 사용 권장 (R29에서 도입)

3. Cookie-Flag 모듈 (서드파티)

  • Deprecated: NGINX Plus R23 (2020년 12월)
  • 완전 제거: NGINX Plus R26 (2021년 9월)
  • 대안: proxy_cookie_flags 지시문 사용

4. SSL 지시문 (구버전)

  • Deprecated: NGINX 1.15.0
  • 완전 제거: NGINX Plus R30 (2023년 7월)
  • 대안: listen 지시문의 ssl 매개변수 사용

5. HTTP/2 Server Push 지원

  • 도입: NGINX Plus R15 (2018년)
  • 완전 제거: NGINX Plus R30 (2023년 7월)
  • 사유: IETF 102 기준으로 0.04%의 세션에서만 사용, Chrome 106부터 비활성화

플랫폼별 지원 종료 일정

운영체제 지원 종료 현황

운영체제지원 종료 릴리스종료 일자상태
CentOS 8.1+R272021년 12월 31일❌ 지원 종료
Power 8 (ppc64le)R282022년 8월❌ 지원 종료
Ubuntu 14.04R192019년❌ 지원 종료
FreeBSD 10.4, 11.1R172018년❌ 지원 종료
Debian 7 (Wheezy)R142017년❌ 지원 종료

새로운 플랫폼 지원 추가

운영체제지원 시작 릴리스특이사항
Ubuntu 22.04 LTSR28장기 지원
Amazon Linux 2R24OpenSSL 1.1 의존성
Ubuntu 17.10R14

API 버전별 지원 현황

NGINX Plus API 발전사

API 버전도입 릴리스주요 변경사항지원 상태
API v9R30워커별 연결 메트릭✅ 현재
API v8R28TLS 핸드셰이크 오류 메트릭✅ 지원 중
API v7R26HTTP 상태 코드별 통계✅ 지원 중
API v6R24gRPC 헬스체크✅ 지원 중
Status/Upstream Conf API~R152018년 완전 제거❌ 지원 종료

패키징 및 저장소 변경사항

저장소 변경 히스토리

저장소사용 기간현재 상태마이그레이션
plus-pkgs.nginx.com~R25R29에서 완전 폐쇄pkgs.nginx.com 사용 필수
pkgs.nginx.comR24~✅ 현재 사용

PGP 키 업데이트

변경사항일정영향
기존 키 만료2024년 6월 16일서명 검증 실패
키 만료 연장R32에서 처리기존 패키지 검증 가능
새 키 생성향후 릴리스새 패키지용

 

 

5. 라이센스 만료 및 갱신 정책

서브스크립션 만료 시 영향

지원 계약이 만료된 후에는 더 이상 NGINX Plus를 사용하거나 NGINX로부터 지원을 받을 권한이 없으며, NGINX Plus 업데이트에 액세스할 수 없고 NGINX Plus 인스턴스를 중지하고 삭제해야 합니다.

갱신 프로세스

  1. 사전 알림: F5는 모든 구독자에게 업데이트 가능 시점을 사전 통지
  2. 갱신 절차: MyF5 포털을 통한 서브스크립션 갱신
  3. 새 JWT 다운로드: 갱신 시 새로운 JWT 라이센스 파일 발급
  4. 배포: Config Sync Group 또는 Instance Group을 통한 일괄 배포 권장

 

 

6. 버전별 마이그레이션 가이드 및 체크리스트

R33 이상으로 업그레이드 시 필수 작업

사전 준비 체크리스트

항목설명완료
JWT 라이센스 준비MyF5 포털에서 JWT 파일 다운로드
네트워크 연결성 확인product.connect.nginx.com:443 접근 가능 여부 확인
방화벽 정책 업데이트아웃바운드 HTTPS 연결 허용
오프라인 환경 대비NGINX Instance Manager 2.18+ 설치
백업 및 롤백 계획기존 설정 파일 및 데이터 백업

단계별 업그레이드 절차

  1. JWT 라이센스 배치
    # 라이센스 파일 위치 확인
    sudo mkdir -p /etc/nginx
    sudo cp license.jwt /etc/nginx/license.jwt
    sudo chown nginx:nginx /etc/nginx/license.jwt
    sudo chmod 600 /etc/nginx/license.jwt
    
  2. 설정 파일 업데이트
    # nginx.conf 추가 설정
    mgmt {
        usage_report endpoint=product.connect.nginx.com:443;
        enforce_initial_report on;
    }
    
  3. 오프라인 환경 설정 (필요시)
    mgmt {
        usage_report endpoint=internal-nim.company.com:443;
        enforce_initial_report on;
        license_token /custom/path/license.jwt;
    }
    

주요 릴리스별 업그레이드 주의사항

R35로 업그레이드 시

  • OIDC RP-Initiated Logout 기능 활용 가능
  • QuickJS ES2023 완전 지원으로 njs 스크립트 현대화
  • CVE-2025-53859 보안 패치 적용

R34로 업그레이드 시

  • 프록시를 통한 사용량 보고 지원으로 네트워크 제약 해결
  • OIDC 네이티브 모듈 도입으로 인증 간소화
  • SNI 관련 보안 이슈 (CVE-2025-23419) 패치

R33로 업그레이드 시 (필수)

  • JWT 라이센스 시스템 완전 전환
  • 사용량 보고 필수 활성화
  • 180일 유예 기간 설정 옵션

레거시 모듈 마이그레이션 가이드

1. ModSecurity → NGINX App Protect 마이그레이션

# 기존 ModSecurity 설정 (더 이상 지원되지 않음)
# load_module modules/ngx_http_modsecurity_module.so;
# modsecurity on;
# modsecurity_rules_file /etc/nginx/modsec/main.conf;

# NGINX App Protect 대안
load_module modules/ngx_http_app_protect_module.so;
app_protect_enable on;
app_protect_policy_file "/etc/app_protect/conf/NginxDefaultPolicy.json";
app_protect_security_log_enable on;
app_protect_security_log "/etc/app_protect/conf/log_default.json" syslog:server=127.0.0.1:514;

2. OpenTracing → OpenTelemetry 마이그레이션

# 기존 OpenTracing 설정 (R34에서 제거 예정)
# load_module modules/ngx_http_opentracing_module.so;
# opentracing_load_tracer /usr/local/lib/libjaegertracing_plugin.so /etc/jaeger-config.json;
# opentracing on;

# OpenTelemetry 대안
load_module modules/ngx_http_otel_module.so;
otel_exporter {
    endpoint http://jaeger:14268/api/traces;
}
otel_trace on;

3. 구버전 SSL 지시문 마이그레이션

# 기존 방식 (R30에서 제거됨)
# server {
#     listen 443;
#     ssl on;
# }

# 권장 방식
server {
    listen 443 ssl;
    listen [::]:443 ssl;
}

오프라인 환경 특별 고려사항

NGINX Instance Manager 설정

# /etc/nginx/nginx.conf
mgmt {
    usage_report endpoint=nim.internal.company:443 interval=1h;
    enforce_initial_report on;
    license_token /etc/nginx/license.jwt;
}

# NIM에서 F5로의 포워딩 설정 (NIM 2.18+ 필요)

방화벽 규칙 예시

# 아웃바운드 HTTPS 허용
sudo iptables -A OUTPUT -p tcp --dport 443 -d product.connect.nginx.com -j ACCEPT

# 내부 NIM으로의 연결 허용
sudo iptables -A OUTPUT -p tcp --dport 443 -d nim.internal.company -j ACCEPT

모니터링 및 검증 방법

라이센스 상태 확인

# 라이센스 파일 확인
sudo nginx -t
sudo ls -la /etc/nginx/license.jwt

# 로그에서 사용량 보고 확인
sudo tail -f /var/log/nginx/error.log | grep -E "(usage|report|license)"

# API를 통한 라이센스 상태 확인
curl http://localhost:8080/api/9/nginx

업그레이드 후 검증 체크리스트

검증 항목명령어/방법예상 결과
설정 문법 검증nginx -tsyntax is ok
라이센스 로드로그 확인라이센스 관련 ERROR 없음
사용량 보고로그 모니터링매시간 보고 성공
서비스 정상성systemctl status nginxactive (running)
API 응답curl localhost:8080/apiJSON 응답

긴급 상황 대응 가이드

라이센스 보고 실패 시 대응

  1. 즉시 대응 (180일 유예 기간 내)
    # 네트워크 연결 확인
    telnet product.connect.nginx.com 443
    
    # DNS 해결 확인  
    nslookup product.connect.nginx.com
    
    # 프록시 설정 확인
    echo $https_proxy
    
  2. 임시 유예 기간 활성화
    mgmt {
        usage_report endpoint=product.connect.nginx.com:443;
        enforce_initial_report off;  # 임시로 비활성화
    }
    

롤백 절차

# 1. 서비스 중지
sudo systemctl stop nginx

# 2. 이전 버전 복원
sudo yum downgrade nginx-plus

# 3. 설정 파일 복원
sudo cp /etc/nginx/nginx.conf.backup /etc/nginx/nginx.conf

# 4. 서비스 재시작
sudo systemctl start nginx

 

NGINX Plus를 안정적으로 운영하기 위해서는 라이센스 정책과 지원 생명주기를 정확히 이해하고, 정기적인 업데이트 계획을 수립하는 것이 중요합니다. 특히 JWT 라이센스 도입으로 인한 변화에 대응하여 네트워크 설정과 라이센스 관리 프로세스를 점검해보시기 바랍니다.

 

댓글 남기기