RHCSA seriýasy: FirewallD we Iptables ulanyp, Firewall Essentials we Network Traffic Control - 11-nji bölüm


Simpleönekeý sözler bilen aýdylanda, gorag diwary, öňünden kesgitlenen düzgünleriň toplumyna (meselem, paketiň barjak ýeri/çeşmesi ýa-da traffigiň görnüşi ýaly) torda gelýän we çykýan traffigi dolandyrýan howpsuzlyk ulgamydyr.

Bu makalada, firewalld-yň esaslaryny, Red Hat Enterprise Linux 7-de deslapky dinamiki firewall daemonyny we ulgam we ulgam dolandyryjylarynyň köpüsiniň gowy bilýän we elýeterli bolan Linux üçin miras gorag diwary hyzmaty bolan iptables hyzmatyny gözden geçireris. RHEL 7-de.

FirewallD we Iptables arasynda deňeşdirme

Kapotyň aşagynda, firewalld we iptables hyzmaty ýadrodaky netfilter çarçuwasy bilen birmeňzeş interfeýs arkaly gürleşýär, iptables buýrugy geň däldir. Şeýle-de bolsa, “iptables” hyzmatyndan tapawutlylykda, “firewalld” bar bolan birikmeler ýitmezden adaty ulgam işleýşi wagtynda sazlamalary üýtgedip biler.

Firewalld, işlemese-de, RHEL ulgamyňyzda deslapky gurnalan bolmaly. Aşakdaky buýruklar bilen barlap bilersiňiz (firewall-config ulanyjy interfeýsiniň konfigurasiýa guraly):

# yum info firewalld firewall-config

we,

# systemctl status -l firewalld.service

Beýleki tarapdan, iptables hyzmaty deslapky görnüşde däl, ýöne gurnalyp bilner.

# yum update && yum install iptables-services

Iki daemon hem başlap, adaty systemd buýruklary bilen başlamaga başlap bolýar:

# systemctl start firewalld.service | iptables-service.service
# systemctl enable firewalld.service | iptables-service.service

Şeýle hem okaň: Systemd hyzmatlaryny dolandyrmak üçin peýdaly buýruklar

Konfigurasiýa faýllary barada aýdylanda, iptables hyzmaty /etc/sysconfig/iptables ulanýar (paket ulgamyňyzda gurulmadyk bolsa bolmaz). Klaster düwünleri hökmünde ulanylýan RHEL 7 gutusynda bu faýl aşakdaky ýaly görünýär:

Firewalld öz konfigurasiýasyny /usr/lib/firewalld we /etc/firewalld iki katalogda saklaýar.

# ls /usr/lib/firewalld /etc/firewalld

Bu konfigurasiýa faýllaryny şu ýerde we ol ýerde birnäçe düzgün goşanymyzdan soň has giňişleýin öwreneris. Şu wagta çenli iki gural hakda has köp maglumat tapyp biljekdigiňizi ýatlatmak ýeterlikdir.

# man firewalld.conf
# man firewall-cmd
# man iptables

Mundan başga-da, Esasy buýruklary we ulgam resminamalaryny gözden geçirmegi ýatdan çykarmaň - häzirki seriýanyň 1-nji bölümi, men RHEL 7 ulgamyňyzda gurlan paketler barada maglumat alyp boljak birnäçe çeşmäni beýan etdim.

Ulgam traffigine gözegçilik etmek üçin Iptables ulanmak

“Iptables Firewall” -y “Linux Foundation Sertifikatly Inerener” (LFCE) seriýasynyň 8-nji bölümine ýüz tutup bilersiňiz, iptables-iň içerki görnüşleri barada ýadyňyzy täzelemezden ozal. Şeýlelik bilen, mysallara derrew böküp bileris.

TCP 80 we 443 portlary, Apache web serweri tarapyndan adaty (HTTP) we howpsuz (HTTPS) web trafigini dolandyrmak üçin ulanylýan deslapky portlardyr. Enp0s3 interfeýsindäki iki portuň üsti bilen gelýän we çykýan web trafigine aşakdaky ýaly rugsat berip bilersiňiz:

# iptables -A INPUT -i enp0s3 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
# iptables -A OUTPUT -o enp0s3 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
# iptables -A INPUT -i enp0s3 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
# iptables -A OUTPUT -o enp0s3 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT

Belli bir tordan gelýän traffigiň ähli (ýa-da käbir) görnüşlerini blokirlemeli wagtyňyz bolup biler, mysal üçin 192.168.1.0/24 diýiň:

# iptables -I INPUT -s 192.168.1.0/24 -j DROP

192.168.1.0/24 ulgamyndan gelýän ähli paketleri taşlar, şol bir wagtyň özünde,

# iptables -A INPUT -s 192.168.1.0/24 --dport 22 -j ACCEPT

diňe 22-nji port arkaly gelýän traffige rugsat berer.

RHEL 7 gutyňyzy diňe bir programma üpjünçiligi gorag diwary hökmünde däl-de, eýsem iki sany aýratyn toruň arasynda oturmagy üçin hakyky enjam esasly hem ulanýan bolsaňyz, ulgamyňyzda IP ugratmak eýýäm işledilen bolmaly. Notok bolsa, /etc/sysctl.conf redaktirlemeli we net.ipv4.ip_forward bahasyny aşakdaky ýaly kesgitlemeli:

net.ipv4.ip_forward = 1

soň üýtgeşmäni ýatda saklaň, tekst redaktoryňyzy ýapyň we üýtgetmäni ulanmak üçin aşakdaky buýrugy işlediň:

# sysctl -p /etc/sysctl.conf

Mysal üçin, 631-nji portda (çap serwerinde-de, gorag diwaryňyzda) CUPS hyzmaty diňlenýän IP 192.168.0.10 bilen içerki gutuda printer gurnalyp bilner. Gorag diwarynyň beýleki tarapyndaky müşderilerden çap isleglerini ugratmak üçin aşakdaky iptables düzgünini goşmaly:

# iptables -t nat -A PREROUTING -i enp0s3 -p tcp --dport 631 -j DNAT --to 192.168.0.10:631

“Iptables” -iň düzgünlerini yzygiderli okaýandygyny ýadyňyzdan çykarmaň, deslapky syýasatlaryň ýa-da soňraky düzgünleriň ýokardaky mysallarda görkezilenleri ýok etmejekdigine göz ýetiriň.

FirewallD bilen başlamak

Firewalld bilen girizilen üýtgeşmeleriň biri zonalardyr. Bu düşünje, ulanyjylary şol toruň içindäki enjamlara we traffige ýerleşdirmek kararyna gelen dürli zolaklara ynam ulgamlaryny bölmäge mümkinçilik berýär.

Işjeň zolaklary sanawlamak üçin:

# firewall-cmd --get-active-zones

Aşakdaky mysalda jemgyýetçilik zolagy işjeňdir we enp0s3 interfeýsi oňa awtomatiki bellendi. Belli bir zona barada ähli maglumatlary görmek üçin:

# firewall-cmd --zone=public --list-all

Zolaklar barada RHEL 7 Howpsuzlyk gollanmasynda has köp okap bilersiňiz, bu ýerde diňe käbir anyk mysallary sanap geçeris.

Goldaw edilýän hyzmatlaryň sanawyny almak üçin ulanyň.

# firewall-cmd --get-services

Gorag diwary arkaly http we https web traffigine derrew we soňraky aýakgaplarda täsirli bolmak üçin:

# firewall-cmd --zone=MyZone --add-service=http
# firewall-cmd --zone=MyZone --permanent --add-service=http
# firewall-cmd --zone=MyZone --add-service=https
# firewall-cmd --zone=MyZone --permanent --add-service=https
# firewall-cmd --reload

Kod> –zone ýok bolsa, deslapky zona (firewall-cmd –get-default-zona bilen barlap bilersiňiz) ulanylýar.

Düzgüni aýyrmak üçin ýokardaky buýruklarda aýyrmak sözüni aýyrmak bilen çalşyň.

Ilki bilen, islenýän zona üçin maskaradyň açykdygyny ýa-da ýokdugyny anyklamaly:

# firewall-cmd --zone=MyZone --query-masquerade

Aşakdaky suratda, maskaradyň daşarky zona üçin açykdygyny, ýöne köpçülige açyk däldigini görüp bileris:

Publica-da köpçülik üçin maskarading açyp bilersiňiz:

# firewall-cmd --zone=public --add-masquerade

ýa-da daşarda maskarad ulanmagy ulanyň. Ine, 3-nji mysaly firewalld bilen köpeltmek üçin näme ederis:

# firewall-cmd --zone=external --add-forward-port=port=631:proto=tcp:toport=631:toaddr=192.168.0.10

Gorag diwaryny täzeden açmagy ýatdan çykarmaň.

Goşmaça mysallary RHCSA seriýasynyň 9-njy bölüminde tapyp bilersiňiz, bu ýerde adatça web serweri we ftp serweri tarapyndan ulanylýan portlara nädip rugsat bermelidigini ýa-da öçürmelidigini we şol hyzmatlar üçin deslapky port bolanda degişli düzgüni nädip üýtgetmelidigini düşündirdik. üýtgedilýär. Mundan başga-da, goşmaça mysallar üçin firewalld wikisine ýüz tutup bilersiňiz.

Şeýle hem okaň: RHEL 7-de Firewall-y sazlamak üçin peýdaly FirewallD mysallary

Netije

Bu makalada gorag diwarynyň nämedigini, RHEL 7-de birini ýerine ýetirmek üçin elýeterli hyzmatlaryň bardygyny düşündirdik we bu meselä başlamaga kömek edip biljek birnäçe mysal getirdik. Teswirleriňiz, teklipleriňiz ýa-da soraglaryňyz bar bolsa, aşakdaky formany ulanyp bize habar beriň. Öňünden sag boluň!