본문 바로가기

Nginx20

Nginx Ingress Controller Backend HTTP and HTTPS 서비스 혼합(both) NGINX Ingress 컨트롤러를 사용 중이라면, nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"은 작동하지 않습니다. 그러나 nginx.org/ssl-services는 백엔드에서 TLS를 필요로 하는 서비스를 선택할 수 있게 해줍니다. 이름이 혼동스러울 수 있어서 실제 목적을 깨닫기까지 시간이 걸릴 수 있습니다. 이것은 NGINX 하부에서 사용되는 표준 Kubernetes Ingress 컨트롤러에서는 작동하지 않으며, NGINX 원본 컨트롤러에서만 작동합니다. 참고: https://docs.nginx.com/nginx-ingress-controller/configuration/ingress-resources/advanced-configuration-wi.. 2023. 12. 4.
외부이름(ExternalName) 서비스를 지원하는 Ingress Controller Ingress Controller는 ExternalName 유형의 서비스로의 요청 라우팅을 지원합니다. ExternalName 서비스는 주로 클러스터 외부의 IP 주소로 해석되는 외부 DNS 이름에 의해 정의됩니다. 이를 통해 Ingress Controller를 사용하여 클러스터 외부의 대상으로 요청을 라우팅할 수 있습니다. 참고: 이 기능은 NGINX Plus에서만 사용할 수 있습니다. 전제 조건 ExternalName 서비스를 사용하려면 먼저 ConfigMap을 사용하여 하나 이상의 리졸버를 구성해야 합니다. NGINX Plus는 이러한 리졸버를 사용하여 서비스의 DNS 이름을 해석합니다. 다음은 리졸버를 구성하는 예시 ConfigMap입니다. kind: ConfigMap apiVersion: v1 .. 2023. 12. 3.
Kibana UI를 subpath(/kibana) URL로 서비스 구성 하나의 도메인에서 여러가지 서비스를 운영하거나 복수의 Kibana 서비스를 운영하기 위해서, Kibana를 GCE Ingress 뒤에 서브패스인 "/kibana"로 노출하기 위해서는 몇 가지 구성이 필요합니다. Kibana 설정 변경 Kibana의 kibana.yml 파일을 열어서 다음을 수정해야 합니다. server: basePath: "/kibana" rewriteBasePath: true publicBaseUrl: "https://elastic.stack/kibana" 이 설정은 Kibana에게 서브패스 "/kibana"를 사용하고 있다는 것을 알려줍니다. Readiness Probe 업데이트 Kibana Pod 템플릿에서 readiness probe를 "/kibana/login" 경로로 업데이트해.. 2023. 12. 1.
ModSecurity 로그 Elasticsearch 수집하고 Kibana 통한 분석 ModSecurity 로그를 Elasticsearch에 저장하고 Kibana를 사용하여 검색 및 보고서를 생성하는 방법에 대한 요구 사항은 다음과 같습니다. ModSecurity 버전 3 및 Nginx 사용 "Audit Log" 구성 ModSecurity 로그를 Elasticsearch로 전송하는 Python 스크립트 사용 이 설정은 ModSecurity 2.9 및 Apache가 아닌 Nginx 및 Libmodsecurity (또는 ModSecurity v3)를 기반으로 합니다. Audit Log 구성 및 Python 스크립트를 사용하여 ModSecurity 로그를 Elasticsearch로 전송하는 방법을 보여줍니다. 이후 Kibana를 사용하여 검색 및 보고서 생성이 가능합니다. Nginx 설정 모든.. 2023. 11. 27.
Nginx Reverse Proxy Content Caching 이해와 설정 방법 Nginx에서 특정 경로를 캐시하지 않으려면, proxy_no_cache 디렉티브를 사용하여 해당 경로를 지정하고 캐시를 사용하지 않도록 설정해야 합니다. 아래는 Nginx 구성 파일에서 / 경로를 캐시하지 않는 방법을 보여주는 예제입니다. location / { proxy_no_cache 1; proxy_cache_bypass $http_pragma $http_authorization; # 다른 프록시 설정 옵션들... } 위의 예제에서 location /은 루트 경로를 나타냅니다. / 경로의 요청을 캐시하지 않으려면 proxy_no_cache 1;을 설정합니다. 또한 proxy_cache_bypass 지시어를 사용하여 특정 헤더 ($http_pragma와 $http_authorization)가 존재할.. 2023. 11. 23.