Доработка безопасности силами кадди,

правка конфигов
This commit is contained in:
2025-08-27 15:33:28 +03:00
parent dbbabb03d9
commit d71d3d08e0
3 changed files with 30 additions and 5 deletions
+22 -1
View File
@@ -26,6 +26,15 @@
caddy hash-password --plaintext 'секрет'
```
Или на python:
```bash
pip install bcrypt
```
```bash
python -c "import bcrypt,sys; print(bcrypt.hashpw(sys.argv[1].encode(), bcrypt.gensalt(rounds=12)).decode())" 'секрет'
```
После изменения файла нужно перезапустить контейнер `caddy`.
## Защита контейнеров
@@ -33,8 +42,20 @@ caddy hash-password --plaintext 'секрет'
Чтобы ограничить доступ к какому-либо сервису, добавьте к контейнеру метку:
```
caddy.import: auth_portal_forwarder
caddy.import: auth_forward
```
и обычные метки для виртуального хоста и `reverse_proxy`. Пример для Portainer уже есть в `docker-compose.yml`.
После авторизации пользователь возвращается к запрошенному сервису.
### Открытие пути для API
Чтобы открыть некий путь без авторизации, добавить лейблы:
```
caddy.handle_path: /api/*
caddy.handle_path.0_reverse_proxy: "{{upstreams 9000}}"
```
и не прописывать им `caddy.import: auth_forward`.
И наоборот, аналогично можно закрыть авторизацией только нужный путь.