Files
proxyserver/pangolin/config/traefik/dynamic_config.yml

102 lines
2.6 KiB
YAML

http:
middlewares:
crowdsec:
plugin:
crowdsec:
clientTrustedIPs:
- 10.0.0.0/8
- 172.16.0.0/12
- 192.168.0.0/16
- 100.89.137.0/20
crowdsecAppsecEnabled: true
crowdsecAppsecFailureBlock: true
crowdsecAppsecHost: crowdsec:7422
crowdsecAppsecUnreachableBlock: true
crowdsecLapiHost: crowdsec:8080
crowdsecLapiKey: h+aTfhMBZ6DY5KLhOVncD2H+7K6izYCBi6I6WTYk/D8
crowdsecLapiScheme: http
crowdsecMode: live
defaultDecisionSeconds: 15
enabled: true
forwardedHeadersTrustedIPs:
- 0.0.0.0/0
httpTimeoutSeconds: 10
logLevel: INFO
updateIntervalSeconds: 15
updateMaxFailure: 0
default-whitelist:
ipWhiteList:
sourceRange:
- 10.0.0.0/8
- 192.168.0.0/16
- 172.16.0.0/12
redirect-to-https:
redirectScheme:
scheme: https
security-headers:
headers:
contentTypeNosniff: true
customFrameOptionsValue: SAMEORIGIN
customResponseHeaders:
Server: ""
X-Forwarded-Proto: https
X-Powered-By: ""
forceSTSHeader: true
hostsProxyHeaders:
- X-Forwarded-Host
referrerPolicy: strict-origin-when-cross-origin
sslProxyHeaders:
X-Forwarded-Proto: https
stsIncludeSubdomains: true
stsPreload: true
stsSeconds: 63072000
routers:
api-router:
entryPoints:
- websecure
middlewares:
- security-headers
rule: Host(`auth.akanealw.com`) && PathPrefix(`/api/v1`)
service: api-service
tls:
certResolver: letsencrypt
main-app-router-redirect:
entryPoints:
- web
middlewares:
- redirect-to-https
rule: Host(`auth.akanealw.com`)
service: next-service
next-router:
entryPoints:
- websecure
middlewares:
- security-headers
rule: Host(`auth.akanealw.com`) && !PathPrefix(`/api/v1`)
service: next-service
tls:
certResolver: letsencrypt
domains:
- main: "akanealw.com"
sans:
- "*.akanealw.com"
ws-router:
entryPoints:
- websecure
middlewares:
- security-headers
rule: Host(`auth.akanealw.com`)
service: api-service
tls:
certResolver: letsencrypt
services:
api-service:
loadBalancer:
servers:
- url: http://pangolin:3000
next-service:
loadBalancer:
servers:
- url: http://pangolin:3002