137 lines
3.0 KiB
YAML
137 lines
3.0 KiB
YAML
defaultTLS: &defaultTLS
|
|
minVersion: VersionTLS13
|
|
cipherSuites:
|
|
- TLS_AES_256_GCM_SHA384
|
|
- TLS_AES_128_GCM_SHA256
|
|
- TLS_CHACHA20_POLY1305_SHA256
|
|
- TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
|
|
- TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
|
|
- TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
|
|
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
|
|
- TLS_FALLBACK_SCSV
|
|
|
|
tls:
|
|
options:
|
|
external:
|
|
<<: *defaultTLS
|
|
|
|
internal:
|
|
clientAuth:
|
|
caFiles:
|
|
- /etc/traefik/com.rskio.ca.crt
|
|
clientAuthType: RequireAndVerifyClientCert
|
|
<<: *defaultTLS
|
|
|
|
http:
|
|
routers:
|
|
stream:
|
|
rule: Host(`stream.rskio.com`)
|
|
service: stream@file
|
|
entryPoints:
|
|
- websecure
|
|
tls:
|
|
options: external@file
|
|
certResolver: rskio_certresolver
|
|
|
|
pihole:
|
|
rule: Host(`dns.rskio.com`)
|
|
service: pihole@file
|
|
entryPoints:
|
|
- websecure
|
|
middlewares:
|
|
- redirect-pihole
|
|
tls:
|
|
options: internal@file
|
|
certResolver: rskio_certresolver
|
|
|
|
network:
|
|
rule: Host(`network.rskio.com`)
|
|
service: network@file
|
|
entryPoints:
|
|
- websecure
|
|
middlewares:
|
|
- secureHeaders
|
|
tls:
|
|
options: internal@file
|
|
certResolver: rskio_certresolver
|
|
|
|
traefik-dashboard:
|
|
rule: Host(`oxy.rskio.com`)
|
|
service: api@internal
|
|
entryPoints:
|
|
- websecure
|
|
middlewares:
|
|
- redirect-dashboard
|
|
tls:
|
|
options: internal@file
|
|
certResolver: rskio_certresolver
|
|
|
|
gitea:
|
|
rule: Host(`git.rskio.com`)
|
|
service: gitea@file
|
|
entryPoints:
|
|
- websecure
|
|
tls:
|
|
options: external@file
|
|
certResolver: rskio_certresolver
|
|
|
|
serversTransports:
|
|
backendIgnoreTLS:
|
|
insecureSkipVerify: true
|
|
|
|
services:
|
|
stream:
|
|
loadBalancer:
|
|
servers:
|
|
- url: "http://192.168.1.179:8096"
|
|
|
|
stage:
|
|
loadBalancer:
|
|
servers:
|
|
- url: "https://192.168.1.25"
|
|
serversTransport: backendIgnoreTLS
|
|
|
|
gitea:
|
|
loadBalancer:
|
|
servers:
|
|
- url: "http://192.168.1.56:9000"
|
|
|
|
pihole:
|
|
loadBalancer:
|
|
servers:
|
|
- url: "http://192.168.1.152:8001"
|
|
|
|
network:
|
|
loadBalancer:
|
|
servers:
|
|
- url: "https://192.168.1.254"
|
|
serversTransport: backendIgnoreTLS
|
|
|
|
core01kvm:
|
|
loadBalancer:
|
|
servers:
|
|
- url: "http://192.168.1.202"
|
|
|
|
middlewares:
|
|
redirect-dashboard:
|
|
redirectRegex:
|
|
regex: "^https?://([^/]+)/?$"
|
|
replacement: "https://${1}/dashboard/"
|
|
permanent: true
|
|
|
|
redirect-pihole:
|
|
redirectRegex:
|
|
regex: "^https?://([^/]+)/?$"
|
|
replacement: "https://${1}/admin/"
|
|
permanent: true
|
|
|
|
secureHeaders:
|
|
headers:
|
|
browserXssFilter: true
|
|
contentTypeNosniff: true
|
|
forceSTSHeader: true
|
|
frameDeny: true
|
|
referrerPolicy: "same-origin"
|
|
sslRedirect: true
|
|
stsSeconds: 31536000
|