TLS Inspector¶
TLS Inspector listener filter allows detecting whether the transport appears to be TLS or plaintext, and if it is TLS, it detects the Server Name Indication and/or Application-Layer Protocol Negotiation from the client. This can be used to select a FilterChain via the server_names and/or application_protocols of a FilterChainMatch.
- SNI
- v2 API reference
- This filter should be configured with the name envoy.listener.tls_inspector.
Example¶
A sample filter configuration could be:
listener_filters:
- name: "envoy.listener.tls_inspector"
typed_config: {}
Statistics¶
This filter has a statistics tree rooted at tls_inspector with the following statistics:
Name | Type | Description |
---|---|---|
connection_closed | Counter | Total connections closed |
client_hello_too_large | Counter | Total unreasonably large Client Hello received |
read_error | Counter | Total read errors |
tls_found | Counter | Total number of times TLS was found |
tls_not_found | Counter | Total number of times TLS was not found |
alpn_found | Counter | Total number of times Application-Layer Protocol Negotiation was successful |
alpn_not_found | Counter | Total number of times Application-Layer Protocol Negotiation has failed |
sni_found | Counter | Total number of times Server Name Indication was found |
sni_not_found | Counter | Total number of times Server Name Indication was not found |