- /Security/Samba.md - /docs/01-hardware.md - /docs/02-hypervisor.md - /docs/03-vms-lxcs.md - /docs/06-services.md - /docs/05-samba.md.md - /docs/07-proxy-ssl.md - /docs/04-network.md - /README.md
3.4 KiB
3.4 KiB
07. Проксирование и SSL (Nginx Proxy Manager)
Nginx Proxy Manager (NPM) работает на хосте gateway (192.168.1.201) в Docker-контейнере. Он является единой точкой входа для всех внешних HTTPS-запросов к доменам *.zailon.ru.
Конфигурация NPM
- Версия: jc21/nginx-proxy-manager:latest (образ)
- Порты: 80 (HTTP), 443 (HTTPS), 81 (админка)
- Хранилище данных:
/opt/npm/data,/opt/npm/letsencrypt
Проксируемые домены
| Домен | Назначение | Бэкенд | SSL (Let's Encrypt) |
|---|---|---|---|
| ab.zailon.ru | Audiobookshelf | http://192.168.1.203:45132 | ✅ |
| book.zailon.ru | BookStack | http://192.168.1.202:45133 | ✅ |
| bw.zailon.ru | Bitwarden | http://192.168.1.202:45131 | ✅ |
| chat.zailon.ru | Snikket (XMPP) | https://192.168.1.206:8443 | ✅ |
| cloud.zailon.ru | Nextcloud | http://192.168.1.213:45131 | ✅ |
| cook.zailon.ru | Mealie | http://192.168.1.202:45132 | ✅ |
| git.zailon.ru | GitLab | http://192.168.1.209:45130 | ✅ |
| jellyfin.zailon.ru | Jellyfin | http://192.168.1.203:45131 | ✅ |
| mnemozailon.ru | BookStack (альт) | http://192.168.1.202:45133 | ✅ |
| mon.zailon.ru | Grafana | http://192.168.1.208:45132 | ✅ |
| music.zailon.ru | Ampache | http://192.168.1.203:45132 | ✅ |
| nc.zailon.ru | Nextcloud (ВМ) | https://192.168.1.205:443 | ✅ |
| olimp.zailon.ru | Heimdall | http://192.168.1.201:45131 | ✅ |
| oracul.zailon.ru | MeshCentral | http://192.168.1.208:45131 | ✅ |
| photo.zailon.ru | Immich | http://192.168.1.204:45131 | ✅ |
| qb.zailon.ru | qBittorrent | http://192.168.1.211:8080 | ✅ (Offline) |
SSL-сертификаты
Все сертификаты выдаются Let's Encrypt через NPM автоматически. Для каждого домена настроен:
- Провайдер: Let's Encrypt
- Срок действия: 90 дней, автоматическое продление
- Тип: Single domain (все домены отдельные)
Настройки безопасности
Рекомендуемые заголовки для каждого прокси
В интерфейсе NPM для каждого прокси на вкладке "Advanced" следует добавить:
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;
add_header X-Content-Type-Options nosniff always;
add_header X-Frame-Options SAMEORIGIN always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Permissions-Policy "geolocation=(), microphone=(), camera=()" always;