Zablokovať adresu a uzamknúť účet sú dva rôzne mechanizmy a zlyhávajú opačným smerom. Zákaz adresy zastaví jeden zdroj a cieľový účet zostane dostupný odinakiaľ; zámok účtu zastaví túto identitu všade, aj na vlastnom notebooku používateľa.

Pri VPN, ktorá deleguje overovanie na PAM, je počítadlom to, kam sa dostane zásobník PAM, nie to, čo zalogoval listener.

Dve počítadlá, dve rôzne obete

Obmedzovač rýchlosti sleduje zdroj a pýta sa, koľko pokusov z neho nedávno prišlo. Zámok sleduje identitu a pýta sa, koľko zlyhaní účet nazbieral. Prvý chráni dostupnosť, druhý prihlasovacie údaje; jedno nenahrádza druhé.

Preto veta blokujeme IP po piatich zlyhaniach nie je odpoveďou na správu o dopĺňaní prihlasovacích údajov. Útočník strieda zdroje, každý dostane málo pokusov a účet sa nikdy nepočíta. Naopak zámok bez kontroly zdrojov dovolí útočníkovi držať účet uzamknutý neobmedzene tým, že zámerne zlyháva.

Obe opatrenia majú aj rôzny príbeh obnovy. Zákaz adresy vyprší podľa časovača, nad ktorým nikto nemusí premýšľať; zámok účtu môže potrebovať správcu, dokumentovanú čakaciu dobu alebo samoobslužné obnovenie.

Nájdite úložisko, ktoré už počítadlo vlastní

Skôr než niečo pridáte, zistite, či už úložisko zlyhaní existuje. Miestny účet Linuxu, adresárová služba a externý poskytovateľ identity si každý vedú vlastný počet a modul PAM pred nimi vytvára druhý namiesto toho, aby rozšíril prvý.

grep -rnE 'faillock|pam_tally|pam_unix' /etc/pam.d/
ls -l /etc/pam.d/ | head -20

Prečítajte súbor služby, ktorý VPN skutočne uvádza, a sledujte jeho riadky vkladania. V mnohých distribúciách služba VPN vkladá spoločný súbor, takže počet, ktorý ladíte, platí aj pre SSH a miestne prihlásenia.

Ak adresár už vynucuje zámok, užitočná otázka je, ako sa konverzácia PAM k tomu rozhodnutiu dostane a ako to VPN hlási. Miestny počet navrch sa nestane počítadlom adresára a obe politiky sa môžu rozísť v tom, kedy sa účet odomkne.

pam_faillock má tri pozície volania, nie jednu

Modul oddeľuje tri operácie, ktoré jedna skopírovaná riadka zvyčajne stiera: kontrolu, či je účet už uzamknutý, záznam zlyhania a vymazanie histórie po úspechu.

Práve tu migrácia zo staršieho počítacieho modulu zvyčajne chybuje. Skopírovať riadok z funkčného príkladu pam_tally2 do zásobníka pam_faillock nie je premenovanie; dokumentované nastavenie je iné a volanie na nesprávnom mieste môže zaznamenávať zlyhania bez toho, aby ich kedy skontrolovalo.

faillock --user alice
faillock --user alice --reset

Inspekčný nástroj je najrýchlejší spôsob, ako zistiť, či je počítadlo skutočné: vypíše zaznamenané zlyhania účtu a dokáže ich vymazať. Ak kontrolované zlyhanie tento výstup nezmení, pozícia volania je nesprávna.

Vlastný názov služby nie je izolácia

Vlastný súbor služby PAM pre VPN zviditeľní zamýšľanú politiku, ale sám účinok neobmedzí. Akékoľvek vloženie spoločného súboru prinesie, čo ten súbor robí, vrátane počítadiel platných pre celý systém.

Jasne rozhodnite, či má zámok pokrývať len prístup cez VPN, alebo každú službu, ktorá overuje ten istý účet. Obe odpovede sú obhájiteľné; chybou je veriť, že ste zvolili jedno, kým zásobník vykonáva druhé.

Potom započítajte cenu. Zámok môže vyvolať útočník a trpí používateľ, ktorému účet patrí. Prah, čakacia doba aj administratívna cesta obnovy sú súčasťou politiky a obnova nesmie závisieť od prenastavenia VPN počas incidentu.

Prijmite postupnosť, nie jedno odmietnutie

Testujte s určenými identitami podľa schváleného plánu a testujte reťaz, nie jednu udalosť: platný účet sa overí, zámerne nesprávne heslo posunie počítadlo, nastavený zámok vstúpi do platnosti a dokumentovaná obnova vráti prístup.

faillock --user test-vpn-01
journalctl -u openvpn-server@lab -n 30 --no-pager | grep -i 'auth\|pam'

Správanie pri úspechu kontrolujte rovnako pozorne ako pri zlyhaní. Ak úspešné prihlásenie históriu nevymaže, účet sa uzamkne po pomalom hromadení bežných chýb. Ak vymaže všetko zo všetkých služieb, počítadlo je slabšie, než politika tvrdí.

Nakoniec zastavte klientov bez dohľadu, skôr než vyhlásite víťazstvo. Uložené prihlasovacie údaje, ktoré na pozadí opakujú pokusy, znovu vytvoria zlyhania minúty po obnove a účet znovu uzamknú. Obmedzenie rýchlosti podľa zdroja môže zostať ako doplnková kontrola, ale nie je politikou účtu.

Súvisiace články