Compare commits
4 commits
9389af700d
...
75be32d8d0
| Author | SHA1 | Date | |
|---|---|---|---|
| 75be32d8d0 | |||
| 495b61c1d1 | |||
| b94c066996 | |||
| d7f75c04da |
7 changed files with 123 additions and 71 deletions
34
.gitignore
vendored
34
.gitignore
vendored
|
|
@ -14,3 +14,37 @@
|
||||||
/.idea/
|
/.idea/
|
||||||
# Ansible
|
# Ansible
|
||||||
/collections/ansible_collections/
|
/collections/ansible_collections/
|
||||||
|
/.vagrant/bundler/global.sol
|
||||||
|
/.vagrant/machines/backend/libvirt/action_provision
|
||||||
|
/.vagrant/machines/backend/libvirt/box_meta
|
||||||
|
/.vagrant/machines/backend/libvirt/created_networks
|
||||||
|
/.vagrant/machines/backend/libvirt/creator_uid
|
||||||
|
/.vagrant/machines/backend/libvirt/id
|
||||||
|
/.vagrant/machines/backend/libvirt/index_uuid
|
||||||
|
/.vagrant/machines/backend/libvirt/private_key
|
||||||
|
/.vagrant/machines/backend/libvirt/synced_folders
|
||||||
|
/.vagrant/machines/backend/libvirt/vagrant_cwd
|
||||||
|
/.vagrant/machines/backend2/libvirt/action_provision
|
||||||
|
/.vagrant/machines/backend2/libvirt/box_meta
|
||||||
|
/.vagrant/machines/backend2/libvirt/created_networks
|
||||||
|
/.vagrant/machines/backend2/libvirt/creator_uid
|
||||||
|
/.vagrant/machines/backend2/libvirt/id
|
||||||
|
/.vagrant/machines/backend2/libvirt/index_uuid
|
||||||
|
/.vagrant/machines/backend2/libvirt/private_key
|
||||||
|
/.vagrant/machines/backend2/libvirt/synced_folders
|
||||||
|
/.vagrant/machines/backend2/libvirt/vagrant_cwd
|
||||||
|
/.vagrant/machines/dmz/libvirt/logs/ssh-forwarding-*_8080-192.168.121.139_80.log
|
||||||
|
/.vagrant/machines/dmz/libvirt/logs/ssh-forwarding-*_8443-192.168.121.139_443.log
|
||||||
|
/.vagrant/machines/dmz/libvirt/pids/ssh_8080.pid
|
||||||
|
/.vagrant/machines/dmz/libvirt/pids/ssh_8443.pid
|
||||||
|
/.vagrant/machines/dmz/libvirt/action_provision
|
||||||
|
/.vagrant/machines/dmz/libvirt/box_meta
|
||||||
|
/.vagrant/machines/dmz/libvirt/created_networks
|
||||||
|
/.vagrant/machines/dmz/libvirt/creator_uid
|
||||||
|
/.vagrant/machines/dmz/libvirt/id
|
||||||
|
/.vagrant/machines/dmz/libvirt/index_uuid
|
||||||
|
/.vagrant/machines/dmz/libvirt/private_key
|
||||||
|
/.vagrant/machines/dmz/libvirt/synced_folders
|
||||||
|
/.vagrant/machines/dmz/libvirt/vagrant_cwd
|
||||||
|
/.vagrant/provisioners/ansible/inventory/vagrant_ansible_inventory
|
||||||
|
/.vagrant/rgloader/loader.rb
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,8 @@
|
||||||
# These use Docker provider for local service discovery
|
# These use Docker provider for local service discovery
|
||||||
|
|
||||||
traefik_mode: backend
|
traefik_mode: backend
|
||||||
use_ssl: true
|
traefik_use_ssl: true
|
||||||
cert_mode: "selfsigned"
|
traefik_cert_mode: "selfsigned"
|
||||||
enable_dashboard: true
|
traefik_enable_dashboard: true
|
||||||
log_level: DEBUG
|
traefik_log_level: DEBUG
|
||||||
traefik_network: proxy
|
traefik_network: proxy
|
||||||
|
|
@ -3,23 +3,23 @@
|
||||||
# These are public-facing proxies that route traffic to backend servers
|
# These are public-facing proxies that route traffic to backend servers
|
||||||
|
|
||||||
traefik_mode: dmz
|
traefik_mode: dmz
|
||||||
use_ssl: true
|
traefik_use_ssl: true
|
||||||
cert_mode: "selfsigned" # Use 'acme' for production
|
traefik_cert_mode: "selfsigned" # Use 'acme' for production
|
||||||
enable_dashboard: true
|
traefik_enable_dashboard: true
|
||||||
dashboard_domain: "traefik.dmz.local.test"
|
traefik_dashboard_domain: "traefik.dmz.local.test"
|
||||||
log_level: DEBUG
|
traefik_log_level: DEBUG
|
||||||
traefik_network: proxy
|
traefik_network: proxy
|
||||||
|
|
||||||
# Backend servers to proxy (if empty, proxies to all backend_servers)
|
# Backend servers to proxy (if empty, proxies to all backend_servers)
|
||||||
# This allows multiple DMZ proxies to handle different backend servers
|
# This allows multiple DMZ proxies to handle different backend servers
|
||||||
# backend_servers_to_proxy:
|
# traefik_backend_servers_to_proxy:
|
||||||
# - backend1
|
# - backend1
|
||||||
# - backend2
|
# - backend2
|
||||||
|
|
||||||
# ACME configuration (uncomment for production with cert_mode: acme)
|
# ACME configuration (uncomment for production with traefik_cert_mode: acme)
|
||||||
# ssl_email: "admin@example.com"
|
# traefik_ssl_email: "admin@example.com"
|
||||||
# ssl_cert_resolver: "dns"
|
# traefik_ssl_cert_resolver: "dns"
|
||||||
# acme_dns_zone: "digitalboard._acme.digitalboard.ch."
|
# traefik_acme_dns_zone: "digitalboard._acme.digitalboard.ch."
|
||||||
# acme_dns_nameserver: "192.168.1.1:53"
|
# traefik_acme_dns_nameserver: "192.168.1.1:53"
|
||||||
# acme_tsig_key: "your-tsig-key-name"
|
# traefik_acme_tsig_key: "your-tsig-key-name"
|
||||||
# acme_tsig_secret: "your-tsig-secret"
|
# traefik_acme_tsig_secret: "your-tsig-secret"
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
# Services to be exposed through the DMZ reverse proxy
|
# Services to be exposed through the DMZ reverse proxy
|
||||||
traefik_services:
|
traefik_dmz_exposed_services:
|
||||||
- name: httpbin
|
- name: httpbin
|
||||||
domain: httpbin.local.test
|
domain: httpbin.local.test
|
||||||
port: 443
|
port: 443
|
||||||
|
|
@ -39,7 +39,7 @@ traefik_services:
|
||||||
# port: 80
|
# port: 80
|
||||||
# protocol: http
|
# protocol: http
|
||||||
|
|
||||||
use_ssl: false # disable SSL redirect for vagrant
|
traefik_use_ssl: false # disable SSL redirect for vagrant
|
||||||
|
|
||||||
use_ssl_dashboard: true # still use SSL for dashboard
|
traefik_use_ssl_dashboard: true # still use SSL for dashboard
|
||||||
dashboard_domain: "traefik.backend.local.test"
|
traefik_dashboard_domain: "traefik.backend.local.test"
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
# Services to be exposed through the DMZ reverse proxy
|
# Services to be exposed through the DMZ reverse proxy
|
||||||
traefik_services:
|
traefik_dmz_exposed_services:
|
||||||
- name: httpbin-srv2
|
- name: httpbin-srv2
|
||||||
domain: "{{ httpbin_domain }}"
|
domain: "{{ httpbin_domain }}"
|
||||||
port: 443
|
port: 443
|
||||||
protocol: https
|
protocol: https
|
||||||
|
|
||||||
dashboard_domain: "traefik.backend2.local.test"
|
traefik_dashboard_domain: "traefik.backend2.local.test"
|
||||||
|
|
@ -1,48 +0,0 @@
|
||||||
# This file defines the group structure for vagrant VMs
|
|
||||||
# Fixed IPs are defined in the Vagrantfile
|
|
||||||
# Additional host-specific variables should go in host_vars/
|
|
||||||
# Group-specific variables should go in group_vars/
|
|
||||||
|
|
||||||
[all_servers]
|
|
||||||
dmz ansible_host=192.168.56.10 ansible_ssh_private_key_file=.vagrant/machines/dmz/libvirt/private_key ansible_user=vagrant
|
|
||||||
backend ansible_host=192.168.56.11 ansible_ssh_private_key_file=.vagrant/machines/backend/libvirt/private_key ansible_user=vagrant
|
|
||||||
backend2 ansible_host=192.168.56.12 ansible_ssh_private_key_file=.vagrant/machines/backend2/libvirt/private_key ansible_user=vagrant
|
|
||||||
|
|
||||||
# Backend servers that host application services
|
|
||||||
[backend_servers]
|
|
||||||
backend
|
|
||||||
backend2
|
|
||||||
|
|
||||||
# Reverse proxy servers in DMZ (public-facing, file provider mode)
|
|
||||||
[traefik_servers_dmz]
|
|
||||||
dmz
|
|
||||||
|
|
||||||
# Reverse proxy servers on backend (docker provider mode)
|
|
||||||
[traefik_servers_backend]
|
|
||||||
backend
|
|
||||||
backend2
|
|
||||||
|
|
||||||
# All reverse proxy servers
|
|
||||||
[traefik_servers:children]
|
|
||||||
traefik_servers_dmz
|
|
||||||
traefik_servers_backend
|
|
||||||
|
|
||||||
# Application servers
|
|
||||||
[httpbin_servers]
|
|
||||||
backend
|
|
||||||
backend2
|
|
||||||
|
|
||||||
[keycloak_servers]
|
|
||||||
backend
|
|
||||||
|
|
||||||
[authentik_servers]
|
|
||||||
backend
|
|
||||||
|
|
||||||
[garage_servers]
|
|
||||||
backend
|
|
||||||
|
|
||||||
[nextcloud_servers]
|
|
||||||
backend
|
|
||||||
|
|
||||||
[homarr_servers]
|
|
||||||
backend
|
|
||||||
66
inventories/vagrant/hosts.yml
Normal file
66
inventories/vagrant/hosts.yml
Normal file
|
|
@ -0,0 +1,66 @@
|
||||||
|
---
|
||||||
|
all:
|
||||||
|
children:
|
||||||
|
all_servers:
|
||||||
|
hosts:
|
||||||
|
dmz:
|
||||||
|
ansible_host: 192.168.56.10
|
||||||
|
ansible_ssh_private_key_file: .vagrant/machines/dmz/libvirt/private_key
|
||||||
|
ansible_user: vagrant
|
||||||
|
backend:
|
||||||
|
ansible_host: 192.168.56.11
|
||||||
|
ansible_ssh_private_key_file: .vagrant/machines/backend/libvirt/private_key
|
||||||
|
ansible_user: vagrant
|
||||||
|
backend2:
|
||||||
|
ansible_host: 192.168.56.12
|
||||||
|
ansible_ssh_private_key_file: .vagrant/machines/backend2/libvirt/private_key
|
||||||
|
ansible_user: vagrant
|
||||||
|
|
||||||
|
# Backend servers that host application services
|
||||||
|
backend_servers:
|
||||||
|
hosts:
|
||||||
|
backend:
|
||||||
|
backend2:
|
||||||
|
|
||||||
|
# Reverse proxy servers
|
||||||
|
traefik_servers:
|
||||||
|
children:
|
||||||
|
traefik_servers_dmz:
|
||||||
|
traefik_servers_backend:
|
||||||
|
|
||||||
|
# DMZ reverse proxy (public-facing, file provider mode)
|
||||||
|
traefik_servers_dmz:
|
||||||
|
hosts:
|
||||||
|
dmz:
|
||||||
|
|
||||||
|
# Backend reverse proxy (docker provider mode)
|
||||||
|
traefik_servers_backend:
|
||||||
|
hosts:
|
||||||
|
backend:
|
||||||
|
backend2:
|
||||||
|
|
||||||
|
# Application servers
|
||||||
|
httpbin_servers:
|
||||||
|
hosts:
|
||||||
|
backend:
|
||||||
|
backend2:
|
||||||
|
|
||||||
|
keycloak_servers:
|
||||||
|
hosts:
|
||||||
|
backend:
|
||||||
|
|
||||||
|
authentik_servers:
|
||||||
|
hosts:
|
||||||
|
backend:
|
||||||
|
|
||||||
|
garage_servers:
|
||||||
|
hosts:
|
||||||
|
backend:
|
||||||
|
|
||||||
|
nextcloud_servers:
|
||||||
|
hosts:
|
||||||
|
backend:
|
||||||
|
|
||||||
|
homarr_servers:
|
||||||
|
hosts:
|
||||||
|
backend:
|
||||||
Loading…
Add table
Add a link
Reference in a new issue