跳到主要内容

隐藏自动添加的 server header

背景

出于安全考虑,希望隐藏 istio 自动添加的 server: istio-envoy 这样的 header。

解决方案

可以配置 envoyfilter ,让 envoy 返回响应时不自动添加 server 的 header,将HttpConnectionManager 的 server_header_transformation 设为 PASS_THROUGH(后端没返回该header时envoy也不会自动添加):

apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
name: hide-headers
namespace: istio-system
spec:
configPatches:
- applyTo: NETWORK_FILTER
match:
context: ANY
listener:
filterChain:
filter:
name: "envoy.http_connection_manager"
patch:
operation: MERGE
value:
typed_config:
"@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager"
server_header_transformation: PASS_THROUGH

参考资料