SSH անվտանգություն. Կողպել ձախողված մուտքի փորձեր pam_faillock-ով
pam_tally2
մոդուլը, որը ժամանակին օգտագործվում էր օգտատերերի հաշիվները արգելափակելու համար SSH մուտքի որոշակի անհաջող փորձերից հետո, հնացել է և փոխարինվել pam_faillock
-ով RHEL-ի վրա հիմնված բաշխումներում և այլ ժամանակակից Linux-ում։ բաշխումներ՝ շնորհիվ ավելի ճկունության և անվտանգության տարբերակների:
Նախկինում pam_tally2
մոդուլը պատասխանատու էր մուտքի անհաջող փորձերի հաշվման և հաշիվների արգելափակման համար: Այնուամենայնիվ, որպես անվտանգության բարելավման մաս, pam_faillock
-ը դարձել է Linux-ի նոր տարբերակներում մուտքի անհաջող փորձերը կառավարելու չափանիշ՝ ապահովելով ավելի լավ ինտեգրում և կազմաձևման ավելի շատ տարբերակներ:
Անցում pam_tally2-ից pam_faillock-ին
Թեև pam_tally2
բաղկացած էր երկու մասից՝ pam_tally2.so
և pam_tally2
հրամանից, այն աստիճանաբար հանվել է հօգուտ pam_tally2.
:, որը նախատեսված է մուտք գործելու փորձերն ավելի ապահով և ճկուն կերպով վարելու համար:
pam_faillock
-ն առաջարկում է նմանատիպ գործառույթներ, սակայն բարելավումներ, ինչպիսիք են՝
- Ընդլայնված գրանցում և անհաջող փորձերի մասին հաշվետվություն:
- Հաշվի արգելափակման քաղաքականության ավելի լավ վարում:
- Աջակցություն կարգավորելի սահմանափակումների անհաջող մուտքի փորձերի և հաշվի ավտոմատ ապակողպման համար ժամանակի ավարտից հետո:
Այս հոդվածը ցույց է տալիս, թե ինչպես կարելի է կարգավորել SSH հաշվի արգելափակումները՝ օգտագործելով pam_faillock
մոդուլը որոշակի թվով անհաջող մուտքի փորձերից հետո:
Ինչպես կողպել և բացել օգտատերերի հաշիվները pam_faillock-ով
Բացեք PAM-ի կազմաձևման ֆայլերը /etc/pam.d/password-auth
և /etc/pam.d/sshd
՝ կախված ձեր համակարգից և ծառայությունից: կոնֆիգուրացիա.
sudo vi /etc/pam.d/password-auth
sudo vi /etc/pam.d/sshd
Ավելացրեք հետևյալ տողերը auth
բաժնի սկզբում` մուտքի անհաջող փորձի քաղաքականությունը կարգավորելու համար.
auth required pam_faillock.so preauth silent audit deny=3 even_deny_root unlock_time=1200
auth [default=die] pam_faillock.so authfail audit deny=3 even_deny_root unlock_time=1200
Ավելացրեք հետևյալ տողը account
բաժնում` հաշիվների կառավարումը մուտքի ձախողումների համար միացնելու համար.
account required pam_faillock.so
Պարամետրերի բացատրություն.
մերժել=3
. մերժել մուտքը 3 անհաջող փորձից հետո:even_deny_root
. Կիրառեք քաղաքականությունը նաև արմատային օգտվողին:unlock_time=1200
. ավտոմատ ապակողպեք հաշիվը 20 րոպեից (1200 վայրկյան) հետո: Հեռացրեք այս տարբերակը, եթե ցանկանում եք, որ հաշիվը կողպված մնա մինչև ձեռքով զրոյացնել:աուդիտ
. գրանցում է մուտքի անհաջող փորձերը համակարգի աուդիտի մատյան:
Այժմ բացեք /etc/security/faillock.conf
ֆայլը և նշեք, թե քանի անհաջող փորձեր կհանգեցնեն արգելափակման և արգելափակման ժամանակահատվածի տևողությունը:
Number of allowed failures before lockout
deny = 5
Lockout duration in minutes
unlock_time = 15
Path to the faillock database
Optional: You can specify where to store faillock information
faillock_path = /var/lib/faillock
Այնուհետև բացեք /etc/ssh/sshd_config
ֆայլը և միացրեք հետևյալ կարգավորումը՝ PAM-ն օգտագործելու համար SSH նույնականացման համար:
UsePAM yes
Փոփոխությունները կիրառելու համար վերագործարկեք SSH ծառայությունը.
sudo systemctl restart sshd
Ինչպես ստուգել SSH հաշվի արգելափակման գործառույթը
Վերոնշյալ կոնֆիգուրացիան պահպանելուց հետո կարող եք ստուգել մուտքի արգելափակման մեխանիզմը՝ կատարելով SSH սերվեր մուտք գործելու 3 անհաջող փորձ:
ssh [email
[email 's password:
Permission denied, please try again.
[email 's password:
Permission denied, please try again.
[email 's password:
Account locked due to 3 failed logins
Ինչպես ստուգել օգտվողի SSH մուտքի ձախողումները
Որոշակի օգտվողի համար մուտքի անհաջող փորձերը ստուգելու համար օգտագործեք հետևյալ հրամանը.
sudo faillock --user username
Ելքի օրինակ.
Login Failures Latest failure From
user 3 10/17/2024 14:15 192.168.0.5
Ինչպես վերականգնել կամ բացել օգտվողի հաշիվը
Անհաջող փորձերը վերականգնելու և օգտվողի հաշիվը բացելու համար օգտագործեք հետևյալ հրամանը.
sudo faillock --user username --reset
Այս հրամանը ջնջում է ձախողված փորձերի քանակը և ապակողպում օգտվողին:
Օգտատիրոջ հաշիվը ստուգելը ապակողպված է
Դուք կարող եք հաստատել, որ հաշիվն ապակողպված է՝ կրկին գործարկելով faillock հրամանը.
sudo faillock --user username
Եթե մուտքի անհաջող փորձեր չլինեն, ելքը դատարկ կլինի, ինչը ցույց է տալիս, որ օգտվողի հաշիվն ապակողպված է:
Եզրակացություն
Եզրափակելով՝ pam_faillock
մոդուլն ապահովում է մուտքի անհաջող փորձերը կառավարելու բարելավված և ավելի ապահով եղանակ՝ փոխարինելով այժմ հնացած pam_tally2
-ին: Համոզվեք, որ թարմացրել եք ձեր PAM-ի կազմաձևման ֆայլերը՝ օգտագործելու pam_faillock
՝ լավագույն փորձին և անվտանգության չափանիշներին արդի մնալու համար:
Լրացուցիչ տեղեկությունների համար կարող եք օգտագործել հրամանի տողից pam_faillock
մարդ:
man pam_faillock