インフラ系SEの技術メモ

雑なエンジニアが低信頼性のメモを書いています。参考程度にとどめてください。

(Istio)付属しているPodのcapabilitiesを眺める

IstioのPodに必要な特権

YAMLを見るとこんな感じ。

name: istio-init
    resources:
      limits:
        cpu: "2"
        memory: 1Gi
      requests:
        cpu: 100m
        memory: 128Mi
    securityContext:
      allowPrivilegeEscalation: false
      capabilities:
        add:
        - NET_ADMIN
        - NET_RAW
        drop:
        - ALL

というわけで2種類のケーパビリティが付与されています。

1つ目の「NET_ADMIN」ですが、まさにこれがiptablesをいじる設定。
Kubernetesだけではなく、docker runするときに付与する--cap-add=NET_ADMINオプションでもあります。そして「NET_RAW」を付与すると任意のパケットを送れるようになります。

というわけでセキュリティ厳しい場合は使えないんですね。