如何编写网络策略文件以允许流量仅从几个IP地址访问应用程序(例如:127.18.12.1,127.19.12.3)。我已经引用了文件https://github.com/ahmetb/kubernetes-network-policy-recipes,但没有找到满意的答案。如果有人帮助我编写网络策略文件,那就太好了。我还参考了Kubernetes的网络政策官方文件。
我的示例代码
example-component
答案 0 :(得分:0)
如果您不想编辑网络策略并限制来自特定域的入口流量,则可以编辑带有喜欢的注释的入口:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: restricted-ingress
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/from-to-www-redirect: "True"
nginx.ingress.kubernetes.io/force-ssl-redirect: "True"
nginx.ingress.kubernetes.io/whitelist-source-range: "00.0.0.0, 142.12.85.524"
网络政策
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: test-policy
namespace: default
spec:
podSelector:
matchLabels:
app: db
policyTypes:
- Ingress
- Egress
ingress:
- from:
- ipBlock:
cidr: 172.17.0.0/16
except:
- 172.17.1.0/24
- podSelector:
matchLabels:
role: frontend
ports:
- protocol: TCP
port: 6379
出口: - 至: -ipBlock: cidr:10.0.0.0/24 端口: -协议:TCP 端口:5978