RHCE sērija: statiskā tīkla maršrutēšanas iestatīšana un pārbaude - 1. daļa


RHCE (Red Hat Certified Engineer) ir uzņēmuma Red Hat sertifikāts, kas uzņēmuma sabiedrībai piešķir atvērtā koda operētājsistēmu un programmatūru, kā arī sniedz apmācības, atbalsta un konsultāciju pakalpojumus uzņēmumiem.

Šis RHCE (Red Hat sertificētais inženieris) ir uz rezultātiem balstīts eksāmens (kods EX300), kuram ir papildu prasmes, zināšanas un spējas, kas nepieciešamas vecākajam sistēmas administratoram, kurš ir atbildīgs par Red Hat Enterprise Linux (RHEL) sistēmām.

Svarīgi: lai iegūtu RHCE sertifikātu, nepieciešama Red Hat sertificētās sistēmas administratora (RHCSA) sertifikācija.

Tālāk ir minēti eksāmena mērķi, kuru pamatā ir Red Hat Enterprise Linux 7 eksāmena versija, kas tiks aplūkota šajā RHCE sērijā:

Lai skatītu maksu un reģistrētos eksāmenam savā valstī, skatiet RHCE sertifikācijas lapu.

Šajā un nākamajā RHCE sērijas 1. daļā mēs parādīsim pamata, tomēr tipiskus gadījumus, kad tiek izmantoti statiskās maršrutēšanas, pakešu filtrēšanas un tīkla adrešu tulkošanas principi.

Lūdzu, ņemiet vērā, ka mēs tos nepadarīsim padziļināti, bet drīzāk kārtosim šo saturu tā, lai būtu noderīgi spert pirmos soļus un veidot no turienes.

Statiskā maršrutēšana pakalpojumā Red Hat Enterprise Linux 7

Viens no mūsdienu tīkla veidošanas brīnumiem ir plaša ierīču pieejamība, kas var savienot datoru grupas neatkarīgi no tā, vai tās ir salīdzinoši maz un tikai vienā telpā vai vairākās mašīnās vienā ēkā, pilsētā, valstī vai visā kontinentā.

Tomēr, lai to efektīvi paveiktu jebkurā situācijā, tīkla paketes ir jāpārraida vai, citiem vārdiem sakot, kaut kā jānosaka ceļš, pa kuru tās iet no avota līdz galamērķim.

Statiskā maršrutēšana ir maršruta norādīšana tīkla paketēm, kas nav noklusējuma, un ko nodrošina tīkla ierīce, kas pazīstama kā noklusējuma vārteja. Ja vien ar statisko maršrutēšanu nav norādīts citādi, tīkla paketes tiek novirzītas uz noklusējuma vārteju; izmantojot statisko maršrutēšanu, citi ceļi tiek noteikti, pamatojoties uz iepriekš definētiem kritērijiem, piemēram, pakešu galamērķi.

Definēsim šo apmācības scenāriju. Mums ir Red Hat Enterprise Linux 7 lodziņš, kas savieno ar maršrutētāju Nr. 1 [192.168.0.1], lai piekļūtu internetam un mašīnām 192.168.0.0/24.

Otrajā maršrutētājā (maršrutētājā Nr. 2) ir divas tīkla saskarnes kartes: enp0s3 ir pievienots arī maršrutētājam Nr. 1, lai piekļūtu internetam un sazinātos ar lodziņu RHEL 7 un citām mašīnām tajā pašā tīklā, bet tiek izmantots otrs (enp0s8). piešķirt piekļuvi 10.0.0.0/24 tīklam, kurā atrodas iekšējie pakalpojumi, piemēram, tīmekļa un/vai datu bāzes serveris.

Šis scenārijs ir parādīts diagrammā:

Šajā rakstā mēs koncentrēsimies tikai uz maršrutēšanas tabulas iestatīšanu mūsu RHEL 7 lodziņā, lai pārliecinātos, ka tā var gan piekļūt internetam, izmantojot maršrutētāju Nr. 1, gan iekšējo tīklu, izmantojot maršrutētāju Nr. 2.

RHEL 7 izmantosiet komandu ip, lai konfigurētu un parādītu ierīces un maršrutēšanu, izmantojot komandrindu. Šīs izmaiņas var darboties uzreiz uz darbojošās sistēmas, taču, tā kā tās netiek atkārtoti palaistas atkārtoti, mēs konfigurācijas neatgriezeniskai saglabāšanai izmantosim ifcfg-enp0sX un route-enp0sX failus/etc/sysconfig/network-scripts.

Lai sāktu, izdrukāsim pašreizējo maršrutēšanas tabulu:

# ip route show

No iepriekš minētās izejas mēs varam redzēt šādus faktus:

  1. Noklusējuma vārtejas IP adrese ir 192.168.0.1, un tai var piekļūt, izmantojot enp0s3 NIC.
  2. Kad sistēma tika palaista, tā ļāva zeroconf ceļu uz 169.254.0.0/16 (tikai katram gadījumam). Dažos vārdos, ja iekārta ir iestatīta iegūt IP adresi, izmantojot DHCP, bet kāda iemesla dēļ to nedara, tai šajā tīklā tiek automātiski piešķirta adrese. Visbeidzot, šis ceļš ļaus mums sazināties, arī izmantojot enp0s3, ar citām mašīnām, kurām neizdevās iegūt IP adresi no DHCP servera.
  3. Visbeidzot, bet ne mazāk svarīgi, mēs varam sazināties ar citām kastēm 192.168.0.0/24 tīklā, izmantojot enp0s3, kura IP adrese ir 192.168.0.18.

Šie ir tipiskie uzdevumi, kas jums būtu jāveic šādā iestatījumā. Ja vien nav norādīts citādi, maršrutētājā Nr. 2 jāveic šādi uzdevumi:

Pārliecinieties, vai visi NIC ir pareizi instalēti:

# ip link show

Ja kāds no viņiem ir nolaists, audziniet to:

# ip link set dev enp0s8 up

un piešķiriet tai 10.0.0.0/24 tīkla IP adresi:

# ip addr add 10.0.0.17 dev enp0s8

Hmm ... Mēs pieļāvām kļūdu IP adresē. Mums būs jānoņem iepriekš piešķirtais un pēc tam jāpievieno pareizais (10.0.0.18):

# ip addr del 10.0.0.17 dev enp0s8
# ip addr add 10.0.0.18 dev enp0s8

Lūdzu, ņemiet vērā, ka maršrutu galamērķa tīklā var pievienot tikai caur vārteju, kas pati par sevi jau ir sasniedzama. Šī iemesla dēļ mums ir jāpiešķir IP adrese diapazonā 192.168.0.0/24 vietnei enp0s3, lai mūsu RHEL 7 lodziņš varētu ar to sazināties:

# ip addr add 192.168.0.19 dev enp0s3

Visbeidzot, mums būs jāiespējo pakešu pārsūtīšana:

# echo "1" > /proc/sys/net/ipv4/ip_forward

un apturiet/atspējojiet (tikai pagaidām - līdz paketes filtrēšana tiks aplūkota nākamajā rakstā) ugunsmūri:

# systemctl stop firewalld
# systemctl disable firewalld

Atpakaļ mūsu RHEL 7 lodziņā (192.168.0.18), konfigurēsim maršrutu no 10.0.0.0/24 līdz 192.168.0.19 (enp0s3 maršrutētājā Nr. 2):

# ip route add 10.0.0.0/24 via 192.168.0.19

Pēc tam maršrutēšanas tabula izskatās šādi:

# ip route show

Tāpat pievienojiet atbilstošo maršrutu mašīnā (-ēs), kuru (-s) mēģināt sasniegt ar 10.0.0.0/24

# ip route add 192.168.0.0/24 via 10.0.0.18

Varat pārbaudīt pamata savienojamību, izmantojot ping:

Lodziņā RHEL 7 palaidiet

# ping -c 4 10.0.0.20

kur 10.0.0.20 ir tīmekļa servera IP adrese tīklā 10.0.0.0/24.

Tīmekļa serverī (10.0.0.20) palaidiet

# ping -c 192.168.0.18

kur 192.168.0.18 ir, kā jūs atceraties, mūsu RHEL 7 iekārtas IP adrese.

Alternatīvi, mēs varam izmantot tcpdump (iespējams, jums tas būs jāinstalē ar yum install tcpdump), lai pārbaudītu divvirzienu sakarus, izmantojot TCP starp mūsu lodziņu RHEL 7 un tīmekļa serveri 10.0.0.20.

Lai to izdarītu, sāksim reģistrēšanu pirmajā mašīnā ar:

# tcpdump -qnnvvv -i enp0s3 host 10.0.0.20

un no cita tās pašas sistēmas termināļa pārsūtīsim telnet uz 80 portu tīmekļa serverī (pieņemot, ka Apache klausās šajā portā; pretējā gadījumā norādiet pareizo portu šādā komandā):

# telnet 10.0.0.20 80

Tcpdump žurnālam vajadzētu izskatīties šādi:

Kur savienojums ir pareizi inicializēts, kā to varam noteikt, aplūkojot divvirzienu sakarus starp mūsu RHEL 7 lodziņu (192.168.0.18) un tīmekļa serveri (10.0.0.20).

Lūdzu, atcerieties, ka šīs izmaiņas izzudīs, restartējot sistēmu. Ja vēlaties tos padarīt pastāvīgus, jums būs jārediģē (vai jāizveido, ja tādu vēl nav, šie faili, tajās pašās sistēmās, kur mēs veicām iepriekš minētās komandas.

Lai gan tas nav absolūti nepieciešams mūsu testa gadījumam, jums jāzina, ka/etc/sysconfig/network satur visas sistēmas tīkla parametrus. Tipisks/etc/sysconfig/network izskatās šādi:

# Enable networking on this system?
NETWORKING=yes
# Hostname. Should match the value in /etc/hostname
HOSTNAME=yourhostnamehere
# Default gateway
GATEWAY=XXX.XXX.XXX.XXX
# Device used to connect to default gateway. Replace X with the appropriate number.
GATEWAYDEV=enp0sX

Runājot par konkrētu mainīgo un vērtību iestatīšanu katram NIC (kā mēs to darījām 2. maršrutētājam), jums būs jārediģē/etc/sysconfig/network-scripts/ifcfg-enp0s3 un/etc/sysconfig/network-scripts/ifcfg -enp0s8.

Pēc mūsu lietas

TYPE=Ethernet
BOOTPROTO=static
IPADDR=192.168.0.19
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
NAME=enp0s3
ONBOOT=yes

un

TYPE=Ethernet
BOOTPROTO=static
IPADDR=10.0.0.18
NETMASK=255.255.255.0
GATEWAY=10.0.0.1
NAME=enp0s8
ONBOOT=yes

attiecīgi enp0s3 un enp0s8.

Kas attiecas uz maršrutēšanu mūsu klienta mašīnā (192.168.0.18), mums būs jārediģē/etc/sysconfig/network-scripts/route-enp0s3:

10.0.0.0/24 via 192.168.0.19 dev enp0s3

Tagad restartējiet sistēmu, un jums vajadzētu redzēt šo maršrutu tabulā.

Kopsavilkums

Šajā rakstā mēs esam aplūkojuši Red Hat Enterprise Linux 7 statiskā maršrutēšanas pamatus. Lai gan scenāriji var atšķirties, šeit sniegtais gadījums ilustrē nepieciešamos principus un procedūras šī uzdevuma veikšanai. Pirms iesākšanas es iesaku jums apskatīt Linux dokumentācijas projekta vietnes sadaļas Linux drošība un optimizēšana 4. nodaļu, lai iegūtu sīkāku informāciju par šeit apskatītajām tēmām.

Bezmaksas e-grāmata par Linux drošību un optimizāciju: Datorurķēšanas risinājums (v.3.0) - šī 800+ e-grāmata satur visaptverošu Linux drošības padomu kolekciju un to, kā tos droši un ērti izmantot, lai konfigurētu Linux balstītas lietojumprogrammas un pakalpojumus.

Nākamajā rakstā mēs runāsim par pakešu filtrēšanu un tīkla adrešu tulkošanu, lai apkopotu tīkla pamatprasmes, kas nepieciešamas RHCE sertifikācijai.

Kā vienmēr, mēs ceram uz jums atbildi, tāpēc droši atstājiet jautājumus, komentārus un ieteikumus, izmantojot zemāk esošo veidlapu.