ലോഗിംഗ് ഷെൽ ഉപയോക്തൃ പ്രവർത്തനം ഓഡിറ്റ് ചെയ്യുന്നതിന് PAM എങ്ങനെ കോൺഫിഗർ ചെയ്യാം


ഇതാണ് Linux ഓഡിറ്റിംഗിനെക്കുറിച്ചുള്ള ഞങ്ങളുടെ നിലവിലുള്ള സീരീസ്, ഈ ലേഖനത്തിന്റെ ഈ നാലാം ഭാഗത്ത്, pam_tty_audit ടൂൾ ഉപയോഗിക്കുന്ന നിർദ്ദിഷ്uട ഉപയോക്താക്കൾക്കായി Linux TTY ഇൻപുട്ട് (ലോഗിംഗ് ഷെൽ യൂസർ ആക്റ്റിവിറ്റി) ഓഡിറ്റിംഗിനായി PAM എങ്ങനെ കോൺഫിഗർ ചെയ്യാമെന്ന് ഞങ്ങൾ വിശദീകരിക്കും.

Linux PAM (പ്ലഗ്ഗബിൾ ഓതന്റിക്കേഷൻ മൊഡ്യൂളുകൾ) ആപ്ലിക്കേഷനുകളിലും വിവിധ സിസ്റ്റം സേവനങ്ങളിലും പ്രാമാണീകരണ സേവനങ്ങൾ നടപ്പിലാക്കുന്നതിനുള്ള വളരെ വഴക്കമുള്ള ഒരു രീതിയാണ്; യഥാർത്ഥ Unix PAM-ൽ നിന്നാണ് ഇത് ഉയർന്നുവന്നത്.

ഇത് പ്രാമാണീകരണ പ്രവർത്തനങ്ങളെ നാല് പ്രധാന മാനേജുമെന്റ് മൊഡ്യൂളുകളായി വിഭജിക്കുന്നു, അതായത്: അക്കൗണ്ട് മൊഡ്യൂളുകൾ, പ്രാമാണീകരണ മൊഡ്യൂളുകൾ, പാസ്uവേഡ് മൊഡ്യൂളുകൾ, സെഷൻ മൊഡ്യൂളുകൾ. തീസിസ് മാനേജ്മെന്റ് ഗ്രൂപ്പുകളുടെ വിശദമായ വിശദീകരണം ഈ ട്യൂട്ടോറിയലിന്റെ പരിധിക്കപ്പുറമാണ്.

നിർദ്ദിഷ്ട ഉപയോക്താക്കൾക്കായി TTY ഇൻപുട്ടിന്റെ ഓഡിറ്റിംഗ് പ്രവർത്തനക്ഷമമാക്കുന്നതിനോ പ്രവർത്തനരഹിതമാക്കുന്നതിനോ ഓഡിറ്റ് ടൂൾ pam_tty_audit PAM മൊഡ്യൂൾ ഉപയോഗിക്കുന്നു. ഒരു ഉപയോക്താവിനെ ഓഡിറ്റ് ചെയ്യുന്നതിനായി ക്രമീകരിച്ചുകഴിഞ്ഞാൽ, ടെർമിനലിൽ ഒരു ഉപയോക്തൃ പ്രവർത്തനങ്ങൾ ട്രാക്കുചെയ്യുന്നതിന് pam_tty_audit ഓഡിറ്റുമായി സംയോജിച്ച് പ്രവർത്തിക്കുന്നു, കോൺഫിഗർ ചെയ്uതാൽ, ഉപയോക്താവ് നിർമ്മിക്കുന്ന കൃത്യമായ കീസ്uട്രോക്കുകൾ ക്യാപ്uചർ ചെയ്യുക, തുടർന്ന് അവയെ /var/log/audit/audit-ൽ രേഖപ്പെടുത്തുന്നു. ലോഗ് ഫയൽ.

ലിനക്സിൽ ഉപയോക്താവിന്റെ TTY ഇൻപുട്ട് ഓഡിറ്റിംഗിനായി PAM ക്രമീകരിക്കുന്നു

പ്രാപ്തമാക്കുക എന്ന ഓപ്uഷൻ ഉപയോഗിച്ച്, /etc/pam.d/system-auth, /etc/pam.d/password-auth ഫയലുകളിൽ ഒരു പ്രത്യേക ഉപയോക്താക്കളുടെ TTY ഇൻപുട്ട് ഓഡിറ്റ് ചെയ്യുന്നതിനായി നിങ്ങൾക്ക് PAM കോൺഫിഗർ ചെയ്യാം. മറുവശത്ത്, പ്രതീക്ഷിച്ചതുപോലെ, താഴെയുള്ള ഫോർമാറ്റിൽ, നിർദ്ദിഷ്ട ഉപയോക്താക്കൾക്കായി അപ്രാപ്തമാക്കൽ അത് ഓഫാക്കുന്നു:

session required pam_tty_audit.so disable=username,username2...  enable=username,username2..

യഥാർത്ഥ ഉപയോക്തൃ കീസ്ട്രോക്കുകളുടെ ലോഗിംഗ് ഓണാക്കാൻ (സ്uപെയ്uസുകൾ, ബാക്ക്uസ്uപെയ്uസ്, റിട്ടേൺ കീകൾ, കൺട്രോൾ കീ, ഡിലീറ്റ് കീ എന്നിവയും മറ്റുള്ളവയും ഉൾപ്പെടെ), ഈ ഫോം ഉപയോഗിച്ച് മറ്റ് ഓപ്uഷനുകൾക്കൊപ്പം log_passwd ഓപ്ഷൻ ചേർക്കുക:

session required pam_tty_audit.so disable=username,username2...  enable=username log_passwd

എന്നാൽ നിങ്ങൾ ഏതെങ്കിലും കോൺഫിഗറേഷനുകൾ നടത്തുന്നതിന് മുമ്പ്, ശ്രദ്ധിക്കുക:

  • മുകളിലുള്ള വാക്യഘടനയിൽ കാണുന്നത് പോലെ, നിങ്ങൾക്ക് നിരവധി ഉപയോക്തൃനാമങ്ങൾ പ്രവർത്തനക്ഷമമാക്കുക അല്ലെങ്കിൽ പ്രവർത്തനരഹിതമാക്കുക എന്ന ഓപ്uഷനിലേക്ക് കൈമാറാനാകും.
  • ഏത് അപ്രാപ്uതമാക്കുക അല്ലെങ്കിൽ പ്രാപ്uതമാക്കുക ഓപ്uഷനും സമാന ഉപയോക്തൃനാമവുമായി പൊരുത്തപ്പെടുന്ന മുമ്പത്തെ വിപരീത ഓപ്ഷനെ അസാധുവാക്കുന്നു.
  • TTY ഓഡിറ്റിംഗ് പ്രവർത്തനക്ഷമമാക്കിയതിന് ശേഷം, നിർവചിക്കപ്പെട്ട ഉപയോക്താവ് ആരംഭിച്ച എല്ലാ പ്രക്രിയകൾക്കും ഇത് പാരമ്പര്യമായി ലഭിക്കും.
  • കീസ്ട്രോക്കുകളുടെ റെക്കോർഡിംഗ് സജീവമാക്കിയാൽ, ഇൻപുട്ട് തൽക്ഷണം ലോഗിൻ ചെയ്യപ്പെടില്ല, കാരണം TTY ഓഡിറ്റിംഗ് ആദ്യം കീസ്uട്രോക്കുകൾ ഒരു ബഫറിൽ സംഭരിക്കുകയും നിശ്ചിത ഇടവേളകളിൽ ബഫർ ഉള്ളടക്കം എഴുതുകയും ചെയ്യുന്നു, അല്ലെങ്കിൽ ഓഡിറ്റ് ചെയ്ത ഉപയോക്താവ് ലോഗ് ഔട്ട് ചെയ്uതതിന് ശേഷം /var/log-ലേക്ക് /audit/audit.log ഫയൽ.

താഴെയുള്ള ഒരു ഉദാഹരണം നോക്കാം, മറ്റെല്ലാ സിസ്റ്റം ഉപയോക്താക്കൾക്കുമായി TTY ഓഡിറ്റിംഗ് ഞങ്ങൾ പ്രവർത്തനരഹിതമാക്കുമ്പോൾ, എല്ലാ ടെർമിനലുകളിലുടനീളം കീസ്uട്രോക്കുകൾ ഉൾപ്പെടെ ഉപയോക്താവിന്റെ tecmint പ്രവർത്തനങ്ങൾ രേഖപ്പെടുത്താൻ ഞങ്ങൾ pam_tty_audit കോൺഫിഗർ ചെയ്യും.

ഇനിപ്പറയുന്ന രണ്ട് കോൺഫിഗറേഷൻ ഫയലുകൾ തുറക്കുക.

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

കോൺഫിഗറേഷൻ ഫയലുകളിലേക്ക് ഇനിപ്പറയുന്ന വരി ചേർക്കുക.
സെഷൻ ആവശ്യമാണ് pam_tty_audit.so disable=* enable=tecmint

ഉപയോക്തൃ tecmint നൽകിയ എല്ലാ കീസ്uട്രോക്കുകളും ക്യാപ്uചർ ചെയ്യുന്നതിന്, നമുക്ക് കാണിച്ചിരിക്കുന്ന log_passwd ഓപ്ഷൻ ചേർക്കാം.

session required pam_tty_audit.so disable=*  enable=tecmint log_passwd

ഇപ്പോൾ ഫയലുകൾ സേവ് ചെയ്ത് അടയ്ക്കുക. അതിനുശേഷം, aureport യൂട്ടിലിറ്റി ഉപയോഗിച്ച്, രേഖപ്പെടുത്തിയിട്ടുള്ള ഏതെങ്കിലും TTY ഇൻപുട്ടിനായുള്ള ഓഡിറ്റ് ലോഗ് ഫയൽ കാണുക.

# aureport --tty

മുകളിലെ ഔട്ട്uപുട്ടിൽ നിന്ന്, tecmint എന്ന ഉപയോക്താവിന്റെ UID 1000, vi/vim എഡിറ്റർ ഉപയോഗിക്കുന്നതും, ബിൻ എന്ന ഡയറക്ടറി സൃഷ്ടിച്ച് അതിലേക്ക് നീങ്ങിയതും ടെർമിനൽ ക്ലിയർ ചെയ്യുന്നതും മറ്റും നിങ്ങൾക്ക് കാണാൻ കഴിയും.

ഒരു നിശ്ചിത സമയത്തിന് തുല്യമോ അതിന് ശേഷമോ ടൈം സ്റ്റാമ്പുകൾ ഉപയോഗിച്ച് റെക്കോർഡ് ചെയ്uത TTY ഇൻപുട്ട് ലോഗുകൾക്കായി തിരയാൻ, ആരംഭ തീയതി/സമയം വ്യക്തമാക്കാൻ -ts ഉം അവസാനം സജ്ജമാക്കാൻ -te ഉപയോഗിക്കുക തീയതി സമയം.

ഇനിപ്പറയുന്നവ ചില ഉദാഹരണങ്ങളാണ്:

# aureport --tty -ts 09/25/2017 00:00:00 -te 09/26/2017 23:00:00
# aureport --tty -ts this-week

നിങ്ങൾക്ക് കൂടുതൽ വിവരങ്ങൾ pam_tty_audit മാൻ പേജിൽ കണ്ടെത്താം.

# man  pam_tty_audit

ഇനിപ്പറയുന്ന ഉപയോഗപ്രദമായ ലേഖനങ്ങൾ പരിശോധിക്കുക.

  1. Linux സെർവറുകളിൽ PuTTY ഉപയോഗിച്ച് \പാസ്uവേഡ് SSH കീകളുടെ പ്രാമാണീകരണം ഇല്ല കോൺഫിഗർ ചെയ്യുക
  2. RHEL/CentOS 7-ൽ LDAP അടിസ്ഥാനമാക്കിയുള്ള പ്രാമാണീകരണം സജ്ജീകരിക്കുന്നു
  3. SSH ലോഗിനുകൾക്കായി ടു-ഫാക്ടർ ഓതന്റിക്കേഷൻ (Google Authenticator) എങ്ങനെ സജ്ജീകരിക്കാം
  4. SSH കീജൻ ഉപയോഗിച്ച് SSH പാസ്uവേഡ് ഇല്ലാത്ത ലോഗിൻ 5 എളുപ്പ ഘട്ടങ്ങളിലൂടെ
  5. ലിനക്സിൽ പാസ്uവേഡ് നൽകാതെ 'സുഡോ' കമാൻഡ് എങ്ങനെ പ്രവർത്തിപ്പിക്കാം

ഈ ലേഖനത്തിൽ, CentOS/RHEL-ലെ നിർദ്ദിഷ്uട ഉപയോക്താക്കൾക്കുള്ള ഇൻപുട്ട് ഓഡിറ്റിംഗിനായി PAM എങ്ങനെ കോൺഫിഗർ ചെയ്യാമെന്ന് ഞങ്ങൾ വിവരിച്ചു. നിങ്ങൾക്ക് പങ്കിടാൻ എന്തെങ്കിലും ചോദ്യങ്ങളോ അധിക ആശയങ്ങളോ ഉണ്ടെങ്കിൽ, ചുവടെയുള്ള അഭിപ്രായം ഉപയോഗിക്കുക.