Jinsi ya Kufanya Uchujaji wa Pakiti, Tafsiri ya Anwani ya Mtandao na Kuweka Vigezo vya Muda wa Kuendesha Kernel - Sehemu ya 2


Kama ilivyoahidiwa katika Sehemu ya 1 (\Weka Njia Tuli ya Mtandao), katika makala haya (Sehemu ya 2 ya mfululizo wa RHCE) tutaanza kwa kutambulisha kanuni za uchujaji wa pakiti na tafsiri ya anwani ya mtandao (NAT) katika Red Hat Enterprise Linux 7, kabla ya hapo. kupiga mbizi katika kuweka vigezo vya wakati wa kukimbia ili kurekebisha tabia ya kernel inayoendesha ikiwa hali fulani zitabadilika au mahitaji yatatokea.

Kuchuja Pakiti ya Mtandao katika RHEL 7

Tunapozungumza juu ya uchujaji wa pakiti, tunarejelea mchakato unaofanywa na firewall ambayo inasoma kichwa cha kila pakiti ya data inayojaribu kupita. Kisha, huchuja pakiti kwa kuchukua hatua zinazohitajika kulingana na sheria ambazo zimeelezwa hapo awali na msimamizi wa mfumo.

Kama unavyojua, kuanzia na RHEL 7, huduma chaguo-msingi inayodhibiti sheria za ngome ni firewalld. Kama iptables, inazungumza na moduli ya kichungi cha netfilter kwenye kinu cha Linux ili kuchunguza na kuendesha pakiti za mtandao. Tofauti na iptables, masasisho yanaweza kuanza kutumika mara moja bila kukatiza miunganisho amilifu - huhitaji hata kuanzisha upya huduma.

Faida nyingine ya firewalld ni kwamba inaturuhusu kufafanua sheria kulingana na majina ya huduma yaliyosanidiwa mapema (zaidi juu ya hilo kwa dakika moja).

Katika Sehemu ya 1, tulitumia hali ifuatayo:

Hata hivyo, utakumbuka kwamba tulizima ngome kwenye kipanga njia #2 ili kurahisisha mfano kwa kuwa bado hatujashughulikia uchujaji wa pakiti. Hebu tuone sasa jinsi tunavyoweza kuwezesha pakiti zinazoingia zinazolengwa kwa ajili ya huduma maalum au mlango mahali unakoenda.

Kwanza, hebu tuongeze sheria ya kudumu ya kuruhusu trafiki inayoingia katika enp0s3 (192.168.0.19) hadi enp0s8 (10.0.0.18):

# firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i enp0s3 -o enp0s8 -j ACCEPT

Amri iliyo hapo juu itahifadhi sheria kwa /etc/firewalld/direct.xml:

# cat /etc/firewalld/direct.xml

Kisha wezesha sheria ianze kutumika mara moja:

# firewall-cmd --direct --add-rule ipv4 filter FORWARD 0 -i enp0s3 -o enp0s8 -j ACCEPT

Sasa unaweza kupigia seva ya wavuti kutoka kwa kisanduku cha RHEL 7 na kuendesha tcpdump tena ili kufuatilia trafiki ya TCP kati ya mashine hizi mbili, wakati huu ngome katika kipanga njia #2 imewashwa.

# telnet 10.0.0.20 80
# tcpdump -qnnvvv -i enp0s3 host 10.0.0.20

Je, ikiwa ungependa kuruhusu tu miunganisho inayoingia kwa seva ya wavuti (bandari 80) kutoka 192.168.0.18 na kuzuia miunganisho kutoka kwa vyanzo vingine katika mtandao wa 192.168.0.0/24?

Katika firewall ya seva ya wavuti, ongeza sheria zifuatazo:

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

Sasa unaweza kutuma maombi ya HTTP kwa seva ya wavuti, kutoka 192.168.0.18 na kutoka kwa mashine nyingine mnamo 192.168.0.0/24. Katika kesi ya kwanza, unganisho unapaswa kukamilika kwa mafanikio, wakati katika pili utaisha.

Kwa kufanya hivyo, amri yoyote ifuatayo itafanya hila:

# telnet 10.0.0.20 80
# wget 10.0.0.20

Ninakushauri kwa nguvu uangalie hati za Lugha Tajiri ya Firewalld katika Wiki ya Mradi wa Fedora kwa maelezo zaidi kuhusu sheria tajiri.

Tafsiri ya Anwani ya Mtandao katika RHEL 7

Tafsiri ya Anwani ya Mtandao (NAT) ni mchakato ambapo kikundi cha kompyuta (inaweza pia kuwa moja tu kati yao) katika mtandao wa kibinafsi hupewa anwani ya kipekee ya IP ya umma. Kwa hivyo, bado wanatambulishwa kwa njia ya kipekee na anwani zao za kibinafsi za IP ndani ya mtandao lakini kwa nje zote zinaonekana sawa.