Giunsa ang Pag-install ug Pag-configure sa UFW - Usa ka Dili Kumplikado nga FireWall sa Debian/Ubuntu


Tungod kay ang mga kompyuter konektado sa usag usa, ang mga serbisyo paspas nga nagtubo. Ang Email, Social Media, Online Shop, Chat hangtod sa Web Conferencing mga serbisyo nga gigamit sa tiggamit. Apan sa pikas bahin kini nga koneksyon ganahan lang sa usa ka double-side nga kutsilyo. Posible usab nga magpadala ug dili maayo nga mga mensahe sa mga kompyuter sama sa Virus, malware, trojan-apps ang usa niini.

Ang Internet, ingon ang pinakadako nga network sa kompyuter dili kanunay nga puno sa maayong mga tawo. Aron masiguro nga luwas ang among mga kompyuter/server, kinahanglan namon kini panalipdan.

Usa sa kinahanglan nga adunay sangkap sa imong kompyuter/server mao ang Firewall. Gikan sa Wikipedia, ang kahulugan mao ang:

Sa pag-compute, ang firewall usa ka software o hardware-based nga network security system nga nagkontrol sa umaabot ug outgoing nga trapiko sa network pinaagi sa pag-analisar sa mga data packet ug pagtino kung kinahanglan ba kini nga tugutan o dili, base sa gipadapat nga lagda.

Ang Iptables usa sa firewall nga kaylap nga gigamit sa mga server. Kini usa ka programa nga gigamit sa pagdumala sa umaabot ug paggawas nga trapiko sa server base sa usa ka hugpong sa mga lagda. Kasagaran, ang kasaligan nga koneksyon lamang ang gitugotan nga makasulod sa server. Apan ang IPTables nagdagan sa console mode ug kini komplikado. Kadtong pamilyar sa mga lagda ug mga sugo sa iptables, mabasa nila ang mosunod nga artikulo nga naghulagway kung unsaon paggamit ang firewall sa iptables.

  1. Basic IPTables (Linux Firewall) Giya

Pag-instalar sa UFW Firewall sa Debian/Ubuntu

Aron makunhuran ang pagkakomplikado sa kung giunsa ang pag-set sa mga IPtables, adunay daghang mga atubangan. Kung nagdagan ka sa Ubuntu Linux, makit-an nimo ang ufw ingon usa ka default nga himan sa firewall. Magsugod ta sa pagsuhid bahin sa ufw firewall.

Ang ufw (Uncomplicated Firewall) usa ka frontend alang sa kadaghanan nga gigamit nga iptables firewall ug komportable kini alang sa mga firewall nga nakabase sa host. Ang ufw naghatag usa ka balangkas alang sa pagdumala sa netfilter, ingon usab naghatag usa ka interface sa command-line alang sa pagkontrol sa firewall. Naghatag kini nga user friendly ug dali gamiton nga interface alang sa mga bag-ong Linux nga dili kaayo pamilyar sa mga konsepto sa firewall.

Samtang, sa pikas nga bahin ang parehas nga komplikado nga mga mando makatabang sa mga administrador nga nagtakda kini mga komplikado nga mga lagda gamit ang interface sa linya sa command. Ang ufw kay upstream alang sa ubang mga distribusyon sama sa Debian, Ubuntu ug Linux Mint.

Una, susiha kung ang ufw na-install gamit ang mosunod nga sugo.

$ sudo dpkg --get-selections | grep ufw

ufw 		install

Kung wala kini ma-install, mahimo nimo kini i-install gamit ang apt command sama sa gipakita sa ubos.

$ sudo apt-get install ufw

Sa dili pa nimo gamiton, kinahanglan nimong susihon kung nagdagan ba ang ufw o wala. Gamita ang mosunod nga sugo aron masusi kini.

$ sudo ufw status

Kung nakit-an nimo ang Status: dili aktibo, kini nagpasabut nga dili kini aktibo o pag-disable.

Aron mahimo kini, kinahanglan nimo nga i-type ang mosunud nga mando sa terminal.

$ sudo ufw enable

Firewall is active and enabled on system startup

Aron ma-disable kini, i-type lang.

$ sudo ufw disable

Human ma-activate ang firewall mahimo nimong idugang ang imong mga lagda niini. Kung gusto nimo makita kung unsa ang mga default nga mga lagda, mahimo nimong i-type.

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

Sama sa imong nakita, pinaagi sa default ang matag umaabot nga koneksyon gibalibaran. Kung gusto nimo ipalayo ang imong makina nan kinahanglan nimo nga tugutan ang husto nga pantalan. Pananglitan gusto nimong tugutan ang koneksyon sa ssh. Ania ang sugo sa pagtugot niini.

$ sudo ufw allow ssh

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

Kung imong susihon pag-usab ang status, makakita ka og output nga sama niini.

$ sudo ufw status

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

Kung ikaw adunay daghang mga lagda, ug gusto nga ibutang ang mga numero sa matag lagda sa langaw, gamita ang parameter nga numero.

$ sudo ufw status numbered

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

Ang unang lagda nag-ingon nga ang umaabot nga koneksyon sa port 22 gikan sa Bisan asa, ang tcp o udp packets gitugotan. Unsa kaha kung gusto nimo tugutan ang tcp packet ra? Unya mahimo nimong idugang ang parameter tcp pagkahuman sa numero sa port. Ania ang usa ka pananglitan nga adunay sample nga output.

$ sudo ufw allow ssh/tcp

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

Ang parehas nga mga limbong gipadapat sa Deny rule. Ingnon ta nga gusto nimong isalikway ang lagda sa ftp. Mao nga kinahanglan ka lang mag-type.

$ sudo ufw deny ftp

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

Usahay kami adunay usa ka kostumbre nga pantalan nga wala nagsunod sa bisan unsang mga sumbanan. Ingnon ta nga usbon nato ang ssh port sa atong makina gikan sa 22, ngadto sa 2290. Unya aron tugotan ang port 2290, mahimo natong idugang kini sama niini.

$ sudo ufw allow

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

Posible usab nga imong idugang ang port-range sa lagda. Kung gusto namon nga ablihan ang pantalan gikan sa 2290 - 2300 nga adunay tcp protocol, nan ang mando mahimong sama niini.

$ sudo ufw allow 2290:2300/tcp

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

samtang kung gusto nimo gamiton ang udp, gamita lang ang mosunod nga sugo.

$ sudo ufw allow 2290:2300/udp

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

Palihug hinumdumi nga kinahanglan nimong ibutang ang 'tcp' o 'udp' nga klaro kung dili makakuha ka usa ka mensahe sa sayup nga parehas sa ubos.

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

Kaniadto nagdugang kami mga lagda base sa serbisyo o pantalan. Gitugotan ka usab sa Ufw nga magdugang mga lagda base sa IP Address. Ania ang sample nga sugo.

$ sudo ufw allow from 192.168.0.104

Mahimo usab nimo gamiton ang subnet mask aron mas lapad ang range.

$ 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

Sama sa imong nakita, gikan sa parameter limitahan lamang ang gigikanan sa koneksyon. Samtang ang destinasyon - nga girepresentahan sa To column - bisan asa. Mahimo usab nimo madumala ang destinasyon gamit ang parameter nga 'To'. Atong tan-awon ang sample aron tugotan ang pag-access sa port 22 (ssh).

$ sudo ufw allow to any port 22

Ang sugo sa ibabaw magtugot sa pag-access gikan sa bisan asa ug gikan sa bisan unsang protocol ngadto sa port 22.

Alang sa mas espesipikong mga lagda, mahimo usab nimo nga ikombinar ang IP Address, protocol ug port. Ingnon ta nga gusto namong maghimo og lagda nga limitahan ang koneksyon gikan lamang sa IP 192.168.0.104, protocol lamang nga tcp ug sa port 22. Unya ang sugo mahimong sama sa ubos.

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

Ang syntax sa paghimo sa deny rule parehas sa allow rule. Kinahanglan ra nimo nga usbon ang parameter gikan sa pagtugot sa pagdumili.

Usahay kinahanglan nimo nga papason ang imong kasamtangan nga lagda. Sa makausa pa sa ufw dali ra mapapas ang mga lagda. Gikan sa ibabaw nga sample, aduna kay lagda sa ubos ug gusto nimo kini papason.

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

Adunay duha ka paagi sa pagtangtang sa mga lagda.

Ang ubos nga sugo magwagtang sa mga lagda nga mohaum sa serbisyo ftp. Busa ang 21/tcp nga nagpasabot nga ftp port mapapas.

$ sudo ufw delete allow ftp

Apan kung gisulayan nimo nga tangtangon ang una nga lagda sa pananglitan sa ibabaw gamit ang sugo sa ubos.

$ sudo ufw delete allow ssh

Or 

$ sudo ufw delete allow 22/tcp

Mahimo nimong makit-an ang usa ka mensahe sa sayup sama sa.

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

Unya mahimo nimo kini nga limbong. Sama sa among gihisgutan sa ibabaw, mahimo nimong ipakita ang gidaghanon sa lagda aron ipakita kung unsang lagda ang gusto namon nga papason. Ipakita namo kini kanimo.

$ 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)

Dayon mahimo nimong papason ang unang lagda gamit. Pindota ang \y permanente nga mapapas ang lagda.

$ sudo ufw delete 1

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

Gikan sa mga pamaagi makita nimo ang kalainan. Ang pamaagi 2 mangutana sa kumpirmasyon sa user sa dili pa tangtangon ang lagda samtang ang pamaagi 1 dili.

Sa pila ka sitwasyon, mahimo nimong tangtangon/i-reset ang tanan nga mga lagda. Mahimo nimo kini pinaagi sa pag-type.

$ sudo ufw reset

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

Kung imong pug-on ang \y, i-backup sa ufw ang tanan nga naglungtad nga mga lagda sa dili pa buhaton ang pag-reset sa imong ufw. Ang pag-reset sa mga lagda dili usab magamit ang imong firewall. Kinahanglan nimo nga i-enable kini pag-usab kung gusto nimo gamiton.

Sama sa akong giingon sa ibabaw, ang ufw firewall makahimo sa bisan unsa nga mahimo sa iptables. Nahimo kini pinaagi sa paggamit sa lainlaing mga set sa mga file sa lagda, nga wala’y labi pa sa iptables-pagpahiuli sa angay nga mga file sa teksto. Ang maayo nga pag-tune sa ufw ug/o pagbutang ug dugang nga mga iptables nga mga sugo nga dili gitugotan pinaagi sa ufw nga sugo kay usa ka butang sa pag-edit sa daghang mga text file.

  1. /etc/default/ufw: Ang nag-unang configuration alang sa default nga mga polisiya, IPv6 nga suporta ug kernel modules.
  2. /etc/ufw/after[6].rules: ang mga lagda niini nga mga payl kalkulado human sa bisan unsang lagda nga idugang pinaagi sa ufw command.
  3. /etc/ufw/sysctl.conf: kernel network tunables.
  4. /etc/ufw/ufw.conf: nagtakda kung gi-enable ba o wala ang ufw sa boot ug gitakda ang LOGLEVEL.

Konklusyon

Ang UFW isip usa ka front-end sa mga iptable siguradong naghimo sa usa ka sayon nga interface sa user. Dili kinahanglan nga hinumdoman sa user ang komplikado nga iptables syntax. Gigamit usab sa UFW ang 'plain english' isip parameter niini.

Allow, deny, reset mao ang usa niini. Nagtuo ko nga adunay daghan pang mga iptables nga front-end didto. Apan siguradong ang ufw usa sa labing kaayo nga alternatibo alang sa mga tiggamit nga gusto nga i-setup ang ilang firewall nga paspas, dali ug siyempre luwas. Palihug bisitaha ang manwal nga panid sa ufw pinaagi sa pag-type sa man ufw alang sa dugang nga detalye.