Für Rüdiger
This commit is contained in:
parent
241eafb9cd
commit
5defc3d129
1 changed files with 107 additions and 0 deletions
107
Caddy als reverseproxy einrichten.md
Normal file
107
Caddy als reverseproxy einrichten.md
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
# Caddy als reverseproxy einrichten
|
||||
|
||||
# Netzwerk anlegen
|
||||
|
||||
```shellscript
|
||||
docker network create \
|
||||
--driver bridge \
|
||||
--ipv6 \
|
||||
--subnet 172.31.0.0/16 \
|
||||
--subnet fd42:0815:4711:1::/64 \
|
||||
reverseproxy_netz
|
||||
```
|
||||
|
||||
# Verzeichnisse für Caddy und seine Configs anlegen
|
||||
|
||||
```shellscript
|
||||
mkdir -p /srv/docker/caddy/config
|
||||
mkdir -p /srv/docker/caddy/data
|
||||
```
|
||||
|
||||
# docker-compose.yml erstellen
|
||||
|
||||
```yaml
|
||||
services:
|
||||
caddy:
|
||||
image: caddy:latest
|
||||
container_name: caddy
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
- "443:443/udp"
|
||||
volumes:
|
||||
- ./caddy:/etc/caddy/
|
||||
- ./site:/srv
|
||||
- ./caddy_data:/data
|
||||
- ./caddy_config:/config
|
||||
networks:
|
||||
- reverseproxy_netz
|
||||
|
||||
service1:
|
||||
image: dein/service1-image
|
||||
container_name: service1
|
||||
networks:
|
||||
- reverseproxy_netz
|
||||
|
||||
service2:
|
||||
image: dein/service2-image
|
||||
container_name: service2
|
||||
networks:
|
||||
- reverseproxy_netz
|
||||
|
||||
networks:
|
||||
reverseproxy_netz:
|
||||
external: true
|
||||
|
||||
```
|
||||
|
||||
# Caddy Config erstellen
|
||||
|
||||
mit deinem Lieblingseditor legst du die Datei `Caddyfile`im config-Verzeichnis an:
|
||||
|
||||
```shellscript
|
||||
webserver3.fobix.benbex.de {
|
||||
reverse_proxy meinwebserver1:80
|
||||
}
|
||||
|
||||
|
||||
```
|
||||
|
||||
caddy neu starten: `docker compose stop ; docker compose start; docker compse logs -f`
|
||||
|
||||
jetzt wird man beobachten können, wie das Zertifikat erstellt wird.
|
||||
|
||||
|
||||
|
||||
Wenn es einen Container gibt, der "meinwebserver1" heißt, und der auf Port 80 hört (*expose*) dann wird dieser nach kurzer Zeit unter https://webserver3.fobix.benbex.de erreichbar sein.
|
||||
|
||||
## Server mit Basic-Auth schützen
|
||||
|
||||
du kannst einfach
|
||||
|
||||
|
||||
|
||||
```
|
||||
basicauth {
|
||||
test $2a$10$oE4MsIokdJzUpS3p.oHPzuncTzAjISdFhGsd3RKRI3fudScqAW342
|
||||
```
|
||||
|
||||
vor oder nach reverse\_proxy einfügen.
|
||||
|
||||
Der Passwort-Hash ist leicht mit den it-tools (bcrypt) zu erzeugen.
|
||||
|
||||
Danach ist der jeweilige Server geschützt.
|
||||
|
||||
|
||||
|
||||
## IT-Tools
|
||||
|
||||
corentinth/it-tools
|
||||
|
||||
|
||||
|
||||
#
|
||||
|
||||
|
||||
|
||||
Loading…
Add table
Reference in a new issue