Otu esi etinye ma hazie UFW - FireWall enweghị mgbagwoju anya na Debian/Ubuntu


Ebe ọ bụ na kọmputa jikọtara ibe ya, ọrụ na-eto ngwa ngwa. Email, Social Media, Ụlọ ahịa n'ịntanetị, kparịta ụka ruo mgbe mkparịta ụka webụ bụ ọrụ onye ọrụ na-eji. Mana n'akụkụ nke ọzọ njikọ a na-amasị mma akụkụ abụọ. Ọ dịkwa ike izipu ozi ọjọọ na kọmputa ndị ahụ dị ka Nje Virus, malware, trojan-apps bụ otu n'ime ha.

Ịntanetị, dị ka netwọk kọmputa kasị ukwuu adịghị jupụta na ndị ezigbo mmadụ mgbe niile. Iji jide n'aka na kọmputa/sava anyị adịghị mma, anyị kwesịrị ichekwa ya.

Otu n'ime ihe ga-enwerịrị na kọmputa/sava gị bụ Firewall. Site na Wikipedia, nkọwa bụ:

N'ịgbakọ, firewall bụ sọftụwia ma ọ bụ sistemụ nchekwa netwọkụ dabere na ngwaike nke na-achịkwa okporo ụzọ netwọkụ na-abata na nke na-apụ apụ site na nyocha ngwugwu data wee chọpụta ma ekwesịrị ịhapụ ha ma ọ bụ na agaghị ekwe ya, dabere na usoro iwu etinyere n'ọrụ.

Iptables bụ otu n'ime firewall nke sava na-ejikarị eme ihe. Ọ bụ mmemme eji ejikwa okporo ụzọ na-abata na nke na-apụ apụ na nkesa dabere na usoro iwu. N'ozuzu, naanị njikọ ntụkwasị obi ka a na-ahapụ ịbanye na nkesa. Mana IPTables na-agba ọsọ na ọnọdụ njikwa na ọ gbagwojuru anya. Ndị maara iwu na iwu iptables, ha nwere ike ịgụ isiokwu na-esonụ nke na-akọwa otu esi eji iptables firewall.

  1. Ntụziaka IPTables (Linux Firewall)

Ntinye UFW Firewall na Debian/Ubuntu

Iji belata mgbagwoju anya otu esi edobe IPTables, enwere ọtụtụ ihu. Ọ bụrụ na ị na-agba ọsọ Ubuntu Linux, ị ga-ahụ ufw dị ka ngwa firewall ndabara. Ka anyị malite inyocha maka ufw firewall.

Ufw (Firewall na-enweghị mgbagwoju anya) bụ ihu n'ihu maka firewall iptables nke a na-ejikarị eme ihe yana ọ dị mma maka ọkụ ọkụ na-akwado ndị ọbịa. ufw na-enye usoro maka ijikwa netfilter, yana na-enye interface akara iwu maka ịchịkwa firewall. Ọ na-enye onye ọrụ enyi na enyi na mfe iji interface maka Linux newbies ndị na-amaghị nke ọma na firewall echiche.

Ebe, n'akụkụ nke ọzọ, otu iwu mgbagwoju anya na-enyere ndị nchịkwa aka ịtọ iwu mgbagwoju anya site na iji interface ahịrị iwu. Ufw bụ nkwalite maka nkesa ndị ọzọ dị ka Debian, Ubuntu na Linux Mint.

Nke mbụ, lelee ma arụnyere ufw site na iji iwu na-esonụ.

$ sudo dpkg --get-selections | grep ufw

ufw 		install

Ọ bụrụ na etinyeghị ya, ịnwere ike ịwụnye ya site na iji iwu dabara adaba dị ka egosiri n'okpuru.

$ sudo apt-get install ufw

Tupu i jiri, ị kwesịrị ịlele ma ufw na-agba ọsọ ma ọ bụ na ọ bụghị. Jiri iwu a ka ịlele ya.

$ sudo ufw status

Ọ bụrụ na ịchọta ọnọdụ: adịghị arụ ọrụ, ọ pụtara na ọ naghị arụ ọrụ ma ọ bụ gbanyụọ.

Iji mee ya, naanị ị ga-apịnye iwu a na njedebe.

$ sudo ufw enable

Firewall is active and enabled on system startup

Iji gbanyụọ ya, naanị pịnye.

$ sudo ufw disable

Mgbe agbanyere firewall, ị nwere ike itinye iwu gị n'ime ya. Ọ bụrụ na ịchọrọ ịhụ ihe bụ iwu ndabara, ị nwere ike pịnye.

$ sudo ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
$

Dịka ị na-ahụ, na ndabara, a na-ajụ njikọ ọ bụla na-abata. Ọ bụrụ na ịchọrọ imegharị igwe gị, ị ga-ahapụ ọdụ ụgbọ mmiri kwesịrị ekwesị. Dịka ọmụmaatụ, ịchọrọ ịhapụ njikọ ssh. Nke a bụ iwu ka ikwe ya.

$ sudo ufw allow ssh

[sudo] password for pungki :
Rule added
Rule added (v6)
$

Ọ bụrụ na ịlele ọkwa ahụ ọzọ, ị ga-ahụ mmepụta dị ka nke a.

$ sudo ufw status

To 		Action 			From
-- 		----------- 		------
22 		ALLOW 			Anywhere
22 		ALLOW 			Anywhere (v6)

Ọ bụrụ na ị nwere ọtụtụ iwu, ma chọọ itinye nọmba na iwu ọ bụla na ofufe, jiri akara akara.

$ sudo ufw status numbered

To 		Action 			From
------ 		----------- 		------
[1] 22 		ALLOW 			Anywhere
[2] 22 		ALLOW 			Anywhere (v6)

Iwu nke mbụ na-ekwu na njikọ na-abata na ọdụ ụgbọ mmiri 22 site na Ebe ọ bụla, a na-ahapụ ma tcp ma ọ bụ udp ngwugwu. Kedu ihe ma ọ bụrụ na ịchọrọ ịhapụ naanị ngwugwu tcp? Mgbe ahụ ị nwere ike itinye parameter tcp mgbe nọmba ọdụ ụgbọ mmiri gasịrị. Nke a bụ ọmụmaatụ nwere mmepụta sample.

$ sudo ufw allow ssh/tcp

To 		Action 			From
------ 		----------- 		------
22/tcp 		ALLOW 			Anywhere
22/tcp 		ALLOW 			Anywhere (v6)

A na-etinyekwa otu aghụghọ ahụ na ịgọnarị ọchịchị. Ka anyị kwuo na ịchọrọ ịgọnarị iwu ftp. Yabụ na ị ga-apịpị naanị.

$ sudo ufw deny ftp

To 		Action 			From
------ 		----------- 		------
21/tcp 		DENY 			Anywhere
21/tcp 		DENY 			Anywhere (v6)

Mgbe ụfọdụ anyị na-enwe ọdụ ụgbọ mmiri omenala nke na-adịghị agbaso ụkpụrụ ọ bụla. Ka anyị kwuo na anyị na-agbanwe ọdụ ụgbọ mmiri ssh na igwe anyị site na 22, n'ime 2290. Mgbe ahụ iji kwe ka ọdụ ụgbọ mmiri 2290, anyị nwere ike ịgbakwunye ya dị ka nke a.

$ sudo ufw allow

To 		Action 			From
-- 		----------- 		------
2290 		ALLOW 			Anywhere
2290 		ALLOW 			Anywhere (v6)

Ọ ga-ekwekwa gị omume ịgbakwunye ọdụ ụgbọ mmiri n'ime iwu. Ọ bụrụ na anyị chọrọ imeghe ọdụ ụgbọ mmiri site na 2290 - 2300 na tcp protocol, mgbe ahụ iwu ahụ ga-adị ka nke a.

$ sudo ufw allow 2290:2300/tcp

To 			Action 			From
------ 			----------- 		------
2290:2300/tcp 		ALLOW 			Anywhere
2290:2300/tcp 		ALLOW			Anywhere (v6)

mgbe ọ bụrụ na ịchọrọ iji udp, jiri naanị iwu a.

$ sudo ufw allow 2290:2300/udp

To 			Action 			From
------ 			----------- 		------
2290:2300/udp 		ALLOW 			Anywhere
2290:2300/udp 		ALLOW			Anywhere (v6)

Biko cheta na ị ga-etinye 'tcp' ma ọ bụ 'udp' n'ụzọ doro anya ma ọ bụghị na ị ga-enweta ozi njehie yiri nke dị n'okpuru.

ERROR: Must specify ‘tcp’ or ‘udp’ with multiple ports

Na mbụ, anyị agbakwunyela iwu dabere na ọrụ ma ọ bụ ọdụ ụgbọ mmiri. Ufw na-enyekwa gị ohere itinye iwu dabere na adreesị IP. Nke a bụ iwu nlele.

$ sudo ufw allow from 192.168.0.104

Ị nwekwara ike iji nkpuchi subnet iji gbasaa oke.

$ sudo ufw allow form 192.168.0.0/24

To 		Action 			From
-- 		----------- 		------
Anywhere	ALLOW 			192.168.0.104
Anywhere	ALLOW 			192.168.0.0/24

Dịka ị na-ahụ, site na paramita ga-amachi naanị isi iyi njikọ. Ebe ebe ebe a na-aga - nke To kọlụm nọchiri anya ya - bụ ebe ọ bụla. Ị nwekwara ike ijikwa 'To' parameter jikwaa ebe a na-aga. Ka anyị hụ ihe atụ iji kwe ka ịnweta ọdụ ụgbọ mmiri 22 (ssh).

$ sudo ufw allow to any port 22

Iwu a dị n'elu ga-enye ohere ịnweta ebe ọ bụla yana site na protocol ọ bụla gaa na ọdụ ụgbọ mmiri 22.

Maka iwu ndị ọzọ akọwapụtara, ị nwekwara ike ijikọta Adreesị IP, protocol na ọdụ ụgbọ mmiri. Ka anyị kwuo na anyị chọrọ ịmepụta iwu na-amachi njikọ naanị site na IP 192.168.0.104, naanị protocol tcp na ọdụ ụgbọ mmiri 22. Mgbe ahụ iwu ahụ ga-adị ka n'okpuru.

$ sudo ufw allow from 192.168.0.104 proto tcp to any port 22

Syntax imepụta iwu agọnarị yiri iwu ikike. Naanị ị ga-achọ ịgbanwe oke site na ikwe ka agọnahụ.

Mgbe ụfọdụ ị nwere ike ihichapụ iwu gị dị ugbu a. Ọzọkwa na ufw ọ dị mfe ihichapụ iwu. Site na nlele elu, ị nwere iwu dị n'okpuru ma ịchọrọ ihichapụ ya.

To 		Action 			From
-- 		----------- 		------
22/tcp		ALLOW 			192.168.0.104
21/tcp		ALLOW 			Anywhere
21/tcp 		ALLOW 			Anywhere (v6)

Enwere ụzọ abụọ nke ihichapụ iwu.

Iwu dị n'okpuru ga-ehichapụ iwu dabara na ọrụ ftp. Ya mere, 21/tcp nke pụtara ftp ọdụ ụgbọ mmiri ga-ehichapụ.

$ sudo ufw delete allow ftp

Mana mgbe ị gbalịrị ihichapụ iwu mbụ na ihe atụ dị n'elu site na iji iwu dị n'okpuru.

$ sudo ufw delete allow ssh

Or 

$ sudo ufw delete allow 22/tcp

Ị nwere ike ịhụ ozi njehie dịka.

Could not delete non-existent rule
Could not delete non-existent rule (v6)

Mgbe ahụ ị nwere ike ime aghụghọ a. Dịka anyị kwuru n'elu, ị nwere ike igosi ọnụọgụ nke iwu iji gosi iwu nke anyị chọrọ ihichapụ. Ka anyị gosi gị ya.

$ sudo ufw status numbered

To 		Action 			From
-- 		----------- 		------
[1] 22/tcp		ALLOW 			192.168.0.104
[2] 21/tcp		ALLOW 			Anywhere
[3] 21/tcp 		ALLOW 			Anywhere (v6)

Mgbe ahụ ị nwere ike ihichapụ iwu mbụ site na iji. Pịa \y ga-ehichapụ iwu ahụ kpamkpam.

$ sudo ufw delete 1

Deleting :
Allow from 192.168.0.104 to any port 22 proto tcp
Proceed with operation (y|n)? y

Site na usoro ndị ahụ ị ga-ahụ ihe dị iche. Usoro 2 ga-ajụ nkwenye onye ọrụ tupu ihichapụ iwu mgbe usoro 1 abụghị.

N'ọnọdụ ụfọdụ, ịnwere ike ihichapụ/tọgharịa iwu niile. Ị nwere ike ime ya site na ịpị.

$ sudo ufw reset

Resetting all rules to installed defaults. Proceed with operation (y|n)? y

Ọ bụrụ na ịpị \y, mgbe ahụ, ufw ga-akwado iwu niile dị tupu ịmegharịa ufw gị. Ịtọgharịa iwu ahụ ga-ewepụkwa firewall gị, ịkwesịrị ịme ya ọzọ ma ọ bụrụ na ịchọrọ iji ya.

Dịka m kwuru n'elu, ufw firewall nwere ike ime ihe ọ bụla iptables nwere ike ime. A na-arụzu nke a site na iji faịlụ iwu dị iche iche, nke na-abụghị ihe ọ bụla karịa iptables-weghachite faịlụ ederede kwesịrị ekwesị. Nhazi ufw na/ma ọ bụ itinye iwu iptables ndị ọzọ anaghị anabata site na iwu ufw bụ okwu nke idezi ọtụtụ faịlụ ederede.

  1. /etc/default/ufw: Nhazi isi maka atumatu ndabara, nkwado IPv6 na modul kernel.
  2. /etc/ufw/before[6].iwu: A na-agbakọ iwu dị na faịlụ ndị a tupu iwu ọ bụla agbakwunyere site na iwu ufw.
  3. /etc/ufw/after[6].iwu: A na-agbakọ iwu dị na faịlụ ndị a mgbe iwu ọ bụla agbakwunyere site na iwu ufw.
  4. /etc/ufw/sysctl.conf: kernel network tunables.
  5. /etc/ufw/ufw.conf: na-ahazi ma agbanyere ufw na buut wee tọọ LOGLEVEL.

Mmechi

UFW dị ka njedebe n'ihu na iptables na-eme ka onye ọrụ dị mfe. Onye ọrụ adịghị mkpa icheta syntax iptables gbagwojuru anya. UFW na-ejikwa 'plain bekee' dị ka oke ya.

Kwe ka, jụ, nrụpụta bụ otu n'ime ha. Ekwenyere m na enwere ọtụtụ iptables n'ihu-ọgwụgwụ n'ebe ahụ. Mana n'ezie ufw bụ otu n'ime ụzọ kachasị mma maka ndị ọrụ chọrọ ịtọlite firewall ha ngwa ngwa, dị mfe yana nchekwa. Biko gaa na ibe akwụkwọ ntuziaka ufw site na ịpị man ufw maka nkọwa ndị ọzọ.