ວິທີການລັອກບັນຊີຜູ້ໃຊ້ຫຼັງຈາກການພະຍາຍາມເຂົ້າສູ່ລະບົບລົ້ມເຫລວ


ຄູ່ມືນີ້ຈະສະແດງວິທີການລັອກບັນຊີຂອງຜູ້ໃຊ້ລະບົບຫຼັງຈາກ ຈຳ ນວນການພະຍາຍາມເຂົ້າສູ່ລະບົບທີ່ລົ້ມເຫລວໃນການ ຈຳ ໜ່າຍ CentOS, RHEL ແລະ Fedora. ນີ້, ຈຸດສຸມແມ່ນເພື່ອບັງຄັບໃຊ້ຄວາມປອດໄພຂອງເຊີຟເວີແບບງ່າຍດາຍໂດຍການລັອກບັນຊີຂອງຜູ້ໃຊ້ຫຼັງຈາກ ຈຳ ນວນການຢືນຢັນທີ່ບໍ່ປະສົບຜົນ ສຳ ເລັດ.

ສິ່ງນີ້ສາມາດບັນລຸໄດ້ໂດຍການໃຊ້ໂມດູນ pam_faillock ເຊິ່ງຊ່ວຍໃນການລັອກບັນຊີຜູ້ໃຊ້ຊົ່ວຄາວໃນກໍລະນີທີ່ມີຄວາມພະຍາຍາມກວດສອບຄວາມລົ້ມເຫລວຫລາຍຄັ້ງແລະບັນທຶກເຫດການນີ້. ຄວາມພະຍາຍາມເຂົ້າສູ່ລະບົບທີ່ລົ້ມເຫລວຖືກເກັບໄວ້ໃນແຟ້ມຕໍ່ຜູ້ໃຊ້ທີ່ຢູ່ໃນໄດເລກະທໍລີ tally ເຊິ່ງເປັນ /var/run/faillock/ ໂດຍຄ່າເລີ່ມຕົ້ນ.

pam_faillock ແມ່ນສ່ວນ ໜຶ່ງ ຂອງ Linux PAM (Pluggable Authentication Modules), ກົນໄກເຄື່ອນໄຫວໃນການຈັດຕັ້ງປະຕິບັດການບໍລິການກວດສອບຄວາມຖືກຕ້ອງໃນໂປແກຼມຕ່າງໆແລະການບໍລິການລະບົບຕ່າງໆເຊິ່ງພວກເຮົາໄດ້ອະທິບາຍສັ້ນໆພາຍໃຕ້ການຕັ້ງຄ່າ PAM ເພື່ອກວດສອບກິດຈະ ກຳ ເຂົ້າສູ່ລະບົບຂອງຜູ້ໃຊ້.

ວິທີການລັອກບັນຊີຜູ້ໃຊ້ຫຼັງຈາກການກວດສອບຄວາມລົ້ມເຫລວແບບຢືນຢັນບໍ່ຖືກຕ້ອງ

ທ່ານສາມາດ ກຳ ຫນົດຄ່າການເຮັດວຽກຂ້າງເທິງນີ້ໃນເອກະສານ /etc/pam.d/system-auth ແລະ /etc/pam.d/password-auth, ໂດຍການເພີ່ມຂໍ້ມູນຂ້າງລຸ່ມນີ້ເຂົ້າໃນສ່ວນ ອະນຸຍາດ .

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

ບ່ອນທີ່:

  • ການກວດສອບ - ສາມາດກວດສອບຜູ້ໃຊ້ໄດ້.
  • ປະຕິເສດ - ໃຊ້ເພື່ອ ກຳ ນົດ ຈຳ ນວນຄວາມພະຍາຍາມ (3 ໃນກໍລະນີນີ້), ຫລັງຈາກນັ້ນບັນຊີຜູ້ໃຊ້ຄວນຖືກລັອກ.
  • unlock_time - ກຳ ນົດເວລາ (300 ວິນາທີ = 5 ນາທີ) ສຳ ລັບບັນຊີຄວນຈະຖືກລັອກຢູ່.

ໃຫ້ສັງເກດວ່າຄໍາສັ່ງຂອງສາຍເຫຼົ່ານີ້ແມ່ນມີຄວາມສໍາຄັນຫຼາຍ, ການຕັ້ງຄ່າທີ່ບໍ່ຖືກຕ້ອງສາມາດເຮັດໃຫ້ບັນຊີຜູ້ໃຊ້ທຸກຄົນຖືກລັອກ.

ສ່ວນ auth ໃນເອກະສານທັງສອງເອກະສານຄວນມີເນື້ອໃນຂ້າງລຸ່ມນີ້ຈັດລຽງຕາມ ລຳ ດັບນີ້:

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

ຕອນນີ້ເປີດສອງເອກະສານເຫຼົ່ານີ້ກັບຕົວເລືອກບັນນາທິການຂອງທ່ານ.

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

ບັນດາລາຍການເລີ່ມຕົ້ນໃນສ່ວນ auth ທັງສອງໄຟລ໌ເບິ່ງຄືວ່ານີ້.

#%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

ຫຼັງຈາກເພີ່ມການຕັ້ງຄ່າຂ້າງເທິງ, ມັນຄວນຈະປາກົດດັ່ງຕໍ່ໄປນີ້.

#%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

ຈາກນັ້ນຕື່ມໃສ່ການປ້ອນຂໍ້ມູນທີ່ເນັ້ນໃສ່ຕໍ່ໄປນີ້ເຂົ້າໃນສ່ວນບັນຊີໃນເອກະສານທັງສອງຂ້າງເທິງ.

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

ວິທີການລັອກບັນຊີຮາກຫຼັງຈາກການພະຍາຍາມເຂົ້າສູ່ລະບົບລົ້ມເຫລວ

ເພື່ອລັອກບັນຊີຮາກຫຼັງຈາກຄວາມພະຍາຍາມກວດສອບຄວາມລົ້ມເຫລວ, ເພີ່ມຕົວເລືອກ even_deny_root ໃສ່ໃນບັນດາສາຍໃນທັງສອງໄຟລ໌ໃນສ່ວນ auth ເຊັ່ນນີ້.

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

ເມື່ອທ່ານໄດ້ຕັ້ງຄ່າທຸກຢ່າງແລ້ວ. ທ່ານສາມາດເລີ່ມການບໍລິການການເຂົ້າເຖິງຫ່າງໄກສອກຫຼີກເຊັ່ນ sshd, ເພື່ອໃຫ້ນະໂຍບາຍຂ້າງເທິງມີຜົນບັງຄັບໃຊ້ຄືວ່າຜູ້ໃຊ້ຈະຈ້າງ ssh ເຊື່ອມຕໍ່ກັບ server.

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

ວິທີການທົດສອບການເຂົ້າສູ່ລະບົບສົບຜົນ ສຳ ເລັດຂອງຜູ້ໃຊ້ SSH

ຈາກການຕັ້ງຄ່າຂ້າງເທິງ, ພວກເຮົາໄດ້ ກຳ ນົດລະບົບເພື່ອລັອກບັນຊີຂອງຜູ້ໃຊ້ພາຍຫຼັງ 3 ຄວາມພະຍາຍາມກວດສອບຄວາມລົ້ມເຫລວ.

ໃນສະຖານະການນີ້, ຜູ້ໃຊ້ tecmint ກຳ ລັງພະຍາຍາມປ່ຽນໄປໃຊ້ aaronkilik , ແຕ່ຫຼັງຈາກເຂົ້າສູ່ລະບົບບໍ່ຖືກຕ້ອງ 3 ຂໍ້ຍ້ອນລະຫັດຜ່ານຜິດ, ຖືກລະບຸໂດຍຂໍ້ຄວາມ“ ອະນຸຍາດຖືກປະຕິເສດ”, ບັນຊີຂອງຜູ້ໃຊ້ aaronkilik ຖືກລັອກໄວ້ດັ່ງທີ່ສະແດງໂດຍຂໍ້ຄວາມ“ ລົ້ມເຫລວໃນການກວດສອບ” ຈາກຄວາມພະຍາຍາມທີ່ສີ່.

ຜູ້ໃຊ້ຮາກຍັງຖືກແຈ້ງເຕືອນກ່ຽວກັບຄວາມພະຍາຍາມເຂົ້າສູ່ລະບົບທີ່ລົ້ມເຫລວໃນລະບົບ, ດັ່ງທີ່ສະແດງຢູ່ໃນ ໜ້າ ຈໍຂ້າງລຸ່ມນີ້.

ວິທີການເບິ່ງການພະຍາຍາມກວດສອບຄວາມລົ້ມເຫລວ

ທ່ານສາມາດເບິ່ງບັນທຶກການກວດສອບທີ່ລົ້ມເຫລວທັງ ໝົດ ໂດຍໃຊ້ຄຸນປະໂຫຍດ faillock, ເຊິ່ງໃຊ້ເພື່ອສະແດງແລະແກ້ໄຂບັນທຶກຄວາມລົ້ມເຫລວຂອງການກວດສອບ.

ທ່ານສາມາດເບິ່ງຄວາມພະຍາຍາມເຂົ້າສູ່ລະບົບທີ່ລົ້ມເຫລວ ສຳ ລັບຜູ້ໃຊ້ສະເພາະເຊັ່ນນີ້.

# faillock --user aaronkilik

ເພື່ອເບິ່ງຄວາມພະຍາຍາມເຂົ້າສູ່ລະບົບທີ່ບໍ່ປະສົບຜົນ ສຳ ເລັດ, ດຳ ເນີນການ faillock ໂດຍບໍ່ມີການໂຕ້ຖຽງໃດໆດັ່ງນັ້ນ:

# faillock 

ເພື່ອ ກຳ ຈັດບັນທຶກຄວາມລົ້ມເຫຼວຂອງການກວດສອບຄວາມຖືກຕ້ອງຂອງຜູ້ໃຊ້, ໃຫ້ ດຳ ເນີນການ ຄຳ ສັ່ງນີ້.

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

ສຸດທ້າຍ, ເພື່ອບອກລະບົບບໍ່ໃຫ້ລັອກບັນຊີຜູ້ໃຊ້ຫລືຜູ້ໃຊ້ພາຍຫຼັງທີ່ພະຍາຍາມເຂົ້າສູ່ລະບົບທີ່ບໍ່ປະສົບຜົນ ສຳ ເລັດຫຼາຍຄັ້ງ, ຕື່ມການເຂົ້າທີ່ຖືກ ໝາຍ ເປັນສີແດງ, ຢູ່ຂ້າງເທິງບ່ອນທີ່ pam_faillock ຖືກເອີ້ນ ທຳ ອິດພາຍໃຕ້ສ່ວນລະບົບໃນທັງສອງໄຟລ໌ (/etc/pam.d/ system-auth ແລະ /etc/pam.d/password-auth) ດັ່ງຕໍ່ໄປນີ້.

ພຽງແຕ່ຕື່ມຊື່ຜູ້ໃຊ້ທີ່ຖືກແຍກອອກຈາກຈໍ້າສອງເມັດໃຫ້ກັບຜູ້ໃຊ້ທີ່ຢູ່ໃນຕົວເລືອກ.

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

ສຳ ລັບຂໍ້ມູນເພີ່ມເຕີມ, ເບິ່ງ ໜ້າ pam_faillock ແລະ faillock man.

# man pam_faillock
# man faillock 

ທ່ານອາດຈະຢາກອ່ານບົດຄວາມທີ່ເປັນປະໂຫຍດຕໍ່ໄປນີ້:

<

  • TMOUT - Linux Shell ອອກຈາກລະບົບ Linux ໂດຍອັດຕະໂນມັດເມື່ອບໍ່ມີກິດຈະ ກຳ ໃດໆ
  • ຮູບແບບຜູ້ໃຊ້ແບບດຽວ: ຕັ້ງ/ກູ້ຄືນລະຫັດຜ່ານບັນຊີຜູ້ໃຊ້ທີ່ຖືກລືມແລ້ວ
  • 5 ການປະຕິບັດທີ່ດີທີ່ສຸດເພື່ອຮັບປະກັນແລະປົກປ້ອງ SSH Server
  • ວິທີການເອົາຮາກແລະການແຈ້ງເຕືອນເຂົ້າສູ່ລະບົບຂອງຜູ້ໃຊ້ SSH
  • ຫມົດເທົ່ານີ້! ໃນບົດຂຽນນີ້, ພວກເຮົາໄດ້ສະແດງວິທີການບັງຄັບໃຊ້ຄວາມປອດໄພຂອງເຊີຟເວີແບບງ່າຍດາຍໂດຍການລັອກບັນຊີຂອງຜູ້ໃຊ້ຫຼັງຈາກ x ຕົວເລກການເຂົ້າສູ່ລະບົບບໍ່ຖືກຕ້ອງຫຼືຄວາມພະຍາຍາມກວດສອບຄວາມລົ້ມເຫລວ. ໃຊ້ແບບຟອມ ຄຳ ເຫັນຂ້າງລຸ່ມນີ້ເພື່ອແບ່ງປັນ ຄຳ ຖາມຫລືຄວາມຄິດຂອງທ່ານກັບພວກເຮົາ.