Giunsa ang Pag-configure sa FirewallD sa RHEL, Rocky & AlmaLinux


Net-filter kay nahibal-an natong tanan nga kini usa ka firewall sa Linux. Ang Firewalld usa ka dinamikong daemon aron pagdumala sa mga firewall nga adunay suporta alang sa mga network zone. Sa una nga bersyon, RHEL & CentOS gigamit namon ang mga iptables ingon usa ka daemon alang sa balangkas sa pagsala sa pakete.

Sa mas bag-ong mga bersyon sa RHEL-based distributions sama sa Fedora, Rocky Linux, CentOS Stream, AlmaLinux, ug openSUSE – ang iptables interface gipulihan sa firewalld.

[ Tingali ganahan ka usab: 10 Mapuslanon nga Open Source Security Firewalls alang sa Linux Systems ]

Girekomenda nga magsugod sa paggamit sa Firewalld imbes sa mga iptables tungod kay kini mahimong mohunong sa umaabot. Bisan pa, ang mga iptable gisuportahan gihapon ug mahimong ma-install gamit ang yum command. Dili namo mahuptan ang Firewalld ug iptables sa samang sistema nga mahimong mosangpot sa panagsumpaki.

Sa iptables, nag-configure kami kaniadto isip INPUT, OUTPUT & FORWARD CHAINS apan dinhi sa Firewalld, ang konsepto naggamit sa mga Zone. Sa kasagaran, adunay lain-laing mga zone nga anaa sa firewalld, nga pagahisgutan niini nga artikulo.

Ang batakang sona nga sama sa pampublikong sona ug pribadong sona. Aron mahimo ang mga butang nga magamit sa kini nga mga zone, kinahanglan namon nga idugang ang interface nga adunay gitakda nga suporta sa zone ug pagkahuman mahimo namon nga idugang ang mga serbisyo sa firewalld.

Sa kasagaran, adunay daghang mga serbisyo nga magamit, usa sa labing kaayo nga bahin sa firewalld mao, kini adunay mga pre-defined nga serbisyo ug mahimo namon kini nga mga serbisyo ingon usa ka pananglitan aron madugangan ang among mga serbisyo pinaagi lamang sa pagkopya niini.

Ang Firewalld maayo kaayo sa IPv4, IPv6, ug Ethernet nga mga tulay usab. Mahimo kita adunay usa ka bulag nga run-time ug permanente nga configuration sa firewalld.

Magsugod kita kung giunsa ang pagtrabaho sa mga zone ug paghimo sa among kaugalingon nga mga serbisyo ug labi pa nga makapahinam nga paggamit sa firewalld sa Linux.

Operating System :	Red Hat Enterprise Linux release 9.0 (Plow)
IP Address       :	192.168.0.159
Host-name	:	tecmint-rhel9

Lakang 1: Pag-instalar sa Firewalld sa RHEL-based Systems

1. Ang firewalld nga pakete gi-install pinaagi sa default sa RHEL, Fedora, Rocky Linux, CentOS Stream, AlmaLinux, ug openSUSE. Kung dili, mahimo nimo kini i-install gamit ang mosunod nga yum command.

# yum install firewalld -y

2. Human ma-install ang firewalld nga pakete, panahon na aron mapamatud-an kung ang serbisyo sa iptables nagdagan o wala, kung nagdagan, kinahanglan nimo nga hunongon ug i-mask (dili na gamiton) ang serbisyo sa iptables nga adunay mga mando sa ubos.

# systemctl status iptables
# systemctl stop iptables
# systemctl mask iptables

Lakang 2: Pagsabot sa Firewalld Components (Mga Zone ug Mga Lagda)

3. Sa dili pa moadto alang sa pag-configure sa firewalld, gusto nakong hisgutan ang matag sona. Sa kasagaran, adunay pipila ka mga zone nga magamit. Kinahanglan natong i-assign ang interface sa zone. Ang usa ka sona naghubit sa sona nga gisaligan o gibalibaran nga lebel sa interface aron makakuha og koneksyon. Ang usa ka sona mahimong adunay mga serbisyo ug pantalan.

Dinhi, among ihulagway ang matag sona nga magamit sa Firewalld.

  • Drop Zone: Bisan unsang umaabot nga packet ihulog kung mogamit kami ug drop zone. Parehas kini sa among gigamit sa pagdugang iptables -j drop. Kung atong gamiton ang drop rule, nagpasabot nga walay tubag, ang outgoing network connections lang ang magamit.
  • Block Zone: Ang block zone modumili sa umaabot nga mga koneksyon sa network nga gisalikway nga adunay icmp-host-gidili. Ang mga establisado nga koneksyon lang sa sulod sa server ang tugutan.
  • Public Zone: Aron dawaton ang pinili nga mga koneksyon mahimo natong ipasabot ang mga lagda sa public zone. Kini magtugot lamang sa piho nga pantalan nga maablihan sa among server ang ubang mga koneksyon ihulog.
  • External Zone: Kini nga zone maglihok ingon nga mga opsyon sa router nga ang pagtakuban gi-enable ang ubang mga koneksyon mawala ug dili modawat, ug ang mga espesipikong koneksyon lang ang tugutan.
  • DMZ Zone: Kung kinahanglan namong tugutan ang pag-access sa pipila ka mga serbisyo ngadto sa publiko, mahimo nimo kini ipasabut sa DMZ zone. Kini usab adunay bahin sa mga pinili lamang nga umaabot nga koneksyon nga gidawat.
  • Work Zone: Niini nga zone, mahimo ra namo nga ipasabot ang internal nga network i.e. gitugutan ang trapiko sa pribadong network.
  • Home Zone: Kini nga sona espesyal nga gigamit sa mga lugar sa balay, mahimo namong gamiton kini nga sona aron sa pagsalig sa ubang mga kompyuter sa mga network nga dili makadaot sa imong kompyuter sama sa matag sona. Gitugotan usab niini ang pinili nga umaabot nga mga koneksyon.
  • Internal Zone: Kini nga usa susama sa work zone nga adunay pinili nga gitugot nga mga koneksyon.
  • Trusted Zone: Kung atong itakda ang trusted zone ang tanang trapiko madawat.

Karon aduna ka'y mas maayo nga ideya mahitungod sa mga sona, karon atong pangitaon ang anaa nga mga sona, ug mga default nga mga sona, ug ilista ang tanang mga sona gamit ang mosunod nga mga sugo.

# firewall-cmd --get-zones
# firewall-cmd --get-default-zone
# firewall-cmd --list-all-zones

Mubo nga sulat: Ang output sa sugo sa ibabaw dili mohaum sa usa ka panid kay kini maglista sa matag zones sama sa block, dmz, drop, external, home, internal, public, trusted, ug work. Kung ang mga sona adunay daghang mga lagda, ang mga serbisyo o pantalan nga magamit ilista usab kauban ang mga kasayuran sa sona.

Lakang 3: Pagbutang sa Default nga Firewalld Zone

4. Kung gusto nimong itakda ang default zone isip internal, external, drop, work, o bisan unsa nga zone, mahimo nimong gamiton ang ubos nga command aron itakda ang default zone. Dinhi among gigamit ang internal nga sona isip default.

# firewall-cmd --set-default-zone=internal

5. Human sa pag-set sa zone, pamatud-i ang default zone gamit ang ubos nga sugo.

# firewall-cmd --get-default-zone

6. Dinhi, ang among Interface mao ang enp0s3, Kung kinahanglan namon nga susihon ang sona diin ang interface gilimitahan mahimo namon gamiton ang mando sa ubos.

# firewall-cmd --get-zone-of-interface=enp0s3

7. Ang laing makapaikag nga bahin sa firewalld mao ang 'icmptype' kay usa sa mga tipo sa icmp nga gisuportahan sa firewalld. Aron makuha ang listahan sa gisuportahan nga mga tipo sa icmp mahimo natong gamiton ang ubos nga sugo.

# firewall-cmd --get-icmptypes

Lakang 4: Paghimo Kaugalingong Serbisyo sa Firewalld

8. Ang mga serbisyo usa ka hugpong sa mga lagda nga adunay mga pantalan ug mga kapilian nga gigamit sa Firewalld. Ang mga serbisyo nga gi-enable, awtomatiko nga ma-load kung ang serbisyo sa Firewalld nagdagan ug nagdagan.

Sa kasagaran, daghang mga serbisyo ang magamit, aron makuha ang lista sa tanan nga magamit nga mga serbisyo, gamita ang mosunud nga mando.

# firewall-cmd --get-services

9. Aron makuha ang lista sa tanan nga mga default nga magamit nga serbisyo, adto sa mosunud nga direktoryo, dinhi makuha nimo ang lista sa mga serbisyo.

# cd /usr/lib/firewalld/services/

10. Aron makahimo sa imong kaugalingon nga serbisyo, kinahanglan nimo nga ipasabut kini sa mosunod nga lokasyon. Pananglitan, dinhi gusto ko nga magdugang usa ka serbisyo alang sa RTMP port 1935, una maghimo usa ka kopya sa bisan unsang mga serbisyo.

# cd /etc/firewalld/services/
# cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/

Ug dayon, pag-navigate sa lokasyon kung diin gikopya ang among file sa serbisyo, sunod ilisan ang ngalan sa file nga 'ssh.xml' sa 'rtmp.xml' ingon sa gipakita sa litrato sa ubos.

# cd /etc/firewalld/services/
# mv ssh.xml rtmp.xml
# ls -l rtmp.xml

11. Sunod ablihi ug usba ang file isip Ulohan, Deskripsyon, Protocol, ug Port nga numero, nga kinahanglan natong gamiton alang sa serbisyo sa RTMP sama sa gipakita sa ubos nga hulagway.

12. Aron mapalihok kini nga mga pagbag-o, i-restart ang serbisyo sa firewalld, o i-reload ang mga setting.

# firewall-cmd --reload

13. Aron makumpirma, kung ang usa ka serbisyo gidugang o wala, padagana ang mando sa ubos aron makakuha usa ka lista sa mga serbisyo nga magamit.

# firewall-cmd --get-services

Lakang 5: Pag-assign sa mga Serbisyo sa Firewalld Zones

14. Dinhi atong tan-awon kon unsaon pagdumala ang firewall gamit ang firewall-cmd nga sugo. Aron mahibal-an ang kasamtangan nga kahimtang sa firewall ug ang tanan nga aktibo nga mga sona, i-type ang mosunod nga sugo.

# firewall-cmd --state
# firewall-cmd --get-active-zones

15. Para makuha ang public zone para sa interface enp0s3, kini ang default interface, nga gipasabot sa /etc/firewalld/firewalld.conf file nga DefaultZone= publiko.

Aron ilista ang tanang magamit nga serbisyo niining default interface zone.

# firewall-cmd --get-service

Lakang 6: Pagdugang Mga Serbisyo sa Firewalld Zones

16. Sa mga pananglitan sa ibabaw, nakita namon kung giunsa paghimo ang among kaugalingon nga mga serbisyo pinaagi sa paghimo sa serbisyo sa rtmp, dinhi makita namon kung giunsa usab idugang ang serbisyo sa rtmp sa sona.

# firewall-cmd --add-service=rtmp

17. Aron matangtang ang dugang nga sona, i-type.

# firewall-cmd --zone=public --remove-service=rtmp

Ang lakang sa ibabaw kay temporaryo lang. Aron mahimo kini nga permanente kinahanglan natong ipadagan ang ubos nga sugo nga adunay opsyon –permanent.

# firewall-cmd --add-service=rtmp --permanent
# firewall-cmd --reload

18. Ipasabot ang mga lagda alang sa network source range ug ablihi ang bisan asa sa mga pantalan. Pananglitan, kung gusto nimo magbukas sa usa ka network range isulti ang '192.168.0.0/24' ug port '1935' gamita ang mosunod nga mga sugo.

# firewall-cmd --permanent --add-source=192.168.0.0/24
# firewall-cmd --permanent --add-port=1935/tcp

Siguruha nga i-reload ang serbisyo sa firewalld pagkahuman sa pagdugang o pagtangtang sa bisan unsang mga serbisyo o pantalan.

# firewall-cmd --reload 
# firewall-cmd --list-all

Lakang 7: Pagdugang sa Firewalld Rich Rules para sa Network Range

19. Kung gusto nako tugutan ang mga serbisyo sama sa http, https, vnc-server, ug PostgreSQL, akong gamiton ang mosunod nga mga lagda. Una, idugang ang lagda ug himoa kini nga permanente ug i-reload ang mga lagda ug susihon ang kahimtang.

# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="http" accept' 
# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="http" accept' --permanent

# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="https" accept'
# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="https" accept' --permanent

# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="vnc-server" accept'
# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="vnc-server" accept' --permanent

# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="postgresql" accept'
# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="postgresql" accept' --permanent

Karon, ang Network range 192.168.0.0/24 makagamit sa serbisyo sa ibabaw gikan sa akong server. Ang opsyon nga –permanent mahimong gamiton sa matag lagda, apan kinahanglan natong ipasabot ang lagda ug susihon ang access sa kliyente pagkahuman kinahanglan namong himoon kini nga permanente.

20. Human sa pagdugang sa mga lagda sa ibabaw, ayaw kalimot sa pag-reload sa mga lagda sa firewall ug ilista ang mga lagda gamit ang:

# firewall-cmd --reload
# firewall-cmd --list-all

Aron mahibal-an ang dugang bahin sa Firewalld.

# man firewalld

Mao ra kana, nakita namon kung giunsa ang pag-set up sa usa ka net-filter gamit ang Firewalld sa mga distribusyon nga nakabase sa RHEL sama sa Fedora, Rocky Linux, CentOS Stream, AlmaLinux, ug openSUSE.

Ang net-filter mao ang balangkas alang sa usa ka firewall alang sa matag usa ug matag distribusyon sa Linux. Balik sa matag RHEL ug CentOS nga edisyon, gigamit namo ang mga iptable apan sa mas bag-ong mga bersyon, ilang gipaila ang Firewalld. Mas sayon sabton ug gamiton ang firewalld. Hinaot nalingaw ka sa pagsulat.