wallarm/ingress-nextgen

GitHub: wallarm/ingress-nextgen

集成了 Wallarm WAF 与 API 安全服务的下一代 Kubernetes NGINX Ingress Controller,为集群入口提供统一的流量管理和应用层安全防护。

Stars: 0 | Forks: 0

[![OpenSSFScorecard](https://api.securityscorecards.dev/projects/github.com/nginx/kubernetes-ingress/badge)](https://api.securityscorecards.dev/projects/github.com/nginx/kubernetes-ingress) [![回归测试](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/0bacbdfcbd183139.svg)](https://github.com/nginx/kubernetes-ingress/actions/workflows/regression.yml?query=event%3Aschedule) [![FOSSA 状态](https://app.fossa.com/api/projects/custom%2B5618%2Fgithub.com%2Fnginx%2Fkubernetes-ingress.svg?type=shield)](https://app.fossa.com/projects/custom%2B5618%2Fgithub.com%2Fnginx%2Fkubernetes-ingress?ref=badge_shield) [![许可证](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) [![Go 报告卡](https://goreportcard.com/badge/github.com/nginx/kubernetes-ingress)](https://goreportcard.com/report/github.com/nginx/kubernetes-ingress) [![codecov](https://codecov.io/gh/nginx/kubernetes-ingress/branch/main/graph/badge.svg?token=snCn7Y0zC7)](https://codecov.io/gh/nginx/kubernetes-ingress) [![GitHub 发布 (最新 SemVer)](https://img.shields.io/github/v/release/nginx/kubernetes-ingress?logo=github&sort=semver)](https://github.com/nginx/kubernetes-ingress/releases/latest) ![GitHub go.mod Go 版本](https://img.shields.io/github/go-mod/go-version/nginx/kubernetes-ingress?logo=go) [![Docker 拉取次数](https://img.shields.io/docker/pulls/nginx/nginx-ingress?logo=docker&logoColor=white)](https://hub.docker.com/r/nginx/nginx-ingress) ![Docker 镜像大小 (最新 semver)](https://img.shields.io/docker/image-size/nginx/nginx-ingress?logo=docker&logoColor=white&sort=semver) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/nginx-ingress)](https://artifacthub.io/packages/container/nginx-ingress/kubernetes-ingress) [![项目状态: 活跃 – 项目已达到稳定、可用的状态,并且正在积极开发中。](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active) ![商业支持](https://badgen.net/badge/support/commercial/green?icon=awesome) # NGINX Ingress Controller 本仓库由 NGINX 背后的团队提供,实现了 NGINX 和 NGINX Plus 的 Ingress Controller。 作为 Ingress 的替代方案,NGINX Ingress Controller 支持 VirtualServer 和 VirtualServerRoute 资源。 它们支持 Ingress 资源不支持的使用场景,例如流量分割和基于内容的高级 路由。请参阅 [VirtualServer 和 VirtualServerRoute 资源 文档](https://docs.nginx.com/nginx-ingress-controller/configuration/virtualserver-and-virtualserverroute-resources/)。 同时支持 TCP、UDP 和 TLS Passthrough 负载均衡。请参阅 [TransportServer 资源 文档](https://docs.nginx.com/nginx-ingress-controller/configuration/transportserver-resource/)。 请阅读[本文档](https://docs.nginx.com/nginx-ingress-controller/overview/nginx-plus/)以了解更多关于结合 NGINX Plus 的 NGINX Ingress Controller 的信息。 ## Ingress 和 Ingress Controller ### 什么是 Ingress? Ingress 是一种 Kubernetes 资源,允许您为运行在 Kubernetes 上的应用程序配置 HTTP 负载均衡器,这些应用程序由一个或多个 [Service](https://kubernetes.io/docs/concepts/services-networking/service/) 表示。 这样的负载均衡器对于将这些应用程序交付给 Kubernetes 集群外部的客户端来说是必不可少的。 Ingress 资源支持以下功能: - **基于内容的路由**: - *基于主机的路由*。例如,将带有主机头 `foo.example.com` 的请求路由到一组服务, 将带有主机头 `bar.example.com` 的请求路由到另一组服务。 - *基于路径的路由*。例如,将以 `/serviceA` 开头的 URI 请求路由到服务 A, 将以 `/serviceB` 开头的 URI 请求路由到服务 B。 - 针对每个主机名(例如 `foo.example.com`)的 **TLS/SSL 终止**。 请参阅 [Ingress 用户指南](https://kubernetes.io/docs/concepts/services-networking/ingress/)以了解更多关于 Ingress 资源的信息。 ### 什么是 Ingress Controller? Ingress Controller 是在集群中运行并根据 Ingress 资源配置 HTTP 负载均衡器的应用程序。该负载均衡器可以是在集群中运行的软件负载均衡器,也可以是在外部运行的硬件或云 负载均衡器。不同的负载均衡器需要不同的 Ingress Controller 实现。 在 NGINX 的情况下,Ingress Controller 与负载均衡器一起部署在一个 Pod 中。 ## 入门指南 1. 使用 [Helm chart](https://docs.nginx.com/nginx-ingress-controller/install/helm/) 或 Kubernetes [manifests](https://docs.nginx.com/nginx-ingress-controller/install/manifests/) 安装 NGINX Ingress Controller。 2. 为一个简单的 Web 应用程序配置负载均衡: - 使用 Ingress 资源。请参阅 [Cafe 示例](https://github.com/nginx/kubernetes-ingress/tree/main/examples/ingress-resources/complete-example)。 - 或使用 VirtualServer 资源。请参阅 [基本 配置](https://github.com/nginx/kubernetes-ingress/tree/main/examples/custom-resources/basic-configuration)示例。 3. 查看其他配置[示例](https://github.com/nginx/kubernetes-ingress/tree/main/examples)。 4. 在[文档](https://docs.nginx.com/nginx-ingress-controller/)中了解有关所有可用配置和自定义的更多信息。 ## NGINX Ingress Controller 版本发布 我们在 GitHub 上发布 NGINX Ingress Controller 版本。请参阅我们的[版本发布 页面](https://github.com/nginx/kubernetes-ingress/releases)。 最新的稳定版本是 [5.3.4](https://github.com/nginx/kubernetes-ingress/releases/tag/v5.3.4)。对于生产 使用,我们建议您选择最新的稳定版本。 边缘版本适用于体验尚未在稳定版本中发布的新功能。要使用 它,请选择基于主分支[最新 提交](https://github.com/nginx/kubernetes-ingress/commits/main)构建的 *边缘* 版本。 要使用 NGINX Ingress Controller,您需要具备以下条件: - NGINX Ingress Controller 镜像。 - 安装清单或 Helm chart。 - 文档和示例。 确保上述内容的版本相互匹配是非常重要的。 下表总结了有关镜像、Helm chart、清单、文档和示例的选项,并 提供了指向正确版本的链接: | 版本 | 描述 | NGINX 镜像 | NGINX Plus 镜像 | 安装清单和 Helm Chart | 文档和示例 | | ------- | ----------- | --------------- | -------------------- | --------------------------------------- | -------------------------- | | 最新稳定版本 | 用于生产环境 | 使用 [DockerHub](https://hub.docker.com/r/nginx/nginx-ingress/)、[GitHub Container](https://github.com/nginx/kubernetes-ingress/pkgs/container/kubernetes-ingress)、[Amazon ECR Public Gallery](https://gallery.ecr.aws/nginx/nginx-ingress) 或 [Quay.io](https://quay.io/repository/nginx/nginx-ingress) 的 5.3.4 镜像,或[构建您自己的镜像](https://docs.nginx.com/nginx-ingress-controller/install/build/)。 | 使用 [F5 Container Registry](https://docs.nginx.com/nginx-ingress-controller/install/images/registry-download/) 的 5.3.4 镜像,或[构建您自己的镜像](https://docs.nginx.com/nginx-ingress-controller/install/build)。 | [清单](https://github.com/nginx/kubernetes-ingress/tree/v5.3.4/deployments)。[Helm chart](https://github.com/nginx/kubernetes-ingress/tree/v5.3.4/charts/nginx-ingress)。 | [文档](https://docs.nginx.com/nginx-ingress-controller/)。[示例](https://docs.nginx.com/nginx-ingress-controller/configuration/configuration-examples/)。 | | 边缘/每日构建版本 | 用于测试和体验 | 使用 [DockerHub](https://hub.docker.com/r/nginx/nginx-ingress/)、[GitHub Container](https://github.com/nginx/kubernetes-ingress/pkgs/container/kubernetes-ingress)、[Amazon ECR Public Gallery](https://gallery.ecr.aws/nginx/nginx-ingress) 或 [Quay.io](https://quay.io/repository/nginx/nginx-ingress) 的边缘或每日构建镜像,或[构建您自己的镜像](https://docs.nginx.com/nginx-ingress-controller/install/build/)。 | [构建您自己的镜像](https://docs.nginx.com/nginx-ingress-controller/install/build/)。 | [清单](https://github.com/nginx/kubernetes-ingress/tree/main/deployments)。[Helm chart](https://github.com/nginx/kubernetes-ingress/tree/main/charts/nginx-ingress)。 | [文档](https://docs.nginx.com/nginx-ingress-controller)。[示例](https://github.com/nginx/kubernetes-ingress/tree/main/examples)。 | ## SBOM (软件物料清单) 我们为二进制文件和 Docker 镜像生成 SBOM。 ### 二进制文件 二进制文件的 SBOM 可在发布页面获取。SBOM 使用 [syft](https://github.com/anchore/syft) 生成,并以 SPDX 格式提供。 ### Docker 镜像 Docker 镜像的 SBOM 可在 [DockerHub](https://hub.docker.com/r/nginx/nginx-ingress/)、[GitHub Container](https://github.com/nginx/kubernetes-ingress/pkgs/container/kubernetes-ingress)、[Amazon ECR Public Gallery](https://gallery.ecr.aws/nginx/nginx-ingress) 或 [Quay.io](https://quay.io/repository/nginx/nginx-ingress) 仓库中获取。SBOM 使用 [syft](https://github.com/anchore/syft) 生成,并作为证明 存储在 镜像清单中。 例如,要从 Docker Hub 检索 `linux/amd64` 的 SBOM 并使用 [grype](https://github.com/anchore/grype) 对其进行分析,您可以运行以下命令: ``` docker buildx imagetools inspect nginx/nginx-ingress:edge --format '{{ json (index .SBOM "linux/amd64").SPDX }}' | grype ``` ## 联系我们 我们期待您的反馈!如果您对我们的 Ingress Controller 有任何建议或遇到问题,请 在 GitHub 上创建 Issue 或发送 Pull Request。 ## 贡献 如果您想为项目做出贡献,请阅读我们的[贡献指南](CONTRIBUTING.md)。 ## 支持 对于 NGINX Plus 客户,NGINX Ingress Controller(与 NGINX Plus 结合使用时)受支持合同保障。
标签:API安全, CISA项目, Docker, EVTX分析, Go语言, Ingress Controller, JSON输出, NextGen, NGINX, WAF, Wallarm, 反向代理, 子域名突变, 安全防御评估, 安全防护, 容器网络, 日志审计, 流量管理, 程序破解, 请求拦截, 负责任AI, 负载均衡