Чекає на перевірку спільнотоюПомітив помилку? Допоможи виправити
Зворотний проксі
Як поставити ABM за nginx, Traefik чи Caddy і не зламати вхід.
Важливі три налаштування. Зроби їх правильно, і вхід, вебсокет і збереження працюватимуть.
1. Скажи ABM, хто проксі
Section titled “1. Скажи ABM, хто проксі”Задай у TRUSTED_PROXIES адресу проксі, якомога вужче:
TRUSTED_PROXIES=172.20.0.5Проксі на тому самому хості потребує 127.0.0.1. Тоді ABM довіряє адресі клієнта, яку проксі передає в X-Forwarded-For чи X-Real-IP. Без цього кожен запит із заголовками пересилання мусить проходити вхід. Так зроблено навмисно.
2. Передавай заголовки
Section titled “2. Передавай заголовки”Пересилай оригінальний Host або надсилай X-Forwarded-Host. Для nginx:
proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";Traefik і Caddy надсилають заголовки пересилання за замовчуванням. ABM використовує вебсокет для оновлень у реальному часі, тож проксі має пропускати запити на upgrade.
3. Виріши, хто має входити
Section titled “3. Виріши, хто має входити”- Authentication Required: Enabled змушує входити всіх. Найбезпечніше, якщо проксі публічний.
- Disabled for Local Addresses пропускає вхід для клієнтів, яких ABM вважає локальними. Через довірений проксі це означає клієнта, якого назвав проксі.
- Проксі, який не надсилає заголовків пересилання, робить так, що все виглядає локальним. Вибирай Enabled.
Підтека та домен
Section titled “Підтека та домен”Щоб віддавати ABM за адресою /abm, задай URL Base у General як /abm і перезапусти. Свою публічну адресу вкажи в Application URL.
Якщо збереження падають із cross_origin_rejected, походження (origin) браузера не збігається. Спершу виправ заголовок Host. Якщо не допоможе, додай свій домен у CORS Allowed Domains у Security і перезапусти.
Розмір тіла запиту
Section titled “Розмір тіла запиту”Якщо великі завантаження падають із 413, перевір і ліміт самого проксі, і MAX_REQUEST_BODY_BYTES.
Що пише журнал
Section titled “Що пише журнал”- “carries reverse-proxy headers, but … is not in TRUSTED_PROXIES”: додай адресу.
- “… is in TRUSTED_PROXIES but didn’t name a client address”: налаштуй проксі, щоб він надсилав
X-Forwarded-ForабоX-Real-IP.
Дивись також Безпека та вхід.