CentOS/RHEL 8-ൽ SSH പരിരക്ഷിക്കുന്നതിന് Fail2Ban എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം


Fail2ban എന്നത് സ്വതന്ത്രവും ഓപ്പൺ സോഴ്uസും വ്യാപകമായി ഉപയോഗിക്കുന്നതുമായ നുഴഞ്ഞുകയറ്റ പ്രതിരോധ ഉപകരണമാണ്, അത് IP വിലാസങ്ങൾക്കായി ലോഗ് ഫയലുകൾ സ്കാൻ ചെയ്യുന്നു, അത് നിരവധി പാസ്uവേഡ് പരാജയങ്ങളും മറ്റും പോലുള്ള ക്ഷുദ്രകരമായ അടയാളങ്ങൾ കാണിക്കുന്നു, കൂടാതെ അത് നിരോധിക്കുകയും ചെയ്യുന്നു (IP വിലാസങ്ങൾ നിരസിക്കാൻ ഫയർവാൾ നിയമങ്ങൾ അപ്uഡേറ്റ് ചെയ്യുന്നു) . സ്ഥിരസ്ഥിതിയായി, sshd ഉൾപ്പെടെയുള്ള വിവിധ സേവനങ്ങൾക്കുള്ള ഫിൽട്ടറുകൾ ഉപയോഗിച്ച് ഇത് അയയ്ക്കുന്നു.

ഈ ലേഖനത്തിൽ, SSH പരിരക്ഷിക്കുന്നതിനും CentOS/RHEL 8-ലെ ബ്രൂട്ട് ഫോഴ്uസ് ആക്രമണങ്ങളിൽ നിന്ന് SSH സെർവർ സുരക്ഷ മെച്ചപ്പെടുത്തുന്നതിനും fail2ban എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാമെന്നും കോൺഫിഗർ ചെയ്യാമെന്നും ഞങ്ങൾ വിശദീകരിക്കും.

CentOS/RHEL 8-ൽ Fail2ban ഇൻസ്റ്റാൾ ചെയ്യുന്നു

fail2ban പാക്കേജ് ഔദ്യോഗിക റിപ്പോസിറ്ററികളിൽ ഇല്ലെങ്കിലും അത് EPEL റിപ്പോസിറ്ററിയിൽ ലഭ്യമാണ്. നിങ്ങളുടെ സിസ്റ്റത്തിലേക്ക് ലോഗിൻ ചെയ്uത ശേഷം, ഒരു കമാൻഡ്-ലൈൻ ഇന്റർഫേസ് ആക്uസസ് ചെയ്യുക, തുടർന്ന് കാണിച്ചിരിക്കുന്നതുപോലെ നിങ്ങളുടെ സിസ്റ്റത്തിൽ EPEL റിപ്പോസിറ്ററി പ്രവർത്തനക്ഷമമാക്കുക.

# dnf install epel-release
OR
# dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

അതിനുശേഷം, ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിച്ച് Fail2ban പാക്കേജ് ഇൻസ്റ്റാൾ ചെയ്യുക.

# dnf install fail2ban

SSH പരിരക്ഷിക്കുന്നതിനായി Fail2ban കോൺഫിഗർ ചെയ്യുന്നു

fail2ban കോൺഫിഗറേഷൻ ഫയലുകൾ /etc/fail2ban/ ഡയറക്uടറിയിലും ഫിൽട്ടറുകൾ /etc/fail2ban/filter.d/ ഡയറക്uടറിയിലും സൂക്ഷിച്ചിരിക്കുന്നു (sshd-നുള്ള ഫിൽട്ടർ ഫയൽ /etc/fail2ban/filter.d/sshd.conf ആണ്) .

fail2ban സെർവറിനുള്ള ഗ്ലോബൽ കോൺഫിഗറേഷൻ ഫയൽ /etc/fail2ban/jail.conf ആണ്, എന്നിരുന്നാലും, ഈ ഫയൽ നേരിട്ട് പരിഷ്uക്കരിക്കുന്നതിന് ശുപാർശ ചെയ്യുന്നില്ല, കാരണം ഭാവിയിൽ ഒരു പാക്കേജ് അപ്uഗ്രേഡുചെയ്യുന്ന സാഹചര്യത്തിൽ ഇത് തിരുത്തിയെഴുതപ്പെടുകയോ മെച്ചപ്പെടുത്തുകയോ ചെയ്യാം.

ഒരു ബദലായി, /etc/fail2ban/jail.d/ ഡയറക്uടറിക്ക് കീഴിലുള്ള ഒരു jail.local ഫയലിലോ പ്രത്യേക .conf ഫയലുകളിലോ നിങ്ങളുടെ കോൺഫിഗറേഷനുകൾ സൃഷ്uടിക്കാനും ചേർക്കാനും ശുപാർശ ചെയ്യുന്നു. jail.local-ൽ സജ്ജമാക്കിയിരിക്കുന്ന കോൺഫിഗറേഷൻ പാരാമീറ്ററുകൾ jail.conf-ൽ നിർവചിച്ചിരിക്കുന്നതെന്തും അസാധുവാക്കുമെന്നത് ശ്രദ്ധിക്കുക.

ഈ ലേഖനത്തിനായി, കാണിച്ചിരിക്കുന്നതുപോലെ /etc/fail2ban/ ഡയറക്uടറിയിൽ ഞങ്ങൾ jail.local എന്ന പേരിൽ ഒരു പ്രത്യേക ഫയൽ സൃഷ്ടിക്കും.

# vi /etc/fail2ban/jail.local

ഫയൽ തുറന്ന് കഴിഞ്ഞാൽ, അതിൽ ഇനിപ്പറയുന്ന കോൺഫിഗറേഷൻ പകർത്തി ഒട്ടിക്കുക. [DEFAULT] വിഭാഗത്തിൽ ആഗോള ഓപ്uഷനുകളും [sshd] sshd ജയിലിനുള്ള പാരാമീറ്ററുകളും ഉൾക്കൊള്ളുന്നു.

[DEFAULT] 
ignoreip = 192.168.56.2/24
bantime  = 21600
findtime  = 300
maxretry = 3
banaction = iptables-multiport
backend = systemd

[sshd] 
enabled = true

മുകളിലുള്ള കോൺഫിഗറേഷനിലെ ഓപ്ഷനുകൾ നമുക്ക് ഹ്രസ്വമായി വിശദീകരിക്കാം:

  • ignoreip: നിരോധിക്കേണ്ട IP വിലാസങ്ങളുടെയോ ഹോസ്റ്റ് നാമങ്ങളുടെയോ ലിസ്റ്റ് വ്യക്തമാക്കുന്നു.
  • ബാൻടൈം: ഒരു ഹോസ്റ്റിനെ നിരോധിച്ചിരിക്കുന്നതിന്റെ എണ്ണം (അതായത് ഫലപ്രദമായ നിരോധന കാലയളവ്) വ്യക്തമാക്കിയിട്ടുണ്ട്.
  • maxretry: ഒരു ഹോസ്റ്റിനെ നിരോധിക്കുന്നതിന് മുമ്പുള്ള പരാജയങ്ങളുടെ എണ്ണം വ്യക്തമാക്കുന്നു.
  • findtime: fail2ban അവസാനത്തെ findtime സെക്കൻഡിൽ maxretry സൃഷ്ടിച്ചിട്ടുണ്ടെങ്കിൽ ഒരു ഹോസ്റ്റിനെ അത് നിരോധിക്കും.
  • banaction: നിരോധന പ്രവർത്തനം.
  • ബാക്കെൻഡ്: ലോഗ് ഫയൽ പരിഷ്uക്കരണം ലഭിക്കാൻ ഉപയോഗിക്കുന്ന ബാക്കെൻഡ് വ്യക്തമാക്കുന്നു.

അതിനാൽ, മുകളിൽ പറഞ്ഞ കോൺഫിഗറേഷൻ അർത്ഥമാക്കുന്നത്, കഴിഞ്ഞ 5 മിനിറ്റിനുള്ളിൽ ഒരു IP 3 തവണ പരാജയപ്പെട്ടാൽ, 6 മണിക്കൂർ നേരത്തേക്ക് അത് നിരോധിക്കുകയും 192.168.56.2 IP വിലാസം അവഗണിക്കുകയും ചെയ്യുക.

അടുത്തതായി, ഇപ്പോൾ fail2ban സേവനം ആരംഭിച്ച് പ്രവർത്തനക്ഷമമാക്കുക, താഴെ പറയുന്ന systemctl കമാൻഡ് ഉപയോഗിച്ച് അത് പ്രവർത്തിക്കുന്നുണ്ടോയെന്ന് പരിശോധിക്കുക.

# systemctl start fail2ban
# systemctl enable fail2ban
# systemctl status fail2ban

fail2ban-client ഉപയോഗിച്ച് മോണിറ്ററിംഗ് പരാജയപ്പെടുകയും IP വിലാസം നിരോധിക്കുകയും ചെയ്തു

sshd സുരക്ഷിതമാക്കാൻ fail2ban ക്രമീകരിച്ച ശേഷം, fail2ban-client ഉപയോഗിച്ച് നിങ്ങൾക്ക് പരാജയപ്പെട്ടതും നിരോധിച്ചതുമായ IP വിലാസങ്ങൾ നിരീക്ഷിക്കാൻ കഴിയും. fail2ban സെർവറിന്റെ നിലവിലെ നില കാണുന്നതിന്, ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

# fail2ban-client status

sshd ജയിൽ നിരീക്ഷിക്കാൻ, പ്രവർത്തിപ്പിക്കുക.

# fail2ban-client status sshd

fail2ban (എല്ലാ ജയിലുകളിലും ഡാറ്റാബേസിലും) ഒരു IP വിലാസം അൺബാൻ ചെയ്യാൻ, ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

# fail2ban-client unban 192.168.56.1

fail2ban-നെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക്, ഇനിപ്പറയുന്ന മാൻ പേജുകൾ വായിക്കുക.

# man jail.conf
# man fail2ban-client

അത് ഈ ഗൈഡ് സംഗ്രഹിക്കുന്നു! ഈ വിഷയത്തെക്കുറിച്ച് നിങ്ങൾക്ക് എന്തെങ്കിലും ചോദ്യങ്ങളോ ചിന്തകളോ ഉണ്ടെങ്കിൽ, ചുവടെയുള്ള ഫീഡ്uബാക്ക് ഫോം വഴി ഞങ്ങളെ ബന്ധപ്പെടാൻ മടിക്കരുത്.