2022-10-01 11:47:09 +00:00
|
|
|
---
|
|
|
|
static_resources:
|
|
|
|
listeners:
|
|
|
|
- name: listener_0
|
|
|
|
address:
|
|
|
|
socket_address:
|
|
|
|
address: 0.0.0.0
|
|
|
|
port_value: 8080
|
|
|
|
filter_chains:
|
|
|
|
- filters:
|
|
|
|
- name: envoy.filters.network.http_connection_manager
|
|
|
|
typed_config:
|
|
|
|
"@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager # yamllint disable-line rule:line-length
|
|
|
|
stat_prefix: ingress_http
|
|
|
|
use_remote_address: true
|
|
|
|
skip_xff_append: false
|
|
|
|
access_log:
|
|
|
|
- name: envoy.access_loggers.stdout
|
|
|
|
typed_config:
|
|
|
|
"@type": type.googleapis.com/envoy.extensions.access_loggers.stream.v3.StdoutAccessLog
|
|
|
|
route_config:
|
|
|
|
name: local_route
|
|
|
|
virtual_hosts:
|
|
|
|
- name: login_service
|
|
|
|
domains: ["login.example.com:8080"]
|
|
|
|
typed_per_filter_config:
|
|
|
|
envoy.filters.http.ext_authz:
|
|
|
|
"@type": type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthzPerRoute
|
|
|
|
disabled: true
|
|
|
|
routes:
|
|
|
|
- match:
|
|
|
|
prefix: "/.well-known/"
|
|
|
|
route:
|
|
|
|
cluster: authelia-backend
|
|
|
|
- match:
|
|
|
|
prefix: "/api/"
|
|
|
|
route:
|
|
|
|
cluster: authelia-backend
|
|
|
|
- match:
|
|
|
|
prefix: "/locales/"
|
|
|
|
route:
|
|
|
|
cluster: authelia-backend
|
2023-01-25 04:11:05 +00:00
|
|
|
- match:
|
|
|
|
path: "/devworkflow"
|
|
|
|
route:
|
|
|
|
cluster: authelia-backend
|
2022-10-01 11:47:09 +00:00
|
|
|
- match:
|
|
|
|
path: "/jwks.json"
|
|
|
|
route:
|
|
|
|
cluster: authelia-backend
|
|
|
|
- match:
|
|
|
|
prefix: "/"
|
|
|
|
route:
|
|
|
|
cluster: authelia-frontend
|
|
|
|
- name: mail_service
|
|
|
|
domains: ["mail.example.com:8080"]
|
|
|
|
typed_per_filter_config:
|
|
|
|
envoy.filters.http.ext_authz:
|
|
|
|
"@type": type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthzPerRoute
|
|
|
|
disabled: true
|
|
|
|
routes:
|
|
|
|
- match:
|
|
|
|
prefix: "/"
|
|
|
|
route:
|
|
|
|
cluster: smtp
|
|
|
|
- name: http_service
|
|
|
|
domains: ["*.example.com:8080"]
|
|
|
|
routes:
|
|
|
|
- match:
|
|
|
|
prefix: "/headers"
|
|
|
|
route:
|
|
|
|
cluster: httpbin
|
|
|
|
- match:
|
|
|
|
prefix: "/"
|
|
|
|
route:
|
|
|
|
cluster: nginx-backend
|
|
|
|
http_filters:
|
|
|
|
- name: envoy.filters.http.ext_authz
|
|
|
|
typed_config:
|
|
|
|
"@type": type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz
|
|
|
|
http_service:
|
2023-01-25 09:36:40 +00:00
|
|
|
path_prefix: /api/authz/ext-authz/
|
2022-10-01 11:47:09 +00:00
|
|
|
server_uri:
|
|
|
|
uri: authelia-backend:9091
|
|
|
|
cluster: authelia-backend
|
|
|
|
timeout: 0.25s
|
|
|
|
authorization_request:
|
|
|
|
allowed_headers:
|
|
|
|
patterns:
|
2023-02-02 07:13:18 +00:00
|
|
|
- exact: authorization
|
|
|
|
- exact: proxy-authorization
|
2022-10-01 11:47:09 +00:00
|
|
|
- exact: accept
|
|
|
|
- exact: cookie
|
|
|
|
headers_to_add:
|
|
|
|
- key: X-Forwarded-Proto
|
|
|
|
value: '%REQ(:SCHEME)%'
|
|
|
|
authorization_response:
|
|
|
|
allowed_upstream_headers:
|
|
|
|
patterns:
|
2023-02-02 07:13:18 +00:00
|
|
|
- exact: authorization
|
|
|
|
- exact: proxy-authorization
|
2022-10-01 11:47:09 +00:00
|
|
|
- prefix: remote-
|
2023-02-02 07:13:18 +00:00
|
|
|
- prefix: authelia-
|
2022-10-01 11:47:09 +00:00
|
|
|
allowed_client_headers:
|
|
|
|
patterns:
|
|
|
|
- exact: set-cookie
|
|
|
|
allowed_client_headers_on_success:
|
|
|
|
patterns:
|
|
|
|
- exact: set-cookie
|
|
|
|
failure_mode_allow: false
|
|
|
|
- name: envoy.filters.http.router
|
|
|
|
typed_config:
|
|
|
|
"@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
|
|
|
|
transport_socket:
|
|
|
|
name: envoy.transport_sockets.tls
|
|
|
|
typed_config:
|
|
|
|
"@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext
|
|
|
|
common_tls_context:
|
|
|
|
tls_certificates:
|
|
|
|
- certificate_chain:
|
|
|
|
filename: /etc/ssl/server.cert
|
|
|
|
private_key:
|
|
|
|
filename: /etc/ssl/server.key
|
|
|
|
clusters:
|
|
|
|
- name: authelia-frontend
|
|
|
|
transport_socket_matches:
|
|
|
|
- name: "enableTLS"
|
|
|
|
match:
|
|
|
|
enableTLS: true
|
|
|
|
transport_socket:
|
|
|
|
name: envoy.transport_sockets.tls
|
|
|
|
typed_config:
|
|
|
|
"@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext
|
|
|
|
common_tls_context: {}
|
|
|
|
- name: "defaultTLSDisabled"
|
|
|
|
match: {}
|
|
|
|
transport_socket:
|
|
|
|
name: envoy.transport_sockets.raw_buffer
|
|
|
|
typed_config:
|
|
|
|
"@type": type.googleapis.com/envoy.extensions.transport_sockets.raw_buffer.v3.RawBuffer
|
|
|
|
connect_timeout: 0.25s
|
|
|
|
type: STRICT_DNS
|
|
|
|
dns_lookup_family: V4_ONLY
|
|
|
|
lb_policy: ROUND_ROBIN
|
|
|
|
load_assignment:
|
|
|
|
cluster_name: authelia-frontend
|
|
|
|
endpoints:
|
|
|
|
- locality:
|
|
|
|
region: dev
|
|
|
|
priority: 0
|
|
|
|
lb_endpoints:
|
|
|
|
- endpoint:
|
|
|
|
health_check_config:
|
|
|
|
hostname: authelia-frontend
|
|
|
|
port_value: 3000
|
|
|
|
address:
|
|
|
|
socket_address:
|
|
|
|
address: authelia-frontend
|
|
|
|
port_value: 3000
|
|
|
|
- locality:
|
|
|
|
region: ci
|
|
|
|
priority: 1
|
|
|
|
lb_endpoints:
|
|
|
|
- endpoint:
|
|
|
|
address:
|
|
|
|
socket_address:
|
|
|
|
address: authelia-backend
|
|
|
|
port_value: 9091
|
|
|
|
metadata:
|
|
|
|
filter_metadata:
|
|
|
|
envoy.transport_socket_match:
|
|
|
|
enableTLS: true
|
|
|
|
- name: authelia-backend
|
|
|
|
connect_timeout: 0.25s
|
|
|
|
type: LOGICAL_DNS
|
|
|
|
dns_lookup_family: V4_ONLY
|
|
|
|
lb_policy: ROUND_ROBIN
|
|
|
|
load_assignment:
|
|
|
|
cluster_name: authelia-backend
|
|
|
|
endpoints:
|
|
|
|
- lb_endpoints:
|
|
|
|
- endpoint:
|
|
|
|
address:
|
|
|
|
socket_address:
|
|
|
|
address: authelia-backend
|
|
|
|
port_value: 9091
|
|
|
|
transport_socket:
|
|
|
|
name: envoy.transport_sockets.tls
|
|
|
|
typed_config:
|
|
|
|
"@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext
|
|
|
|
common_tls_context: {}
|
|
|
|
- name: smtp
|
|
|
|
connect_timeout: 0.25s
|
|
|
|
type: LOGICAL_DNS
|
|
|
|
dns_lookup_family: V4_ONLY
|
|
|
|
lb_policy: ROUND_ROBIN
|
|
|
|
load_assignment:
|
|
|
|
cluster_name: smtp
|
|
|
|
endpoints:
|
|
|
|
- lb_endpoints:
|
|
|
|
- endpoint:
|
|
|
|
address:
|
|
|
|
socket_address:
|
|
|
|
address: smtp
|
|
|
|
port_value: 1080
|
|
|
|
- name: httpbin
|
|
|
|
connect_timeout: 0.25s
|
|
|
|
type: LOGICAL_DNS
|
|
|
|
dns_lookup_family: V4_ONLY
|
|
|
|
lb_policy: ROUND_ROBIN
|
|
|
|
load_assignment:
|
|
|
|
cluster_name: httpbin
|
|
|
|
endpoints:
|
|
|
|
- lb_endpoints:
|
|
|
|
- endpoint:
|
|
|
|
address:
|
|
|
|
socket_address:
|
|
|
|
address: httpbin
|
|
|
|
port_value: 8000
|
|
|
|
- name: nginx-backend
|
|
|
|
connect_timeout: 0.25s
|
|
|
|
type: LOGICAL_DNS
|
|
|
|
dns_lookup_family: V4_ONLY
|
|
|
|
lb_policy: ROUND_ROBIN
|
|
|
|
load_assignment:
|
|
|
|
cluster_name: nginx-backend
|
|
|
|
endpoints:
|
|
|
|
- lb_endpoints:
|
|
|
|
- endpoint:
|
|
|
|
address:
|
|
|
|
socket_address:
|
|
|
|
address: nginx-backend
|
|
|
|
port_value: 80
|
|
|
|
...
|