Giunsa Pag-lock ang Mga Account sa Gumagamit Human Napakyas ang Pagsulay sa Pag-login


Kini nga giya magpakita kung unsaon pag-lock ang account sa user sa sistema pagkahuman sa usa ka piho nga gidaghanon sa mga pakyas nga pagsulay sa pag-login sa mga distribusyon sa CentOS, RHEL ug Fedora. Dinhi, ang pokus mao ang pagpatuman sa yano nga seguridad sa server pinaagi sa pag-lock sa account sa usa ka user pagkahuman sa sunud-sunod nga gidaghanon sa dili malampuson nga mga pag-authenticate.

Kini makab-ot pinaagi sa paggamit sa pam_faillock module nga makatabang sa temporaryo nga pag-lock sa mga account sa gumagamit kung adunay daghang napakyas nga pagsulay sa pag-authenticate ug nagtipig usa ka rekord sa kini nga panghitabo. Ang napakyas nga mga pagsulay sa pag-login gitipigan sa matag user nga mga file sa tally directory nga /var/run/faillock/ pinaagi sa default.

Ang pam_faillock kabahin sa Linux PAM (Pluggable Authentication Modules), usa ka dinamikong mekanismo sa pag-implementar sa mga serbisyo sa authentication sa mga aplikasyon ug lain-laing mga serbisyo sa sistema nga among gipatin-aw sa daklit ubos sa pag-configure sa PAM aron sa pag-audit sa user login shell activity.

Giunsa Pag-lock ang Mga Account sa Gumagamit Human sa Sunod-sunod nga Napakyas nga Pagpamatuod

Mahimo nimong i-configure ang naa sa ibabaw nga gamit sa /etc/pam.d/system-auth ug /etc/pam.d/password-auth files, pinaagi sa pagdugang sa mga entry sa ubos sa auth nga seksyon.

auth    required       pam_faillock.so preauth silent audit deny=3 unlock_time=600
auth    [default=die]  pam_faillock.so authfail audit deny=3 unlock_time=600

diin:

  • audit – makapahimo sa user audit.
  • deny – gigamit sa pagpasabot sa gidaghanon sa mga pagsulay (3 sa niini nga kaso), human niini ang user account kinahanglang ma-lock.
  • unlock_time – nagtakda sa oras (300 segundos = 5 minutos) diin ang account kinahanglang magpabiling naka-lock.

Timan-i nga ang han-ay niini nga mga linya importante kaayo, ang sayop nga mga pag-configure mahimong hinungdan nga ma-lock ang tanang user account.

Ang auth nga seksyon sa duha ka mga file kinahanglan adunay sulod sa ubos nga gihan-ay niini nga han-ay:

auth        required      pam_env.so
auth        required      pam_faillock.so preauth silent audit deny=3 unlock_time=300
auth        sufficient    pam_unix.so  nullok  try_first_pass
auth        [default=die]  pam_faillock.so  authfail  audit  deny=3  unlock_time=300
auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
auth        required      pam_deny.so

Karon ablihi kining duha ka mga file gamit ang imong gipili nga editor.

# vi /etc/pam.d/system-auth
# vi /etc/pam.d/password-auth 

Ang default nga mga entry sa auth nga seksyon ang duha ka mga file ingon niini.

#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        sufficient    pam_fprintd.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 1000 quiet
auth        required      pam_deny.so

Human sa pagdugang sa mga setting sa ibabaw, kini kinahanglan nga makita sama sa mosunod.

#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        required      pam_faillock.so preauth silent audit deny=3 unlock_time=300
auth        sufficient    pam_fprintd.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        [default=die]  pam_faillock.so  authfail  audit  deny=3  unlock_time=300
auth        requisite     pam_succeed_if.so uid >= 1000 quiet
auth        required      pam_deny.so

Dayon idugang ang mosunod nga gipasiugda nga entry sa seksyon sa account sa duha sa mga file sa ibabaw.

account     required      pam_unix.so
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     required      pam_permit.so
account     required      pam_faillock.so

Giunsa Pag-lock ang Root Account Human sa Napakyas nga Pagsulay sa Pag-login

Aron ma-lock ang root account human sa napakyas nga pagsulay sa pag-authenticate, idugang ang even_deny_root nga opsyon sa mga linya sa duha ka file sa auth nga seksyon nga sama niini.

auth        required      pam_faillock.so preauth silent audit deny=3 even_deny_root unlock_time=300
auth        [default=die]  pam_faillock.so  authfail  audit  deny=3 even_deny_root unlock_time=300

Kung na-configure na nimo ang tanan. Mahimo nimong i-restart ang mga serbisyo sa hilit nga pag-access sama sa sshd, aron ma-epekto ang palisiya sa ibabaw nga kung ang mga tiggamit mogamit ssh aron makonektar sa server.

# systemctl restart sshd  [On SystemD]
# service sshd restart    [On SysVInit]

Giunsa Pagsulay ang SSH User Napakyas nga Pagsulay sa Pag-login

Gikan sa mga setting sa ibabaw, among gi-configure ang sistema aron ma-lock ang account sa usa ka user pagkahuman sa 3 nga napakyas nga pagsulay sa pag-authenticate.

Niini nga senaryo, ang user tecmint naningkamot sa pagbalhin ngadto sa user aaronkilik, apan human sa 3 ka sayop nga logins tungod sa sayop nga password, nga gipakita sa \Permission denied nga mensahe, ang account sa user nga si aaronkilik gi-lock sama sa gipakita sa \authentication failure nga mensahe gikan sa ikaupat nga pagsulay.

Gipahibalo usab ang gamut nga tiggamit sa mga napakyas nga pagsulay sa pag-login sa sistema, ingon sa gipakita sa screen shot sa ubos.

Giunsa Pagtan-aw ang Napakyas nga Pagsulay sa Pagpamatuod

Imong makita ang tanang napakyas nga authentication logs gamit ang faillock utility, nga gigamit sa pagpakita ug pag-usab sa authentication failure log.

Mahimo nimong tan-awon ang napakyas nga pagsulay sa pag-login alang sa usa ka partikular nga tiggamit nga sama niini.

# faillock --user aaronkilik

Aron matan-aw ang tanan nga wala molampos nga pagsulay sa pag-login, pagdagan ang faillock nga wala’y bisan unsang argumento sama niini:

# faillock 

Aron malimpyohan ang mga log sa kapakyasan sa pag-authentication sa usa ka user, padagana kini nga sugo.

# faillock --user aaronkilik --reset 
OR
# fail --reset	#clears all authentication failure records

Katapusan, aron sultihan ang sistema nga dili i-lock ang mga account sa usa ka user o user pagkahuman sa daghang dili malampuson nga mga pagsulay sa pag-login, idugang ang entry nga gimarkahan sa pula nga kolor, sa ibabaw lang kung diin ang pam_faillock una nga gitawag sa ilawom sa seksyon sa auth sa parehas nga mga file (/etc/pam.d/ system-auth ug /etc/pam.d/password-auth) ingon sa mosunod.

Idugang lang ang bug-os nga colon nga gibulag nga mga username sa kapilian nga tiggamit.

auth  required      pam_env.so
auth   [success=1 default=ignore] pam_succeed_if.so user in tecmint:aaronkilik 
auth   required      pam_faillock.so preauth silent audit deny=3 unlock_time=600
auth   sufficient    pam_unix.so  nullok  try_first_pass
auth   [default=die]  pam_faillock.so  authfail  audit  deny=3  unlock_time=600
auth   requisite     pam_succeed_if.so uid >= 1000 quiet_success
auth   required      pam_deny.so

Para sa dugang nga impormasyon, tan-awa ang pam_faillock ug faillock man page.

# man pam_faillock
# man faillock 

Mahimo usab nimong basahon kining mosunod nga mapuslanong mga artikulo:

  1. TMOUT – Awtomatikong Pag-logout sa Linux Shell Kung Walay Kalihokan
  2. Single User Mode: Pag-reset/Pagbawi sa Nakalimtan nga Root User Account Password
  3. 5 Best Practices sa Secure and Protection SSH Server
  4. Unsaon pagkuha sa Root ug User SSH Login Email Alerto

Kana lang! Sa kini nga artikulo, gipakita namon kung giunsa pagpatuman ang yano nga seguridad sa server pinaagi sa pag-lock sa account sa usa ka tiggamit pagkahuman sa x nga gidaghanon sa mga sayup nga pag-login o napakyas nga pagsulay sa pag-authenticate. Gamita ang porma sa komento sa ubos aron ipaambit kanamo ang imong mga pangutana o hunahuna.