Brute-force obmedzovanie v Nextcloud AIO

Riešenie problému s brute-force obmedzovaním v Nextcloud AIO

Popis problému

Po aktualizácii Nextcloud AIO na verziu 10.6.1 sa v administrátorských nastaveniach môže zobraziť nasledovné chybové hlásenie:

Your remote address was identified as “192.168.1.157” and is brute-force throttled at the moment slowing down the performance of various requests. If the remote address is not your address this can be an indication that a proxy is not configured correctly. For more details see the documentation :arrow_upper_right:.

Toto hlásenie znamená, že Nextcloud identifikoval IP adresu 192.168.1.157 ako potenciálnu hrozbu a aplikuje na ňu obmedzenia s cieľom zabrániť možnému brute-force útoku.

V skutočnosti však môže ísť o IP adresu reverzného proxy servera (napr. Nginx Proxy Manager), ktorý zabezpečuje smerovanie komunikácie k Nextcloud AIO. Ak táto adresa nie je uvedená v zozname dôveryhodných proxy (trusted_proxies), Nextcloud ju považuje za nedôveryhodnú a aplikuje na ňu obmedzenia.

Tento problém sa prejavuje znížením výkonu rôznych požiadaviek, ako sú napríklad pomalé načítavanie stránok alebo dlhšia odozva pri prihlásení.

Riešenie

1. Prihlásenie cez SSH

Najskôr sa prihláste na server, kde beží Nextcloud AIO:

ssh používateľ@ip_adresa_servera

(Nahradiť „používateľ“ a „ip_adresa_servera“ podľa vlastnej konfigurácie.)

2. Spustenie Nextcloud kontajnera s právami root

Ak je Nextcloud AIO spustený v Docker kontajneri, zadajte:

sudo docker exec -u 0 -it nextcloud-aio-nextcloud /bin/bash

Týmto sa dostanete do interaktívneho prostredia kontajnera ako root používateľ.

3. Úprava konfigurácie Nextcloudu

Otvorte konfiguračný súbor config.php:

vi config/config.php

(Alternatívne môžete použiť nano config/config.php.)

4. Pridanie IP adresy proxy servera do dôveryhodných proxy

V súbore vyhľadajte blok:

'trusted_proxies' =>
  array (
    0 => '127.0.0.1',
    1 => '::1',
    10 => '172.21.0.0/16',
  ),

Do tohto poľa pridajte IP adresu vášho Nginx Proxy servera (napr. 192.168.1.157):

'trusted_proxies' =>
  array (
    0 => '127.0.0.1',
    1 => '::1',
    2 => '192.168.1.157',
    10 => '172.21.0.0/16',
  ),

Uložte a zatvorte súbor (:x vo Vime, alebo Ctrl + X, Y, Enter v Nano).

5. Ukončenie kontajnera a reštart servera

Ukončite editáciu a ukončite kontajner:

exit

Následne reštartujte server alebo Docker kontajnery, aby sa zmeny prejavili:

sudo reboot

(Ak nechcete reštartovať celý server, môžete reštartovať iba Docker kontajner Nextcloudu.)


Po vykonaní týchto krokov by mal Nextcloud správne identifikovať proxy server ako dôveryhodný a prestane aplikovať brute-force obmedzenia na jeho IP adresu.