Linux-ൽ പരാജയപ്പെട്ട എല്ലാ SSH ലോഗിൻ ശ്രമങ്ങളും എങ്ങനെ കണ്ടെത്താം


SSH സെർവറിലേക്ക് ലോഗിൻ ചെയ്യാനുള്ള ഓരോ ശ്രമവും grep കമാൻഡ് വഴി ട്രാക്ക് ചെയ്യുകയും ഒരു ലോഗ് ഫയലിലേക്ക് രേഖപ്പെടുത്തുകയും ചെയ്യുന്നു.

Linux-ൽ പരാജയപ്പെട്ട SSH ലോഗിനുകളുടെ ഒരു ലിസ്റ്റ് പ്രദർശിപ്പിക്കുന്നതിന്, ഈ ഗൈഡിൽ അവതരിപ്പിച്ചിരിക്കുന്ന ചില കമാൻഡുകൾ നൽകുക. ഈ കമാൻഡുകൾ റൂട്ട് പ്രത്യേകാവകാശങ്ങൾ ഉപയോഗിച്ചാണ് നടപ്പിലാക്കുന്നതെന്ന് ഉറപ്പാക്കുക.

പരാജയപ്പെട്ട എല്ലാ SSH ലോഗിനുകളും ലിസ്റ്റുചെയ്യുന്നതിനുള്ള ഏറ്റവും ലളിതമായ കമാൻഡ് ചുവടെ കാണിച്ചിരിക്കുന്നതാണ്.

# grep "Failed password" /var/log/auth.log

പൂച്ച കമാൻഡ് നൽകുന്നതിലൂടെയും ഇതേ ഫലം കൈവരിക്കാനാകും.

# cat /var/log/auth.log | grep "Failed password"

പരാജയപ്പെട്ട SSH ലോഗിനുകളെക്കുറിച്ചുള്ള അധിക വിവരങ്ങൾ പ്രദർശിപ്പിക്കുന്നതിന്, ചുവടെയുള്ള ഉദാഹരണത്തിൽ കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് നൽകുക.

# egrep "Failed|Failure" /var/log/auth.log

CentOS അല്ലെങ്കിൽ RHEL-ൽ, പരാജയപ്പെട്ട SSH സെഷനുകൾ /var/log/secure ഫയലിൽ രേഖപ്പെടുത്തുന്നു. പരാജയപ്പെട്ട SSH ലോഗിനുകൾ തിരിച്ചറിയാൻ ഈ ലോഗ് ഫയലിനെതിരെ മുകളിലുള്ള കമാൻഡ് നൽകുക.

# egrep "Failed|Failure" /var/log/secure

CentOS അല്ലെങ്കിൽ RHEL-ൽ പരാജയപ്പെട്ട SSH ലോഗിനുകൾ പ്രദർശിപ്പിക്കുന്നതിന് മുകളിലുള്ള കമാൻഡിന്റെ ചെറുതായി പരിഷ്കരിച്ച പതിപ്പ് ഇപ്രകാരമാണ്.

# grep "Failed" /var/log/secure
# grep "authentication failure" /var/log/secure

ഓരോ IP വിലാസത്തിന്റെയും പരാജയപ്പെട്ട ശ്രമങ്ങളുടെ എണ്ണം സഹിതം SSH സെർവറിലേക്ക് ലോഗിൻ ചെയ്യാൻ ശ്രമിച്ചതും പരാജയപ്പെട്ടതുമായ എല്ലാ IP വിലാസങ്ങളുടെയും ഒരു ലിസ്റ്റ് പ്രദർശിപ്പിക്കുന്നതിന്, താഴെയുള്ള കമാൻഡ് നൽകുക.

# grep "Failed password" /var/log/auth.log | awk ‘{print $11}’ | uniq -c | sort -nr

പുതിയ ലിനക്സ് വിതരണങ്ങളിൽ, നിങ്ങൾക്ക് Journalctl കമാൻഡ് വഴി Systemd ഡെമൺ പരിപാലിക്കുന്ന റൺടൈം ലോഗ് ഫയൽ അന്വേഷിക്കാവുന്നതാണ്. പരാജയപ്പെട്ട എല്ലാ SSH ലോഗിൻ ശ്രമങ്ങളും പ്രദർശിപ്പിക്കുന്നതിന്, ചുവടെയുള്ള കമാൻഡ് ഉദാഹരണങ്ങളിൽ കാണിച്ചിരിക്കുന്നതുപോലെ, grep ഫിൽട്ടർ വഴി നിങ്ങൾ ഫലം പൈപ്പ് ചെയ്യണം.

# journalctl _SYSTEMD_UNIT=ssh.service | egrep "Failed|Failure"
# journalctl _SYSTEMD_UNIT=sshd.service | egrep "Failed|Failure"  #In RHEL, CentOS 

CentOS അല്ലെങ്കിൽ RHEL-ൽ, ചുവടെയുള്ള കമാൻഡ് ഉദാഹരണങ്ങളിൽ കാണിച്ചിരിക്കുന്നതുപോലെ, SSH ഡെമൺ യൂണിറ്റ് sshd.service ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കുക.

# journalctl _SYSTEMD_UNIT=sshd.service | grep "failure"
# journalctl _SYSTEMD_UNIT=sshd.service | grep "Failed"

സംശയാസ്പദമായ ഉപയോക്തൃ അക്കൗണ്ടുകളോ അസാധുവായ ഉപയോക്തൃ അക്കൗണ്ടുകളോ ഉപയോഗിച്ച് സിസ്റ്റത്തിലേക്ക് ലോഗിൻ ചെയ്യുന്നതിനായി നിങ്ങളുടെ SSH സെർവറിൽ ഇടയ്ക്കിടെ ഹിറ്റ് ചെയ്യുന്ന IP വിലാസങ്ങൾ നിങ്ങൾ തിരിച്ചറിഞ്ഞ ശേഷം, ഈ ആക്രമണങ്ങൾ നിയന്ത്രിക്കുന്നതിന് നിങ്ങളുടെ സിസ്റ്റം ഫയർവാൾ നിയമങ്ങൾ fail2ban ആയി അപ്ഡേറ്റ് ചെയ്യണം.