Firewall na Linux na-arụ ọrụ dị mkpa n'ichekwa sistemụ kọmputa. Ọ na-arụ ọrụ dị ka ihe mgbochi, ịchịkwa na nzacha okporo ụzọ netwọk iji kpuchido usoro ahụ site na ịnweta ikike, mwakpo na ihe iyi egwu ndị ọzọ. Na-enweghị Firewall ahaziri nke ọma, ihe nkesa ahụ nwere ike ịdaba na ụdị cyberattacks dị iche iche, na-ebute nsonaazụ dị njọ maka nchekwa data na nzuzo.
N'isiokwu a, anyị ga-eleba anya na ngwaọrụ abụọ bụ isi maka ịhazi Linux Firewall: firewalld na iptables. Anyị ga-eme nyocha ntụnyere atụmatụ ha, ọrụ ha na uru ha. Na mgbakwunye, anyị ga-enye nkọwa zuru ezu maka ịtọlite na iji nke ọ bụla n'ime ngwaọrụ ndị a, yana atụlekwa omume kachasị mma maka iji Firewall chekwaa sistemụ gị n'elu ikpo okwu Linux. A ga-egosipụta omume niile na a mebere nkesa na- ya na uzo eji abanye ya.
Na-ahazi firewalld na Linux
Firewalld (Firewall Daemon) bụ mmemme maka ijikwa firewall na sistemụ arụmọrụ Linux. Ọ na-enye interface onye ọrụ maka ịhazi iwu firewall, ikwe ma ọ bụ igbochi njikọ nke ngwa netwọkụ. Etinyere ya na ndabara n'ọtụtụ nkesa nkesa. Ọ bụrụ na etinyeghị Firewalld mbụ, enwere ike itinye ya n'adabereghị na ebe nchekwa ọrụ nkesa.
Maka sistemu okpu uhie (dị ka RHEL, CentOS, Fedora) a na-eji iwu a:
yum install firewalld
Maka Debian/Ubuntu:
apt-get install firewalld
Mgbe echichi gasịrị, enwere ike ịmalite ma rụọ ọrụ ozugbo site na iwu:
systemctl start firewalld
Na-esote, ịkwesịrị ịgbakwunye ọrụ na mmalite:
systemctl enable firewalld
N'oge a, anyị na-akwado gbanyụọ ufw, n'ihi na akwadoghị iji ngwa ọrụ a na firewalld ma ọ bụ iptables n'otu oge. Lelee ọkwa:
systemctl status ufw
Ka ịkwụsị ya, tinye iwu:
systemctl stop ufw
Maka nchupu zuru oke:
ufw disable
Mgbe omume ndị a gasịrị, ị nwere ike ịga n'ihu hazie firewalld.
Nke mbụ, ọ dị mkpa ịkọwapụta mpaghara ntụkwasị obi. Firewalld na-eji echiche nke mpaghara iji chọpụta ọkwa ntụkwasị obi maka ihu netwọkụ. A na-ekenye interface ọ bụla otu mpaghara, a na-etinyekwa iwu firewall dabere na mpaghara ahụ. E ji iwu a meghere ndepụta mpaghara niile dịnụ:
firewall-cmd --get-zones
Dịka, a na-eji mpaghara 4 isi:
- PublicMpaghara a bụ maka netwọk ndị ị chere na ọ dịghị mma;
- Private: Na-etinye aka na netwọk ụlọ ma ọ bụ njikọ netwọk ndị ọzọ tụkwasịrị obi;
- esịtidem: A na-eji ya maka netwọk dị n'ime, dị ka ndị nọ na nzukọ ma ọ bụ netwọk ụlọ ọrụ;
- DMZ: Mpaghara a bụ ebe a na-edobe sava nke kwesịrị ịnweta na ịntanetị.
Otú ọ dị, nke a bụ nanị otu ihe atụ. Ị nwere ike tinye mpaghara nke gị site na iji iwu a:
firewall-cmd --permanent --new-zone=nameyourzone
Mgbe ịgbakwunye, a chọrọ ibugharị:
firewall-cmd --reload
Ka ihichapụ mpaghara, a na-eji usoro yiri ya
firewall-cmd --permanent --delete-zone=nameyourzone
Mgbe ịkọwapụta mpaghara, ọ dị mkpa ịnyefe okporo ụzọ maka ọrụ na ọdụ ụgbọ mmiri achọrọ. Iji kwe ka ụfọdụ ọrụ, jiri iwu a:
firewall-cmd --zone=public --add-service=name
ebe aha bụ aha ọrụ. Dịka ọmụmaatụ, iji kwe ka okporo ụzọ maka Apache:
firewall-cmd --zone=public --add-service=http
Iji kọwapụta ọdụ ụgbọ mmiri enwere ike, jiri iwu a:
firewall-cmd --zone=public --add-port=number/protocol
Dịka ọmụmaatụ, ọdụ ụgbọ mmiri 22 ọkọlọtọ maka SSH ga-adị ka nke a:
firewall-cmd --zone=public --add-port=22/tcp
N'oge a, a na-emepụtarịrị iwu ndị bụ isi. Na-esote, chọpụta ka a ga-esi hazie okporo ụzọ dabere na isi mmalite, ebe ebe, ọdụ ụgbọ mmiri, na njirisi ndị ọzọ. Ka ịgbakwunye iwu (iji ọha mpaghara dịka ọmụmaatụ):
firewall-cmd --zone=public rule
Dịka ọmụmaatụ, inye ohere ka okporo ụzọ na-abata site na isi iyi ọ bụla gaa na ọdụ ụgbọ mmiri 80 (HTTP):
firewall-cmd --zone=public --add-port=80/tcp --permanent
Iji wepu iwu:
firewall-cmd --permanent --remove-rule=rule_specification
ebe ọchịchị bụ ụdị iwu (dịka ọmụmaatụ, ọdụ ụgbọ mmiri, ọrụ, ọchịchị bara ụba, wdg), na iwu_specification bụ nkọwapụta nke iwu n'onwe ya.
Mgbe emechara mgbanwe na nhazi nke Firewalld, ọ dị mkpa ịchekwa ma tinye ha n'ọrụ. Ka ịchekwaa mgbanwe, jiri iwu a:
firewall-cmd --runtime-to-permanent
Iji tinye mgbanwe:
firewall-cmd --reload
Mgbe ịmechara nhazi ahụ, ị nwere ike nyochaa paramita ahọpụtara site na imepe ndepụta nke iwu niile:
firewall-cmd --list-all
Ọ bụrụ na nsogbu ọ bụla bilitere, lelee ndekọ Firewalld na iwu:
journalctl -u firewalld
Mara: Anyị kpuchiri naanị algọridim izugbe maka ịtọ njikọ ahụ. Ngwá ọrụ nwere nnukwu ọrụ. Maka ozi zuru oke na nhọrọ niile dị, ị nwere ike iji akwụkwọ akwụkwọ ma ọ bụ enyemaka mepere emepe:
firewall-cmd --help
Na-ahazi iptables na Linux
N'adịghị ka Firewalld, iptables bụ ngwa ọrụ ochie mana a ka na-ejikarị na Linux maka ijikwa firewall. Ọ na-enye ụzọ kwụ ọtọ na mgbanwe maka iwu nzacha ngwugwu na ọkwa kernel Linux. Agbanyeghị, iptables chọrọ ihe ọmụma na ahụmịhe dị elu ma e jiri ya tụnyere Firewalld, na-eme ka ọ ghara inweta ya maka ndị mbido. Jiri iwu a lelee ụdị ngwa ọrụ etinyegoro mbụ:
iptables -V
Ọ bụrụ na etinyeghị ngwaọrụ ahụ, ọ ga-adị mkpa ka etinye ya. Iwu maka ntinye na Ubuntu, Debian:
apt install iptables
Maka sistemu okpu uhie (dịka, CentOS, Fedora):
yum install iptables
Iwu maka ịgbalite mgbe echichi:
systemctl start iptables
Ka ịgbakwunye na mmalite, mee:
systemctl enable iptables
Tupu ịmalite nhazi iptables, ọ dị mkpa ịghọta ka o si arụ ọrụ. Nke a na-enyere aka site na syntax nke mmemme ahụ. Ọ dị ka nke a:
iptables -t table action chain additional_parameters
Ka anyị lebakwuo anya n'ihe nke ọ bụla.
Iptables nwere okpokoro isi anọ: filter, nat, mangle, na raw. Emebere nke ọ bụla maka nhazi ụfọdụ ụdị ngwugwu ma nwee usoro iwu nke ya:
- nyo: Nke a bụ tebụl a na-ejikarị eme ihe, nwere iwu nzacha ngwugwu. A na-eji ya eme mkpebi maka inye ohere ma ọ bụ jụ ngwugwu.
- nat: A na-eji tebụl a maka ịgbanwe adreesị netwọk na ọdụ ụgbọ mmiri na ngwugwu. A na-ejikarị ya maka ịtọ ntọala masquerading (NAT).
- mangle: Na tebụl a, ị nwere ike gbanwee nkụnye nkụnye eji isi mee. A na-eji ya maka ọrụ ngwugwu pụrụ iche, dị ka akara.
- ndu: A na-eji tebụl a maka ịhazi iwu ndị na-emetụta tupu ha agabiga usoro nsochi njikọ. A na-ejikarị ya maka ịtọlite iwu nke na-ekwesịghị ịgbanwe site na usoro nsochi, dị ka idobe ngwugwu site na adreesị ụfọdụ.
Tebụl ọ bụla nwere usoro nke agbụ. Chains bụ usoro iwu nke a na-enyocha n'usoro. Enwere eriri atọ akọpụtagoro ụzọ:
- INPUT (na-abata). Iwu ndị dị na yinye a na-ekpebi ihe a ga-eme na ngwugwu na-abata.
- Mpụta (na-apụ apụ). Yinye a na-emetụta ngwugwu niile kọmputa gị na-eziga na ngwaọrụ ndị ọzọ ma ọ bụ kọmputa dị na netwọk.
- gawa n'ihu (na-ebugharị). Iwu dị n'agbụ a na-akọwapụta ihe a ga-eme na ngwugwu ebufere.
N'ikpeazụ, agbụ nke ọ bụla nwere ihe ụfọdụ (ebumnuche). Na omume, a na-eji isi ihe ise eme ihe:
- NABATA: Kwe ka ngwugwu ahụ gafere na firewall.
- DARA: Jụ ihe ngwugwu ahụ ma tụfuo ya na-enweghị nzaghachi ọ bụla.
- J .R.: Jụ ngwugwu ahụ wee zipụ onye na-ezipụ ozi njehie ICMP.
- log: Banye ngwungwu n'ime ndekọ sistemụ wee mee ihe ọzọ (dịka ọmụmaatụ, anabata ma ọ bụ DROP).
- laghachi: Kwụsị ịlele iwu na agbụ dị ugbu a wee laghachi na agbụ oku (ọ bụrụ na ọdabara).
Iji malite ntọlite, mepee ndepụta iwu dị ugbu a site na iwu:
iptables -L
Dịka ntuziaka maka ịhazi Iptables, ka anyị leba anya n'ihe atụ bara uru nke iwu ndị a na-ejikarị eme ihe. Maka ịdị mma, anyị ga-ekewa ihe atụ ndị a n'ime otu atọ, dabere n'agbụ a kapịrị ọnụ.
Chain ndenye:
- Kwe ka okporo ụzọ na-abata site na protocol TCP na ọdụ ụgbọ mmiri 80:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
2. Kwe ka okporo ụzọ na-abata site na protocol UDP na ọdụ ụgbọ mmiri 22:
iptables -A INPUT -p udp --dport 22 -j ACCEPT
3. Gbochie okporo ụzọ na-abata site na adreesị IP akọwapụtara:
iptables -A INPUT -s 192.168.1.100 -j DROP
Chain mmepụta:
- Kwe ka okporo ụzọ na-apụ apụ site na protocol TCP na ọdụ ụgbọ mmiri 443:
iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT
2. Kwe ka okporo ụzọ na-apụ apụ site na protocol UDP na ọdụ ụgbọ mmiri 80:
iptables -A OUTPUT -p udp --dport 80 -j ACCEPT
3. Gbochie okporo ụzọ na-apụ apụ na ọdụ ụgbọ mmiri akọwapụtara (dịka ọmụmaatụ, 21):
iptables -A OUTPUT -p tcp --dport 21 -j DROP
Chain Gaanụ n'Ihu:
- Gbochie okporo ụzọ ezigara site na adreesị IP dị iche iche:
iptables -A FORWARD -s 172.16.0.0/24 -j DROP
2. Gbochie mbugharị nke ngwugwu site na otu netwọkụ dị iche iche:
iptables -A FORWARD -i eth1 -j DROP
3. Machie ọnụ ọgụgụ nke njikọ otu oge maka otu ọdụ ụgbọ mmiri (n'ihe atụ a, njikọ 10 kwa nkeji na ọdụ ụgbọ mmiri 80):
iptables -A INPUT -p tcp --dport 80 -m limit --limit 10/minute -j ACCEPT
Dị ka ị na-ahụ, na nke ọ bụla dị iche iche, a na-eji arụmụka ọzọ (iwu) eme ihe. Iji nweta ndepụta zuru oke nke arụmụka enwere ike yana nkwado zuru oke maka ọrụ akụrụngwa, tinye:
iptables -h
Iji hụ na ntọala ndị ahụ ziri ezi, tinyegharịa iwu ka ilele ndepụta iwu:
iptables -L
Ka ihichapụ otu iwu, jiri iwu:
iptables -D chain rule_number
Dịka ọmụmaatụ, ọ bụrụ na ịchọrọ ihichapụ nọmba iwu 1 na yinye INPUT, iwu ahụ ga-adị ka nke a:
iptables -D INPUT 1
Iji otu iwu ihichapụ iwu niile:
iptables -F
Ihe dị mkpa: A naghị echekwa iwu iptables na akpaghị aka ka ịmalitegharịa sistemụ ma ọ bụ ọrụ. Iji chekwaa iwu ndị ahụ, ọ dị mkpa ka agbakwunye ha na faịlụ nhazi ma weghachite mgbe ịmaliteghachi ya. Nke iptables-azọpụta na iptables-weghachi Utilities nwere ike inye aka na nke a. Ka ịchekwaa iwu, tinye iwu:
iptables-save > /etc/iptables/rules.v4
Nke a na-echekwa iwu iptables dị ugbu a na faịlụ iwu.v4. Ka iweghachite mgbe ịmalitegharịrị, tinye:
iptables-restore < /etc/iptables/rules.v4
Iwu a na-eweghachi iwu site na faịlụ iwu.v4.
mmechi
Ịhazi Firewall na Linux site na iji firewalld ma ọ bụ iptables bụ akụkụ dị mkpa nke ịhụ na nchekwa nkesa. Ngwá ọrụ abụọ a na-enye ụzọ a pụrụ ịdabere na ya iji jikwaa okporo ụzọ netwọkụ yana ichekwa usoro ahụ site na ịnweta ikike na-enweghị ikike na mwakpo cyber. Nhọrọ n'etiti firewalld na iptables dabere na mkpa na mmasị nke onye ọrụ, na-atụle ọrụ dị iche iche na ike ha.