Fail2ban na prehodu VPN: kaj odpravi in kaj ne
Fail2ban blokira vire, ki spodletijo v vaših dnevnikih, in to je vse. Ali pomaga prehodu VPN, je odvisno od prijavne površine in od tega, kdo si deli naslov.
Vsaka izpostavljena storitev dobi isti nasvet: nanjo postavite fail2ban. Za prehod VPN ta nasvet ni niti napačen niti zadosten, in prav obravnavanje kot kljukice pri utrjevanju privede do tega, da ljudje ostanejo z ječo (jail), ki ne blokira nič koristnega. Fail2ban bere zapise o neuspehih, na katere ga usmerite, in prosi backend za izvajanje, naj blokira ustrezne vire. Vsa njegova vrednost je odvisna od tega, katera površina preverjanja je ustvarila zapis, ali je naslov v njem pravi odjemalec in kaj se zgodi z vsemi drugimi za tem naslovom.
Kaj je fail2ban mehansko
Filter ujema vrstice v dnevniku, ječa šteje ujemanja po viru, dejanje pa uporabi blokado prek požarnega zidu kot backend. Trije gibljivi deli, in vsak je lahko napačen neodvisno.
Nobeden od treh se ne dotakne poti preverjanja: fail2ban se odziva na dokaze po dejstvu in nikoli sam ne preveri poverilnice. Ječa lahko zato deluje čisto, medtem ko površina, ki jo imenuje, ostaja natanko tako izpostavljena kot prej.
Poslušalec tunela ni prijavni obrazec
Poslušalec OpenVPN, zaščiten s tls-auth ali tls-crypt, zavrže pakete brez zaščite krmilnega kanala, preden se začne običajna obdelava TLS. Skenirnik, ki nikoli nima ključa, ne ustvari ničesar, kar bi vaš filter lahko preštel. Preverjanje s potrdilom doda še ena vrata, ker ni gesla za ugibanje. Projekt Fail2ban dokumentira splošen model, ki ga vodijo dnevniki, in splošen filter VPN ne spremeni nepreverjenega paketa v pomemben dogodek neuspeha.
Če prehod sprejema samo potrdila, zgodba o brute-force, pred katero se branite, na teh vratih morda sploh ne obstaja.
Katero površino torej ščitite?
Isti gostitelj pogosto izpostavi tri različne stvari: poslušalca tunela, portal za profile odjemalcev ali samopostrežbo in skrbniško stran. Portal in skrbniška stran imata obrazce za geslo in ustvarjata vrstice dnevnika, ki jih filter lahko prešteje. Tunel morda ustvarja le napake rokovanja, ki pomenijo nekaj povsem drugega. Ječo uskladite s površino, ne z imenom izdelka.
Ječa, ki spremlja napačen dnevnik, je slabša od nobene, ker ustvarja zaupanje brez pokritosti. Usmerite prijavni filter na napake rokovanja tunela in števec se bo sprožil pri skenirnikih, ki nikoli niso imeli ključa, medtem ko napad z geslom na portal ostane nepreštet. Preberite vrstico dnevnika, ki jo filter ujame, preden zaupate številu ječe.
Pripis vira je šibek člen
Blokada je le toliko dobra, kolikor dober je naslov, na katerega meri. Ko storitev stoji za lokalnim obratnim proxyjem, je naslov odjemalca v dnevniku morda proxy, in blokiranje tega odstrani vse. Zaupanje v posredovano glavo z nezanesljivega vira da napadalcu možnost blokiranja poljubnih naslovov. Pri UDP je mogoče ponarediti izvorne naslove, zato si njihovo štetje zasluži večjo skrbnost kot štetje dokončane prijave TCP.
Zapišite metodo pripisa vira v README ječe, ker posredovana glava z nezanesljivega skoka spremeni blokado v orožje.
Stranski strošek so drugi ljudje
Več zaposlenih za enim pisarniškim NAT si deli naslov, zato lahko eno zastarelo shranjeno geslo zaklene vso pisarno, ko je prag presežen. Dnevnik pokaže en vir in en račun, ki sta spodletela, ne izpada po vsej pisarni.
Kratke blokade in zmerni pragovi to zmanjšajo, dokumentirana pot za odblokiranje pa zmanjša obremenitev podpore, ko se to vseeno zgodi. Naslov je grobi signal, ne identiteta, in oseba, ki odpre zahtevek, bo opisala izpad, ne praga.
Kdaj ga uvesti in kdaj popraviti kaj drugega
Uvedite ga, ko na površini, ki jo nadzorujete, obstaja resnična, pripisljiva in ponavljajoča se spletna prijavna neuspešnost in ko backend za izvajanje to površino res pokriva. Popravite kaj drugega, ko je težava šibka politika poverilnic, skrbniška stran, izpostavljena internetu, ali račun, ki se uspešno prijavi, ker je bil kompromitiran. Blokada ne more popraviti ničesar od tega in ne more vsrkati prometa, ki je že nasičil vašo nadrejeno povezavo. Ta zadnja težava sodi višje, k nekomu, ki lahko filtrira, preden paketi pridejo do vas.
Vsako ječo držite vezano na eno površino, pregledujte lažne pozitivne rezultate in merite preprečeno delo preverjanja, ne števila blokiranih naslovov.