CentOS, Ubuntu എന്നിവയിൽ ഫയർവാൾഡ് എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം, കോൺഫിഗർ ചെയ്യാം, ഉപയോഗിക്കാം


നെറ്റ്uവർക്ക് (അല്ലെങ്കിൽ ഫയർവാൾ) സോണുകൾക്കുള്ള പിന്തുണയോടെ ഒരു സിസ്റ്റത്തിന്റെ ഫയർവാൾ ചലനാത്മകമായി കൈകാര്യം ചെയ്യുന്നതിനും കോൺഫിഗറേഷനുകൾ കൈകാര്യം ചെയ്യുന്നതിനായി ഒരു ഡി-ബസ് ഇന്റർഫേസ് നൽകുന്നതിനും iptables സേവനത്തിനുള്ള ഒരു ബദലാണ് ഫയർവാൾഡ് (ഫയർവാൾ ഡെമൺ). ഇത് ഉപയോഗിക്കാനും കോൺഫിഗർ ചെയ്യാനും എളുപ്പമാണ്, ഇത് ഇപ്പോൾ RHEL/CentOS, Fedora, മറ്റ് നിരവധി ലിനക്സ് വിതരണങ്ങൾ എന്നിവയിലെ ഡിഫോൾട്ട് ഫയർവാൾ മാനേജ്മെന്റ് ടൂളാണ്.

ഈ ലേഖനത്തിൽ, ഫയർവാൾഡ് ഉപയോഗിച്ച് സിസ്റ്റം ഫയർവാൾ എങ്ങനെ കോൺഫിഗർ ചെയ്യാമെന്നും CentOS/RHEL 7, ഉബുണ്ടുവിലും അടിസ്ഥാന പാക്കറ്റ് ഫിൽട്ടറിംഗ് എങ്ങനെ നടപ്പിലാക്കാമെന്നും ഞങ്ങൾ ചർച്ച ചെയ്യും.

ഫയർവാൾഡിനെക്കുറിച്ചുള്ള അടിസ്ഥാനകാര്യങ്ങൾ

ഫയർവാൾഡ് മൂന്ന് പാളികൾ ഉൾക്കൊള്ളുന്നു, അവ:

  • കോർ ലെയർ: കോൺഫിഗറേഷനും പിൻഭാഗങ്ങളും കൈകാര്യം ചെയ്യുന്നതിനുള്ള ഉത്തരവാദിത്തം (ചുവടെ പട്ടികപ്പെടുത്തിയിരിക്കുന്നു).
  • ഡി-ബസ് ഇന്റർഫേസ്: ഫയർവാൾ കോൺഫിഗറേഷൻ മാറ്റുന്നതിനും സൃഷ്ടിക്കുന്നതിനുമുള്ള പ്രാഥമിക മാർഗം.
  • ബാക്കെൻഡുകൾ: നെറ്റ്ഫിൽറ്ററുമായി സംവദിക്കുന്നതിന് (ഫയർവാളിംഗിന് ഉപയോഗിക്കുന്ന നേറ്റീവ് കേർണൽ മൊഡ്യൂൾ). അവയിൽ iptables, ip6tables, ebtables, ipset, nft, linnftables എന്നിവ ഉൾപ്പെടുന്നു; നെറ്റ്വർക്ക് മാനേജർ; മൊഡ്യൂളുകളും.

നെറ്റ്uവർക്ക് കണക്ഷനുകളുടെയോ ഇന്റർഫേസുകളുടെയോ ട്രസ്റ്റ് ലെവൽ നിർവചിക്കുന്ന നെറ്റ്uവർക്ക്/ഫയർവാൾ സോണുകൾ നടപ്പിലാക്കുന്നതിലൂടെ ഇത് ഫയർവാൾ നിയമങ്ങൾ നിയന്ത്രിക്കുന്നു. പിന്തുണയ്uക്കുന്ന മറ്റ് ഫയർവാൾ സവിശേഷതകളിൽ സേവനങ്ങൾ, നേരിട്ടുള്ള കോൺഫിഗറേഷൻ (റോ iptables സിന്റാക്സ് നേരിട്ട് കൈമാറാൻ ഉപയോഗിക്കുന്നു), IPSets, ICMP തരങ്ങൾ എന്നിവ ഉൾപ്പെടുന്നു.

രണ്ട് തരത്തിലുള്ള കോൺഫിഗറേഷൻ പരിതസ്ഥിതികൾ ഫയർവാൾഡ് പിന്തുണയ്ക്കുന്നു:

  • മെഷീൻ റീബൂട്ട് ചെയ്യുന്നതുവരെയോ ഫയർവാൾഡ് സേവനം പുനരാരംഭിക്കുന്നതുവരെയോ മാത്രം പ്രാബല്യത്തിൽ വരുന്ന റൺടൈം കോൺഫിഗറേഷൻ
  • സംരക്ഷിച്ചിരിക്കുന്നതും സ്ഥിരമായി പ്രവർത്തിക്കുന്നതുമായ ശാശ്വത കോൺഫിഗറേഷൻ.

ഫയർവാൾ-സിഎംഡി കമാൻഡ് ലൈൻ ടൂൾ റൺടൈമും സ്ഥിരമായ കോൺഫിഗറേഷനും നിയന്ത്രിക്കാൻ ഉപയോഗിക്കുന്നു. പകരമായി, ഡെമണുമായി സംവദിക്കുന്നതിന് നിങ്ങൾക്ക് ഫയർവാൾ-കോൺഫിഗ് ഗ്രാഫിക്കൽ യൂസർ ഇന്റർഫേസ് (ജിയുഐ) കോൺഫിഗറേഷൻ ടൂൾ ഉപയോഗിക്കാം.

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

ഫയർവാൾഡിനായുള്ള ആഗോള കോൺഫിഗറേഷൻ ഫയൽ /etc/firewalld/firewalld.conf എന്നതിൽ സ്ഥിതിചെയ്യുന്നു, കൂടാതെ ഫയർവാൾ സവിശേഷതകൾ XML ഫോർമാറ്റിൽ ക്രമീകരിച്ചിരിക്കുന്നു.

പ്രധാനപ്പെട്ട ഫയർവാൾഡ് സവിശേഷതകൾ മനസ്സിലാക്കുന്നു

ഫയർവാൾഡിന്റെ കേന്ദ്ര സവിശേഷത നെറ്റ്uവർക്ക്/ഫയർവാൾ സോണുകളാണ്. മറ്റെല്ലാ സവിശേഷതകളും ഒരു സോണിലേക്ക് പരിമിതപ്പെടുത്തിയിരിക്കുന്നു. ഒരു ഫയർവാൾ സോൺ ഒരു കണക്ഷൻ, ഇന്റർഫേസ് അല്ലെങ്കിൽ ഉറവിട വിലാസ ബൈൻഡിംഗിനുള്ള ട്രസ്റ്റ് ലെവൽ വിവരിക്കുന്നു.

ഡ്രോപ്പ്, ബ്ലോക്ക്, പബ്ലിക്, എക്uസ്uറ്റേണൽ, dmz, വർക്ക്, ഹോം, ഇന്റേണൽ, ട്രസ്റ്റഡ് എന്നിങ്ങനെ സോണുകളുടെ ഡിഫോൾട്ട് ട്രസ്റ്റ് ലെവൽ അനുസരിച്ച് അടുക്കിയിട്ടുള്ള നിരവധി മുൻനിശ്ചയിച്ച സോണുകളുമായാണ് ഡിഫോൾട്ട് കോൺഫിഗറേഷൻ വരുന്നത്. /usr/lib/firewalld/zones ഡയറക്uടറിക്ക് കീഴിൽ സംഭരിച്ചിരിക്കുന്ന ഫയലുകളിൽ അവ നിർവ്വചിച്ചിരിക്കുന്നു.

നിങ്ങൾക്ക് CLI ക്ലയന്റ് ഉപയോഗിച്ച് നിങ്ങളുടെ ഇഷ്uടാനുസൃത സോണുകൾ കോൺഫിഗർ ചെയ്യാനോ ചേർക്കാനോ കഴിയും അല്ലെങ്കിൽ നിലവിലുള്ള ഫയലുകളിൽ നിന്ന് /etc/firewalld/zones-ൽ ഒരു സോൺ ഫയൽ സൃഷ്uടിക്കുകയോ പകർത്തുകയോ ചെയ്uത് എഡിറ്റ് ചെയ്യാം.

ഫയർവാൾഡിന് കീഴിലുള്ള മറ്റൊരു പ്രധാന ആശയം സേവനങ്ങളാണ്. പോർട്ടുകളും പ്രോട്ടോക്കോളുകളും ഉപയോഗിച്ച് ഒരു സേവനം നിർവചിച്ചിരിക്കുന്നു; ഈ നിർവചനങ്ങൾ ഒരു വെബ് സെർവർ അല്ലെങ്കിൽ റിമോട്ട് ആക്സസ് സേവനം പോലെയുള്ള ഒരു നെറ്റ്uവർക്ക് സേവനത്തെ പ്രതിനിധീകരിക്കുന്നു. /usr/lib/firewalld/services/ അല്ലെങ്കിൽ /etc/firewalld/services/ ഡയറക്uടറിക്ക് കീഴിൽ സംഭരിച്ചിരിക്കുന്ന ഫയലുകളിലാണ് സേവനങ്ങൾ നിർവചിച്ചിരിക്കുന്നത്.

നിങ്ങൾക്ക് അടിസ്ഥാന iptables/ip6tables/ebtables ആശയങ്ങൾ അറിയാമെങ്കിൽ, ഫയർവാളിലേക്ക് നേരിട്ട് പ്രവേശനം നേടുന്നതിന് നിങ്ങൾക്ക് നേരിട്ടുള്ള ഇന്റർഫേസും (അല്ലെങ്കിൽ കോൺഫിഗറേഷൻ) ഉപയോഗിക്കാം. പക്ഷേ, iptables പരിജ്ഞാനമില്ലാത്തവർക്ക്, IPv4, IPv6 എന്നിവയ്uക്കായി കൂടുതൽ സങ്കീർണ്ണമായ ഫയർവാൾ നിയമങ്ങൾ സൃഷ്ടിക്കുന്നതിന് നിങ്ങൾക്ക് സമ്പന്നമായ ഭാഷ ഉപയോഗിക്കാനാകും.

ലിനക്സിൽ ഫയർവാൾഡ് പാക്കേജ് എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം

CentOS 7-ൽ, ഫയർവാൾഡ് പാക്കേജ് മുൻകൂട്ടി ഇൻസ്റ്റാൾ ചെയ്തിട്ടുണ്ട്, നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് പരിശോധിക്കാവുന്നതാണ്.

$ rpm -qa firewalld

ഉബുണ്ടു 16.04, 18.04 എന്നിവയിൽ, കാണിച്ചിരിക്കുന്നതുപോലെ സ്ഥിരസ്ഥിതി പാക്കേജ് മാനേജർ ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഇത് ഇൻസ്റ്റാൾ ചെയ്യാൻ കഴിയും.

$ sudo apt install firewalld

ലിനക്സിൽ ഫയർവാൾഡ് സേവനം എങ്ങനെ കൈകാര്യം ചെയ്യാം

systemctl കമാൻഡ് വഴി നിയന്ത്രിക്കാൻ കഴിയുന്ന ഒരു സാധാരണ systemd സേവനമാണ് ഫയർവാൾഡ്.

 
$ sudo systemctl start firewalld	#start the service for the mean time
$ sudo systemctl enable firewalld	#enable the service to auto-start at boot time
$ sudo systemctl status firewalld	#view service status

ഫയർവാൾഡ് സേവനം ആരംഭിച്ചതിന് ശേഷം, നിങ്ങൾക്ക് ഫയർവാൾ-സിഎംഡി ടൂൾ ഉപയോഗിച്ച് ഡെമൺ പ്രവർത്തിക്കുന്നുണ്ടോ ഇല്ലയോ എന്ന് പരിശോധിക്കാനും കഴിയും (ഇത് സജീവമല്ലെങ്കിൽ, ഈ കമാൻഡ് \പ്രവർത്തിക്കുന്നില്ല എന്ന് ഔട്ട്പുട്ട് ചെയ്യും).

$ sudo firewall-cmd --state

നിങ്ങൾ എന്തെങ്കിലും മാറ്റങ്ങൾ ശാശ്വതമായി സംരക്ഷിക്കുകയാണെങ്കിൽ, നിങ്ങൾക്ക് ഫയർവാൾഡ് റീലോഡ് ചെയ്യാം. ഇത് ഫയർവാൾ നിയമങ്ങൾ വീണ്ടും ലോഡുചെയ്യുകയും സംസ്ഥാന വിവരങ്ങൾ സൂക്ഷിക്കുകയും ചെയ്യും. നിലവിലെ സ്ഥിരമായ കോൺഫിഗറേഷൻ പുതിയ റൺടൈം കോൺഫിഗറേഷനായി മാറും.

$ sudo firewall-cmd --reload

ഫയർവാൾഡിലെ ഫയർവാൾ സോണുകളിൽ എങ്ങനെ പ്രവർത്തിക്കാം

ലഭ്യമായ എല്ലാ ഫയർവാൾ സോണുകളുടെയും സേവനങ്ങളുടെയും ഒരു ലിസ്റ്റ് ലഭിക്കുന്നതിന്, ഈ കമാൻഡുകൾ പ്രവർത്തിപ്പിക്കുക.

$ sudo firewall-cmd --get-zones
$ sudo firewall-cmd --get-services

മറ്റൊരു സോണിലേക്ക് വ്യക്തമായി പരിമിതപ്പെടുത്താത്ത എല്ലാ ഫയർവാൾ ഫീച്ചറുകൾക്കും ഉപയോഗിക്കുന്ന സോണാണ് ഡിഫോൾട്ട് സോൺ. പ്രവർത്തിപ്പിക്കുന്നതിലൂടെ നെറ്റ്uവർക്ക് കണക്ഷനുകൾക്കും ഇന്റർഫേസുകൾക്കുമായി നിങ്ങൾക്ക് ഡിഫോൾട്ട് സോൺ സെറ്റ് ലഭിക്കും.

$ sudo firewall-cmd --get-default-zone

സ്ഥിരസ്ഥിതി സോൺ സജ്ജീകരിക്കുന്നതിന്, ഉദാഹരണത്തിന് ബാഹ്യമായി, ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിക്കുക. --permanent എന്ന ഓപ്uഷൻ ചേർക്കുന്നത് കോൺഫിഗറേഷനെ ശാശ്വതമായി സജ്ജീകരിക്കുന്നു (അല്ലെങ്കിൽ സ്ഥിരമായ കോൺഫിഗറേഷൻ പരിതസ്ഥിതിയിൽ നിന്ന് വിവരങ്ങൾ അന്വേഷിക്കുന്നത് പ്രാപ്തമാക്കുന്നു).

$ sudo firewall-cmd --set-default-zone=external
OR
$ sudo firewall-cmd --set-default-zone=external --permanent
$ sudo firewall-cmd --reload 

അടുത്തതായി, ഒരു സോണിലേക്ക് ഒരു ഇന്റർഫേസ് എങ്ങനെ ചേർക്കാമെന്ന് നോക്കാം. ഹോം ഏരിയകളിൽ ഉപയോഗിക്കുന്ന സോൺ ഹോമിലേക്ക് നിങ്ങളുടെ വയർലെസ് നെറ്റ്uവർക്ക് അഡാപ്റ്റർ (wlp1s0) എങ്ങനെ ചേർക്കാമെന്ന് ഈ ഉദാഹരണം കാണിക്കുന്നു.

$ sudo firewall-cmd --zone=home --add-interface=wlp1s0

ഒരു ഇന്റർഫേസ് ഒരു സോണിലേക്ക് മാത്രമേ ചേർക്കാൻ കഴിയൂ. ഇത് മറ്റൊരു സോണിലേക്ക് നീക്കുന്നതിന്, കാണിച്ചിരിക്കുന്നതുപോലെ --change-interface സ്വിച്ച് ഉപയോഗിക്കുക, അല്ലെങ്കിൽ -remove-interface switch ഉപയോഗിച്ച് മുമ്പത്തെ സോണിൽ നിന്ന് അത് നീക്കം ചെയ്യുക, തുടർന്ന് അത് പുതിയ സോണിലേക്ക് ചേർക്കുക.

ഒരു പൊതു WI-FI നെറ്റ്uവർക്കിലേക്ക് കണക്റ്റുചെയ്യാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെന്ന് കരുതുകയാണെങ്കിൽ, നിങ്ങളുടെ വയർലെസ് ഇന്റർഫേസ് പൊതുമേഖലയിലേക്ക് തിരികെ മാറ്റണം, ഇതുപോലെ:

$ sudo firewall-cmd --zone=public --add-interface=wlp1s0
$ sudo firewall-cmd --zone=public --change-interface=wlp1s0

നിങ്ങൾക്ക് ഒരേ സമയം നിരവധി സോണുകൾ ഉപയോഗിക്കാം. ഇന്റർഫേസുകൾ, സേവനങ്ങൾ, പോർട്ടുകൾ, പ്രോട്ടോക്കോളുകൾ തുടങ്ങിയ പ്രവർത്തനക്ഷമമാക്കിയ സവിശേഷതകളുള്ള എല്ലാ സജീവ സോണുകളുടെയും ഒരു ലിസ്റ്റ് ലഭിക്കാൻ, പ്രവർത്തിപ്പിക്കുക:

$ sudo firewall-cmd --get-active-zones

മുമ്പത്തെ പോയിന്റുമായി ബന്ധപ്പെട്ട്, ഒരു പ്രത്യേക സോണിനെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾ കണ്ടെത്തണമെങ്കിൽ, അതായത് അതിൽ ചേർത്തതോ പ്രവർത്തനക്ഷമമാക്കിയതോ ആയ എല്ലാം, ഈ കമാൻഡുകളിലൊന്ന് ഉപയോഗിക്കുക:

$ sudo firewall-cmd --zone=home --list-all
OR
$ sudo firewall-cmd --info-zone public

മറ്റൊരു ഉപയോഗപ്രദമായ ഓപ്uഷൻ --get-target ആണ്, ഇത് നിങ്ങൾക്ക് ഒരു സ്ഥിരം മേഖലയുടെ ലക്ഷ്യം കാണിക്കുന്നു. ഒരു ടാർഗെറ്റ് ഇതിലൊന്നാണ്: ഡിഫോൾട്ട്, സ്വീകരിക്കുക, ഡ്രോപ്പ് ചെയ്യുക, നിരസിക്കുക. നിങ്ങൾക്ക് വിവിധ സോണുകളുടെ ലക്ഷ്യം പരിശോധിക്കാം:

$ sudo firewall-cmd --permanent --zone=public --get-target  
$ sudo firewall-cmd --permanent --zone=block --get-target  
$ sudo firewall-cmd --permanent --zone=dmz --get-target  
$ sudo firewall-cmd --permanent --zone=external --get-target
$ sudo firewall-cmd --permanent --zone=drop --get-target

ഫയർവാൾഡിൽ പോർട്ടുകൾ തുറക്കുന്നതും തടയുന്നതും എങ്ങനെ

ഫയർവാളിൽ ഒരു പോർട്ട് (അല്ലെങ്കിൽ പോർട്ട്/പ്രോട്ടോക്കോൾ കോമ്പിനേഷൻ) തുറക്കാൻ, --add-port ഓപ്ഷൻ ഉപയോഗിച്ച് ഒരു സോണിൽ ചേർക്കുക. നിങ്ങൾ സോൺ വ്യക്തമായി വ്യക്തമാക്കിയില്ലെങ്കിൽ, അത് ഡിഫോൾട്ട് സോണിൽ പ്രവർത്തനക്ഷമമാക്കും.

യഥാക്രമം HTTP, HTTPS പ്രോട്ടോക്കോളുകൾ വഴി ഇൻ-ബൗണ്ട് വെബ് ട്രാഫിക് അനുവദിക്കുന്നതിന് പോർട്ട് 80, 443 എന്നിവ എങ്ങനെ ചേർക്കാമെന്ന് ഇനിപ്പറയുന്ന ഉദാഹരണം കാണിക്കുന്നു:

$ sudo firewall-cmd --zone=public --permanent --add-port=80/tcp --add-port=443/tcp

അടുത്തതായി, ഫയർവാൾഡ് വീണ്ടും ലോഡുചെയ്uത് പബ്ലിക് സോണിലെ പ്രവർത്തനക്ഷമമാക്കിയ സവിശേഷതകൾ ഒരിക്കൽ കൂടി പരിശോധിക്കുക, ഇപ്പോൾ ചേർത്ത പോർട്ടുകൾ നിങ്ങൾക്ക് കാണാൻ കഴിയും.

$ sudo firewall-cmd --reload
$ sudo firewall-cmd --info-zone public

ഫയർവാളിൽ ഒരു പോർട്ട് തടയുകയോ അടയ്ക്കുകയോ ചെയ്യുന്നത് ഒരുപോലെ എളുപ്പമാണ്, --remove-port ഓപ്ഷൻ ഉപയോഗിച്ച് ഒരു സോണിൽ നിന്ന് അത് നീക്കം ചെയ്യുക. ഉദാഹരണത്തിന്, പൊതുമേഖലയിലെ പോർട്ടുകൾ 80, 443 എന്നിവ അടയ്ക്കുന്നതിന്.

$ sudo firewall-cmd --zone=public --permanent --remove-port=80/tcp --remove-port=443/tcp

പോർട്ട് അല്ലെങ്കിൽ പോർട്ട്/പ്രോട്ടോക്കോൾ കോമ്പിനേഷൻ ഉപയോഗിക്കുന്നതിനുപകരം, അടുത്ത വിഭാഗത്തിൽ വിശദീകരിച്ചിരിക്കുന്നതുപോലെ, ഒരു പോർട്ട് അസൈൻ ചെയ്uതിരിക്കുന്ന സേവന നാമം നിങ്ങൾക്ക് ഉപയോഗിക്കാം.

ഫയർവാൾഡിൽ സേവനങ്ങൾ തുറക്കുന്നതും തടയുന്നതും എങ്ങനെ

ഫയർവാളിൽ ഒരു സേവനം തുറക്കുന്നതിന്, --add-service ഓപ്ഷൻ ഉപയോഗിച്ച് അത് പ്രവർത്തനക്ഷമമാക്കുക. സോൺ ഒഴിവാക്കിയാൽ, ഡിഫോൾട്ട് സോൺ ഉപയോഗിക്കും.

ഇനിപ്പറയുന്ന കമാൻഡ് പൊതുമേഖലയിലെ http സേവനം ശാശ്വതമായി പ്രവർത്തനക്ഷമമാക്കും.

$ sudo firewall-cmd --zone=public --permanent --add-service=http 
$ sudo firewall-cmd --reload 

ഒരു സേവനം പ്രവർത്തനരഹിതമാക്കാൻ --remove-service ഓപ്ഷൻ ഉപയോഗിക്കാം.

$ sudo firewall-cmd --zone=public --permanent --remove-service=http 
$ sudo firewall-cmd --reload 

ഫയർവാൾഡ് ഉപയോഗിച്ച് ഐപി മാസ്ക്വെറേഡിംഗ് എങ്ങനെ പ്രവർത്തനക്ഷമമാക്കുകയും പ്രവർത്തനരഹിതമാക്കുകയും ചെയ്യാം

ലിനക്സ് നെറ്റ്uവർക്കിംഗിലെ ഒരു NAT (നെറ്റ്uവർക്ക് അഡ്രസ് ട്രാൻസ്ലേഷൻ) മെക്കാനിസമാണ് IP മാസ്ക്വെറേഡിംഗ് (IPMASQ അല്ലെങ്കിൽ MASQ എന്നും അറിയപ്പെടുന്നു), ഇത് നിങ്ങളുടെ ലിനക്സ് സെർവറിന്റെ (IPMASQ ഗേറ്റ്uവേ) നിയുക്ത പൊതു IP ഉപയോഗിച്ച് ഇന്റർനെറ്റുമായി ആശയവിനിമയം നടത്താൻ സ്വകാര്യ IP വിലാസങ്ങളുള്ള ഒരു നെറ്റ്uവർക്കിലെ നിങ്ങളുടെ ഹോസ്റ്റുകളെ അനുവദിക്കുന്നു. വിലാസം.

ഇത് ഒന്നിൽ നിന്ന് നിരവധി മാപ്പിംഗ് ആണ്. നിങ്ങളുടെ അദൃശ്യ ഹോസ്റ്റുകളിൽ നിന്നുള്ള ട്രാഫിക് നിങ്ങളുടെ Linux സെർവറിൽ നിന്ന് വരുന്നതുപോലെ ഇന്റർനെറ്റിലെ മറ്റ് കമ്പ്യൂട്ടറുകളിൽ ദൃശ്യമാകും.

നിങ്ങൾക്ക് ആവശ്യമുള്ള സോണിൽ ഐപി മാസ്uക്വറേഡിംഗ് പ്രവർത്തനക്ഷമമാക്കാം, ഉദാഹരണത്തിന് പൊതുമേഖല. എന്നാൽ അത് ചെയ്യുന്നതിന് മുമ്പ്, മാസ്ക്വെറേഡിംഗ് സജീവമാണോ അല്ലയോ എന്ന് ആദ്യം പരിശോധിക്കുക (ഒരു \ഇല്ല എന്നത് അത് പ്രവർത്തനരഹിതമാക്കിയിരിക്കുന്നു, \അതെ എന്നാൽ മറിച്ചാണ്).

$ sudo firewall-cmd --zone=public --query-masquerade
$ sudo firewall-cmd --zone=public --add-masquerade

പോർട്ട് ഫോർവേഡിംഗ് നടത്തുക എന്നതാണ് മാസ്uക്വറേഡിംഗിനുള്ള ഒരു സാധാരണ ഉപയോഗ കേസ്. പോർട്ട് 5000-ൽ sshd ഡെമൺ ശ്രവിക്കുന്ന IP 10.20.1.3 ഉള്ള നിങ്ങളുടെ ആന്തരിക നെറ്റ്uവർക്കിലെ ഒരു ഹോസ്റ്റിലേക്ക് ഒരു റിമോട്ട് മെഷീനിൽ നിന്ന് SSH ചെയ്യാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെന്ന് കരുതുക.

നിങ്ങളുടെ ലിനക്സ് സെർവറിലെ പോർട്ട് 22 ലേക്ക് എല്ലാ കണക്ഷനുകളും ഇഷ്യൂ ചെയ്യുന്നതിലൂടെ നിങ്ങളുടെ ടാർഗെറ്റ് ഹോസ്റ്റിലെ ഉദ്ദേശിച്ച പോർട്ടിലേക്ക് കൈമാറാൻ കഴിയും:

$ sudo firewall-cmd --zone=public --add-forward-port=port=22=proto=tcp:toport=5000:toaddr=10.20.1.3

ഒരു സോണിൽ മാസ്uക്വറേഡ് അപ്രാപ്uതമാക്കാൻ, --remove-masquerade സ്വിച്ച് ഉപയോഗിക്കുക.

$ sudo firewall-cmd --zone=public --remove-masquerade

ഫയർവാൾഡിൽ IMCP സന്ദേശം എങ്ങനെ പ്രവർത്തനക്ഷമമാക്കുകയും പ്രവർത്തനരഹിതമാക്കുകയും ചെയ്യാം

ICMP (ഇന്റർനെറ്റ് കൺട്രോൾ മെസേജ് പ്രോട്ടോക്കോൾ) സന്ദേശങ്ങൾ ഒന്നുകിൽ വിവര അഭ്യർത്ഥനകൾ അല്ലെങ്കിൽ വിവര അഭ്യർത്ഥനകൾക്കുള്ള മറുപടികൾ അല്ലെങ്കിൽ പിശക് സാഹചര്യങ്ങളിൽ.

നിങ്ങൾക്ക് ഫയർവാളിൽ ICMP സന്ദേശങ്ങൾ പ്രവർത്തനക്ഷമമാക്കാനോ അപ്രാപ്തമാക്കാനോ കഴിയും, എന്നാൽ അതിന് മുമ്പ് പിന്തുണയ്ക്കുന്ന എല്ലാ icmp തരങ്ങളും ആദ്യം ലിസ്റ്റ് ചെയ്യുക.

$ sudo firewall-cmd --get-icmptypes

നിങ്ങൾക്ക് ആവശ്യമുള്ള ഒരു ബ്ലോക്ക് തരം ചേർക്കാനോ നീക്കം ചെയ്യാനോ.

$ sudo firewall-cmd --zone=home --add-icmp-block=echo-reply
OR
$ sudo firewall-cmd --zone=home --remove-icmp-block=echo-reply

--list-icmp-blocks സ്വിച്ച് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഒരു സോണിൽ ചേർത്ത എല്ലാ icmp തരങ്ങളും കാണാൻ കഴിയും.

$ sudo firewall-cmd --zone=home --list-icmp-blocks

റോ iptables കമാൻഡുകൾ കൈമാറാൻ നേരിട്ടുള്ള ഇന്റർഫേസ് എങ്ങനെ ഉപയോഗിക്കാം

ഫയർവാളിലേക്ക് കൂടുതൽ നേരിട്ടുള്ള ആക്uസസ് ലഭിക്കുന്നതിന് ഫയർവാൾ-സിഎംഡി നേരിട്ടുള്ള ഓപ്ഷനുകളും (--direct) നൽകുന്നു. iptables-നെ കുറിച്ച് അടിസ്ഥാന അറിവുള്ളവർക്ക് ഇത് ഉപയോഗപ്രദമാണ്.

പ്രധാനപ്പെട്ടത്: മുകളിൽ വിശദീകരിച്ചിരിക്കുന്ന സാധാരണ ഫയർവാൾ-cmd ഓപ്ഷനുകൾ ഉപയോഗിക്കാൻ സാധ്യമല്ലാത്തപ്പോൾ അവസാന ആശ്രയമായി നിങ്ങൾ നേരിട്ടുള്ള ഓപ്ഷനുകൾ മാത്രമേ ഉപയോഗിക്കാവൂ.

--add-rules സ്വിച്ച് ഉപയോഗിച്ച് raw iptables റൂൾ എങ്ങനെ പാസാക്കാമെന്നതിന്റെ ഒരു ഉദാഹരണം ഇതാ. --add-rule പകരം --remove-rule ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഈ നിയമങ്ങൾ എളുപ്പത്തിൽ നീക്കംചെയ്യാം:

$ sudo firewall-cmd --direct --add-rule ipv4 filter IN_public_allow 0 -m tcp -p tcp --dport 80 -j ACCEPT

iptables-നെ കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക്, ഈ ഗൈഡ് കാണുക: Linux-ൽ സേവനങ്ങളിലേക്കുള്ള റിമോട്ട് ആക്uസസ് പ്രവർത്തനക്ഷമമാക്കുന്നതിന് ഒരു Iptables ഫയർവാൾ എങ്ങനെ സജ്ജീകരിക്കാം.

നിങ്ങൾക്ക് iptables വാക്യഘടന പരിചിതമല്ലെങ്കിൽ, കൂടുതൽ സങ്കീർണ്ണമായ ഫയർവാൾ നിയമങ്ങൾ അടുത്തതായി വിശദീകരിക്കുന്നതുപോലെ എളുപ്പത്തിൽ മനസ്സിലാക്കാൻ നിങ്ങൾക്ക് ഫയർവാൾഡിന്റെ \സമ്പന്നമായ ഭാഷ തിരഞ്ഞെടുക്കാം.

ഫയർവാൾഡിൽ സമ്പന്നമായ ഭാഷ എങ്ങനെ ഉപയോഗിക്കാം

iptables വാക്യഘടനയെക്കുറിച്ചുള്ള അറിവില്ലാതെ IPv4, IPv6 എന്നിവയ്uക്കായി കൂടുതൽ സങ്കീർണ്ണമായ ഫയർവാൾ നിയമങ്ങൾ ചേർക്കാൻ സമ്പന്നമായ ഭാഷ (റിച്ച് റൂൾസ് എന്നും അറിയപ്പെടുന്നു) ഉപയോഗിക്കുന്നു.

ഞങ്ങൾ കവർ ചെയ്തിട്ടുള്ള സോൺ ഫീച്ചറുകൾ (സർവീസ്, പോർട്ട്, ഐസിഎംപി-ബ്ലോക്ക്, മാസ്uകറേഡ്, ഫോർവേഡ്-പോർട്ട്) ഇത് വിപുലീകരിക്കുന്നു. ഇത് ഉറവിട, ലക്ഷ്യ വിലാസങ്ങൾ, ലോഗിംഗ്, പ്രവർത്തനങ്ങൾ, ലോഗുകൾക്കും പ്രവർത്തനങ്ങൾക്കുമുള്ള പരിധികൾ എന്നിവയെ പിന്തുണയ്ക്കുന്നു.

സമ്പന്നമായ നിയമങ്ങൾ ചേർക്കാൻ --add-rich-rule ഉപയോഗിക്കുന്നു. http സേവനത്തിനായി പുതിയ IPv4, IPv6 കണക്ഷനുകൾ എങ്ങനെ അനുവദിക്കാമെന്നും ഓഡിറ്റ് ഉപയോഗിച്ച് മിനിറ്റിൽ 1 ലോഗ് ചെയ്യാമെന്നും ഈ ഉദാഹരണം കാണിക്കുന്നു:

$ sudo firewall-cmd --add-rich-rule='rule service name="http" audit limit value="1/m" accept'

ചേർത്ത നിയമം നീക്കം ചെയ്യാൻ, --add-rich-rule ഓപ്ഷൻ പകരം --remove-rich-rule.

$ sudo firewall-cmd --remove-rich-rule='rule service name="http" audit limit value="1/m" accept'

ഒരു നിർദ്ദിഷ്uട IP വിലാസത്തിൽ നിന്നുള്ള ട്രാഫിക് തടയുന്നതിനോ അനുവദിക്കുന്നതിനോ ഈ സവിശേഷത അനുവദിക്കുന്നു. IP 10.20.1.20-ൽ നിന്നുള്ള കണക്ഷനുകൾ എങ്ങനെ നിരസിക്കാമെന്ന് ഇനിപ്പറയുന്ന ഉദാഹരണം കാണിക്കുന്നു.

$ sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.0.254" reject'

ഫയർവാൾഡിൽ പാനിക് മോഡ് എങ്ങനെ പ്രവർത്തനക്ഷമമാക്കുകയും പ്രവർത്തനരഹിതമാക്കുകയും ചെയ്യാം

ഫയർവാൾഡിന് കീഴിലുള്ള ഒരു പ്രത്യേക മോഡാണ് പാനിക് മോഡ്, അവിടെ എല്ലാ ഇൻ-ബൗണ്ട്, ഔട്ട്-ബൗണ്ട് പാക്കറ്റുകളും ഡ്രോപ്പ് ചെയ്യപ്പെടും, സജീവമായാൽ സജീവമായ കണക്ഷനുകൾ കാലഹരണപ്പെടും.
നിങ്ങളുടെ നെറ്റ്uവർക്ക് പരിതസ്ഥിതിക്ക് ഒരു ഭീഷണി പുറത്തുവരുന്ന അടിയന്തിര സാഹചര്യങ്ങളിൽ നിങ്ങൾക്ക് ഈ മോഡ് പ്രവർത്തനക്ഷമമാക്കാനാകും.

പാനിക് മോഡ് അന്വേഷിക്കാൻ, --query-panic ഓപ്ഷൻ ഉപയോഗിക്കുക.

$ sudo firewall-cmd --query-panic

പാനിക് മോഡ് പ്രവർത്തനക്ഷമമാക്കാൻ, --panic-on ഓപ്ഷൻ ഉപയോഗിക്കുക. കാണിച്ചിരിക്കുന്നതുപോലെ പിംഗ് കമാൻഡ് ഉപയോഗിച്ച് ഇത് പ്രവർത്തിക്കുന്നുണ്ടോയെന്ന് നിങ്ങൾക്ക് പരിശോധിക്കാം. പാക്കറ്റ് ഉപേക്ഷിച്ചതിനാൽ, www.google.com എന്ന പേര് പരിഹരിക്കാൻ കഴിയില്ല, അതിനാൽ പിശക് ദൃശ്യമാകുന്നു.

$ sudo firewall-cmd --panic-on
$ ping -c 2 www.google.com

പാനിക് മോഡ് പ്രവർത്തനരഹിതമാക്കാൻ, --panic-off ഓപ്ഷൻ ഉപയോഗിക്കുക.

$ sudo firewall-cmd --panic-off

ഫയർവാൾഡ് എങ്ങനെ ലോക്ക്ഡൗൺ ചെയ്യാം

പ്രാദേശിക ആപ്ലിക്കേഷനുകൾക്കോ സേവനങ്ങൾക്കോ റൂട്ട് പ്രത്യേകാവകാശങ്ങളോടെ പ്രവർത്തിക്കുന്നുണ്ടെങ്കിൽ ഫയർവാൾ കോൺഫിഗറേഷൻ മാറ്റാൻ കഴിയുമെന്ന് ഫയർവാൾഡിനെ കുറിച്ചുള്ള അടിസ്ഥാനകാര്യങ്ങൾക്ക് കീഴിൽ ഞങ്ങൾ സൂചിപ്പിച്ചതായി ഓർക്കുക. ലോക്ക്ഡൗൺ വൈറ്റ്uലിസ്റ്റിൽ വ്യക്തമാക്കുന്നതിലൂടെ, ഫയർവാൾ മാറ്റങ്ങൾ അഭ്യർത്ഥിക്കാൻ ഏതൊക്കെ ആപ്ലിക്കേഷനുകൾക്ക് കഴിയുമെന്ന് നിങ്ങൾക്ക് നിയന്ത്രിക്കാനാകും.

ഈ സവിശേഷത ഡിഫോൾട്ടായി ഓഫാക്കിയിരിക്കുന്നു, നിങ്ങൾക്ക് ഇത് --lockdown-on അല്ലെങ്കിൽ --lockdown സ്വിച്ച് ഉപയോഗിച്ച് പ്രവർത്തനക്ഷമമാക്കാനോ പ്രവർത്തനരഹിതമാക്കാനോ കഴിയും.

$ sudo firewall-cmd --lockdown-on
OR
$ sudo firewall-cmd --lockdown-off

പ്രധാന കോൺഫിഗറേഷൻ ഫയൽ എഡിറ്റ് ചെയ്തുകൊണ്ട് ഈ സവിശേഷത പ്രവർത്തനക്ഷമമാക്കാനോ പ്രവർത്തനരഹിതമാക്കാനോ ശുപാർശ ചെയ്യപ്പെടുന്നു എന്നത് ശ്രദ്ധിക്കുക, കാരണം നിങ്ങൾ ലോക്ക്ഡൗൺ പ്രവർത്തനക്ഷമമാക്കുമ്പോൾ, ലോക്ക്ഡൗൺ വൈറ്റ്uലിസ്റ്റിൽ ഫയർവാൾ-cmd നിലവിലില്ലായിരിക്കാം.

$ sudo vim /etc/firewalld/firewalld.conf

ലോക്ക്ഡൗൺ പാരാമീറ്റർ കണ്ടെത്തി അതിന്റെ മൂല്യം no (ഓഫ് എന്നർത്ഥം) എന്നതിൽ നിന്ന് yes എന്നതിലേക്ക് മാറ്റുക (അർത്ഥം ഓൺ).

Lockdown=yes

ഈ ക്രമീകരണം സ്ഥിരമായി റീലോഡ് ഫയർവാൾഡ് ആക്കുന്നതിന്.

$ sudo firewall-cmd --reload

ഫയർവാൾഡ് iptables സേവനത്തിന് പകരമായി ഉപയോഗിക്കാൻ എളുപ്പമാണ്, അത് iptables ഒരു ബാക്കെൻഡായി ഉപയോഗിക്കുന്നു. ഈ ലേഖനത്തിൽ, ഫയർവാൾഡ് പാക്കേജ് എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാമെന്ന് ഞങ്ങൾ കാണിച്ചുതന്നിട്ടുണ്ട്, ഫയർവാൾഡിന്റെ പ്രധാന സവിശേഷതകൾ വിശദീകരിക്കുകയും റൺടൈമിലും സ്ഥിരമായ കോൺഫിഗറേഷൻ പരിതസ്ഥിതികളിലും അവ എങ്ങനെ ക്രമീകരിക്കാമെന്ന് ചർച്ച ചെയ്യുകയും ചെയ്തു.

നിങ്ങൾക്ക് എന്തെങ്കിലും ചോദ്യങ്ങളോ അഭിപ്രായങ്ങളോ ഉണ്ടെങ്കിൽ, ചുവടെയുള്ള അഭിപ്രായ ഫോം വഴി ഞങ്ങളെ ബന്ധപ്പെടാൻ മടിക്കേണ്ടതില്ല. കൂടുതൽ വിവരങ്ങൾക്ക്, നിങ്ങൾക്ക് ഫയർവാൾഡ് മാനുവൽ പേജ് (മാൻ ഫയർവാൾഡ്) അല്ലെങ്കിൽ പ്രൊജക്റ്റ് വെബ്സൈറ്റിലെ ഫയർവാൾഡ് ഡോക്യുമെന്റേഷൻ നോക്കാവുന്നതാണ്.