Configuration cleanup
This commit is contained in:
29
traefik/config/network.yaml
Normal file
29
traefik/config/network.yaml
Normal file
@@ -0,0 +1,29 @@
|
||||
# This file contains routing rules for netwok services that are not running on the same host as traefik
|
||||
|
||||
http:
|
||||
services:
|
||||
pfsense:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://192.168.0.1:80
|
||||
proxmox:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://192.168.0.10:8006
|
||||
|
||||
routers:
|
||||
pfsense:
|
||||
service: pfsense
|
||||
rule: Host(`pfsense.{{ env "PRIVATE_DOMAIN" }}`)
|
||||
middlewares:
|
||||
- auth
|
||||
tls:
|
||||
certResolver: le
|
||||
proxmox:
|
||||
service: proxmox
|
||||
rule: Host(`proxmox.{{ env "PRIVATE_DOMAIN" }}`)
|
||||
middlewares:
|
||||
- auth
|
||||
tls:
|
||||
certResolver: le
|
||||
|
||||
35
traefik/config/security.yaml
Normal file
35
traefik/config/security.yaml
Normal file
@@ -0,0 +1,35 @@
|
||||
# This file contains services for security and authorization
|
||||
|
||||
http:
|
||||
services:
|
||||
http-catchall:
|
||||
# A dummy service for the http-catchall rule
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://dummy-url
|
||||
|
||||
routers:
|
||||
http-catchall:
|
||||
# Catch all requests to the http entrypoint and redirect them to https
|
||||
service: http-catchall
|
||||
rule: hostregexp(`{host:.+}`)
|
||||
entrypoint: web
|
||||
middlewares:
|
||||
- redir
|
||||
|
||||
middlewares:
|
||||
redir:
|
||||
# Redirect to https
|
||||
redirectScheme:
|
||||
scheme: https
|
||||
permanent: true
|
||||
|
||||
auth:
|
||||
# Go through authelia for authorization
|
||||
forwardAuth:
|
||||
address: http://authelia:9091/api/verify?rd=https://auth.{{ env "PRIVATE_DOMAIN" }}/%23/
|
||||
trustForwardHeader: true
|
||||
authResponseHeaders:
|
||||
- X-Forwarded-User
|
||||
insecureSkipVerify: true
|
||||
|
||||
100
traefik/tls.yaml
100
traefik/tls.yaml
@@ -1,100 +0,0 @@
|
||||
http:
|
||||
middlewares:
|
||||
redir:
|
||||
redirectScheme:
|
||||
scheme: https
|
||||
permanent: true
|
||||
auth:
|
||||
forwardAuth:
|
||||
address: http://authelia:9091/api/verify?rd=https://auth.{{ env "PRIVATE_DOMAIN" }}/%23/
|
||||
trustForwardHeader: true
|
||||
authResponseHeaders:
|
||||
- X-Forwarded-User
|
||||
insecureSkipVerify: true
|
||||
|
||||
services:
|
||||
hass:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://192.168.0.10:8123
|
||||
plex:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://192.168.0.10:32400
|
||||
portainer:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://192.168.0.10:9000
|
||||
deconz:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://192.168.0.10:8082
|
||||
proxmox:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://192.168.0.10:8006
|
||||
nextcloud:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://192.168.0.10:8083
|
||||
# client_max_body_size 10G
|
||||
# client_body_buffer_size 400M
|
||||
# proxy_hide_header Content-Security-Policy
|
||||
# proxy_hide_header X-Frame-Options
|
||||
keeweb:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://192.168.0.10:8084
|
||||
grafana:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://192.168.0.10:3000
|
||||
|
||||
routers:
|
||||
hass:
|
||||
service: hass
|
||||
rule: Host(`avagen.{{ env "PRIVATE_DOMAIN" }}`)
|
||||
tls:
|
||||
certResolver: le
|
||||
plex:
|
||||
service: plex
|
||||
rule: Host(`plex.{{ env "PRIVATE_DOMAIN" }}`)
|
||||
tls:
|
||||
certResolver: le
|
||||
portainer:
|
||||
service: portainer
|
||||
rule: Host(`portainer.{{ env "PRIVATE_DOMAIN" }}`)
|
||||
middlewares:
|
||||
- auth
|
||||
tls:
|
||||
certResolver: le
|
||||
deconz:
|
||||
service: deconz
|
||||
rule: Host(`deconz.{{ env "PRIVATE_DOMAIN" }}`)
|
||||
middlewares:
|
||||
- auth
|
||||
tls:
|
||||
certResolver: le
|
||||
proxmox:
|
||||
service: proxmox
|
||||
rule: Host(`proxmox.{{ env "PRIVATE_DOMAIN" }}`)
|
||||
middlewares:
|
||||
- auth
|
||||
tls:
|
||||
certResolver: le
|
||||
cloud:
|
||||
service: nextcloud
|
||||
rule: Host(`cloud.{{ env "PRIVATE_DOMAIN" }}`)
|
||||
tls:
|
||||
certResolver: le
|
||||
pwd:
|
||||
service: keeweb
|
||||
rule: Host(`pwd.{{ env "PRIVATE_DOMAIN" }}`)
|
||||
tls:
|
||||
certResolver: le
|
||||
grafana:
|
||||
service: grafana
|
||||
rule: Host(`grafana.{{ env "PRIVATE_DOMAIN" }}`)
|
||||
tls:
|
||||
certResolver: le
|
||||
|
||||
@@ -3,7 +3,7 @@ api:
|
||||
|
||||
providers:
|
||||
file:
|
||||
filename: /data/tls.yaml
|
||||
directory: /data/config
|
||||
docker:
|
||||
exposedByDefault: false
|
||||
|
||||
|
||||
Reference in New Issue
Block a user