Nginx 主机的Kubernetes入口白名单IP
如何将不同主机但相同路径的IP地址列入白名单 example.com-应该没有白名单。所有其他人都必须被列入白名单Nginx 主机的Kubernetes入口白名单IP,nginx,kubernetes,kubernetes-ingress,nginx-config,nginx-ingress,Nginx,Kubernetes,Kubernetes Ingress,Nginx Config,Nginx Ingress,如何将不同主机但相同路径的IP地址列入白名单 example.com-应该没有白名单。所有其他人都必须被列入白名单 apiVersion: extensions/v1beta1 kind: Ingress metadata: annotations: kubernetes.io/ingress.class: nginx spec: rules: - host: login.example.com http: paths: - backend:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: nginx
spec:
rules:
- host: login.example.com
http:
paths:
- backend:
serviceName: login
servicePort: 4444
path: /
- host: admin.example.com
http:
paths:
- backend:
serviceName: admin
servicePort: 3333
path: /
- host: api.example.com
http:
paths:
- backend:
serviceName: api
servicePort: 2222
path: /
- host: example.com
http:
paths:
- backend:
serviceName: wp
servicePort: 1111
path: /
注释:
nginx.ingres.kubernetes.io/whitelist-source-range:“1.1.1.1/24”基本上@ANISH给了你一个关于从哪里开始的好主意 您可以通过指定允许的客户端IP源范围 nginx.ingres.kubernetes.io/whitelist-source-range注释。这个 值是以逗号分隔的CIDR列表,例如10.0.0.0/24172.10.0.1 要为所有入口规则全局配置此设置,请 可以在NGINX ConfigMap中设置白名单源范围值
但是,如果您不想将其应用于所有入口规则,只需创建两个单独的入口。1对于白名单主机,第二个对于example.com主机Hello,这将覆盖每个主机的整个入口。但是我只需要一个登录名为login.example.com、admin.example.com和api.example.com的白名单你好!谢谢你的回答。事实上,我知道这个功能(创建2个入口),但我正在尝试找到另一个解决方案来避免2个入口。有趣的是,我用nginx.ingres.kubernetes.io/whitelist-source-range注释创建了第二个入口,它的外部IP与第一个相同!对于我意想不到的行为,我以为第二次的IP会不同,没有办法做到这一点