Teadmistebaas Juhendvideod Lihtsad juhised Profitserveri teenusega töötamiseks
põhiline Teadmistebaas Juhendvideod Tulemüüri konfigureerimine Linuxis

Tulemüüri konfigureerimine Linuxis


Linuxi tulemüür mängib arvutisüsteemi turvamisel olulist rolli. See toimib tõkkena, kontrollides ja filtreerides võrguliiklust, et kaitsta süsteemi volitamata juurdepääsu, rünnakute ja muude ohtude eest. Ilma korralikult konfigureeritud tulemüürita võib server olla haavatav erinevat tüüpi küberrünnakute suhtes, mis toob kaasa tõsiseid tagajärgi andmete turvalisusele ja konfidentsiaalsusele.

Selles artiklis vaatleme kahte peamist Linuxi tulemüüri seadistamise tööriista: firewalld ja iptables. Teeme nende omaduste, funktsionaalsuse ja eeliste võrdleva analüüsi. Lisaks pakume üksikasjalikke juhiseid iga tööriista seadistamiseks ja kasutamiseks ning arutame parimaid tavasid oma süsteemi turvamiseks Linuxi platvormil tulemüüriga. Kõiki toiminguid demonstreeritakse virtuaalserveris, millel on juurjuurdepääs.

Tulemüüri konfigureerimine Linuxis

Firewalld (tulemüürideemon) on programm Linuxi operatsioonisüsteemide tulemüüri haldamiseks. See pakub kasutajaliidest tulemüürireeglite konfigureerimiseks, võrgurakenduste ühenduste lubamiseks või blokeerimiseks. See on enamikus serverijaotistes vaikimisi eelinstallitud. Kui Firewalld pole eelinstallitud, saab selle installida eraldi jaotuse ametlikest hoidlatest.

Red Hat süsteemide (nt RHEL, CentOS, Fedora) puhul toimub installimine käsuga:

yum install firewalld

Debiani/Ubuntu jaoks:

apt-get install firewalld

Pärast installimist saab selle kohe käivitada ja aktiveerida käsuga:

systemctl start firewalld

Järgmisena peate käivitamiseks lisama teenuse:

systemctl enable firewalld
Tulemüüri lisamine Linuxi automaatlaadimisel

Siinkohal soovitame ufw keelata, kuna selle tööriista samaaegne kasutamine tulemüüri või iptablesiga ei ole soovitatav. Kontrollige olekut:

systemctl status ufw
Ufw linuxi kontrollimine

Selle peatamiseks sisestage käsk:

systemctl stop ufw

Täielikuks deaktiveerimiseks:

ufw disable

Pärast neid toiminguid saate jätkata tulemüüri konfigureerimist.

Esiteks on vaja määratleda usaldustsoonid. Firewalld kasutab võrguliideste usaldusväärsuse määramiseks tsoonide kontseptsiooni. Igale liidesele on määratud üks tsoon ja tulemüürireegleid rakendatakse tsooni alusel. Kõigi saadaolevate tsoonide loend avatakse käsuga:

firewall-cmd --get-zones

Tavaliselt kasutatakse 4 põhitsooni:

  1. avalik: see tsoon on mõeldud võrkudele, mida peate ebaturvaliseks;
  2. Era-: kehtib koduvõrkude või muude usaldusväärsete võrguühenduste kohta;
  3. sisemine: kasutatakse sisevõrkude jaoks, näiteks organisatsiooni või ettevõtte võrgu sees;
  4. DMZ: see tsoon on koht, kus tavaliselt paigutatakse serverid, mis peaksid olema Internetist juurdepääsetavad.

See on siiski vaid üks näide. Oma tsooni saate lisada käsuga:

firewall-cmd --permanent --new-zone=nameyourzone

Pärast lisamist on vaja uuesti laadida:

firewall-cmd --reload

Tsooni kustutamiseks kasutatakse sarnast meetodit

firewall-cmd --permanent --delete-zone=nameyourzone

Pärast tsoonide määratlemist on vaja liiklust võimaldada vajalike teenuste ja sadamate jaoks. Teatud teenuse lubamiseks kasutage käsku:

firewall-cmd --zone=public --add-service=name

Kus nimi on teenuse nimi. Näiteks Apache liikluse lubamiseks:

firewall-cmd --zone=public --add-service=http

Lubatud portide määratlemiseks kasutage käsku:

firewall-cmd --zone=public --add-port=number/protocol

Näiteks SSH standardne 22 port näeks välja selline:

firewall-cmd --zone=public --add-port=22/tcp

Selles etapis on põhireeglid juba loodud. Järgmisena määrake, kuidas liiklust töödeldakse, olenevalt allikast, sihtkohast, pordist ja muudest kriteeriumidest. Reegli lisamiseks ( näitena avalik tsoon):

firewall-cmd --zone=public rule

Näiteks sissetuleva liikluse lubamiseks mis tahes allikast porti 80 (HTTP):

firewall-cmd --zone=public --add-port=80/tcp --permanent

Reegli eemaldamiseks toimige järgmiselt.

firewall-cmd --permanent --remove-rule=rule_specification

Kus reegel on reegli tüüp (nt port, teenus, rikkalik reegel jne) ja reegli_spetsifikatsioon on reegli enda spetsifikatsioon.

Pärast tulemüüri konfiguratsiooni muudatuste tegemist tuleb need salvestada ja rakendada. Muudatuste salvestamiseks kasutage käsku:

firewall-cmd --runtime-to-permanent

Muudatuste rakendamiseks tehke järgmist.

firewall-cmd --reload

Pärast seadistamise lõpetamist saate kontrollida valitud parameetreid, avades kõigi reeglite loendi:

firewall-cmd --list-all
tulemüüri Linuxi reeglid

Probleemide ilmnemisel kontrollige tulemüüri logisid käsuga:

journalctl -u firewalld

Märkus: Oleme käsitlenud ainult ühenduse loomise üldist algoritmi. Tööriistal on ulatuslik funktsionaalsus. Täieliku teabe saamiseks kõigi saadaolevate valikute kohta saate kasutada ametlikku dokumentatsiooni või avada abi:

firewall-cmd --help

IPtablesi konfigureerimine Linuxis

Erinevalt tulemüürist on iptables vanem, kuid Linuxis siiski laialdaselt kasutatav tööriist tulemüüri haldamiseks. See pakub otsesemat ja paindlikumat lähenemist pakettide filtreerimise reeglitele Linuxi kerneli tasemel. Kuid iptables nõuab Firewalldiga võrreldes täpsemaid teadmisi ja kogemusi, mistõttu on see algajatele vähem juurdepääsetav. Kontrollige tööriista eelinstallitud versiooni käsuga:

iptables -V

Kui tööriist pole installitud, tuleb see installida. Ubuntu, Debiani installimise käsk:

apt install iptables

Red Hat süsteemide jaoks (nt CentOS, Fedora):

yum install iptables

Käsk aktiveerimiseks pärast installimist:

systemctl start iptables

Käivitamisele lisamiseks käivitage:

systemctl enable iptables

Enne iptablesi konfigureerimise alustamist on oluline mõista, kuidas see töötab. Sellele aitab kaasa programmi süntaks. See näeb välja järgmine:

iptables -t table action chain additional_parameters

Süveneme igasse üksusse sügavamalt.

Iptablesil on neli peamist tabelit: filter, nat, mangle ja raw . Igaüks neist on loodud teatud tüüpi pakettide töötlemiseks ja neil on oma reeglite ahelad:

  1. filtreerida: see on kõige sagedamini kasutatav tabel, mis sisaldab pakettide filtreerimise reegleid. Seda kasutatakse pakettide lubamise või keelamise kohta otsuste tegemiseks.
  2. nat: seda tabelit kasutatakse pakettide võrguaadresside ja portide muutmiseks. Seda kasutatakse sageli maskeeringu (NAT) seadistamiseks.
  3. mangle: selles tabelis saate muuta pakettide päiseid. Seda kasutatakse spetsiaalsete paketitoimingute jaoks, näiteks märgistamiseks.
  4. toores: seda tabelit kasutatakse reeglite konfigureerimiseks, mis kehtivad enne ühenduse jälgimise süsteemi läbimist. Tavaliselt kasutatakse seda reeglite seadistamiseks, mida jälgimissüsteem ei tohiks muuta, näiteks teatud aadressidelt pakettide eemaldamiseks.

Iga tabel sisaldab kettide komplekti. Ketid on reeglite jada, mida kontrollitakse järjestikku. Eelmääratletud ahelaid on kolm:

  1. SISEND (sissetulev). Selle ahela reeglid määravad, mida teha sissetulevate pakettidega.
  2. VÄLJUND (väljaminev). See ahel kehtib kõikidele pakettidele, mida teie arvuti saadab teistele võrgus olevatele seadmetele või arvutitele.
  3. EDASI (edasi suunamine). Selle ahela reeglid täpsustavad, mida edasisaadetud pakettidega teha.

Lõpuks on igal ahelal mingi tegevus (sihtmärk). Praktikas kasutatakse 5 põhitoimingut:

  1. NÕUSTUN: lubage paketil tulemüüri läbida.
  2. DROP: lükake pakett tagasi ja visake see ära ilma vastuseta.
  3. KEELDUN: lükake pakett tagasi ja saatke saatjale ICMP tõrketeade.
  4. LOG: Logige pakett süsteemilogi ja tehke mõni muu toiming (nt ACCEPT või DROP).
  5. RETURN: lõpetage praeguse ahela reeglite kontrollimine ja pöörduge tagasi helistamisahelasse (kui see on kohaldatav).

Seadistamise alustamiseks avage olemasolevate reeglite loend käsuga:

iptables -L
Tulemüüri konfigureerimine Linuxis

Iptablesi seadistamise juhendina vaatame praktilisi näiteid enamkasutatavatest käskudest. Mugavuse huvides jagame näited 3 rühma, olenevalt konkreetsest ahelast.

Keti sisend :

  1. Sissetuleva liikluse lubamine TCP-protokolli kaudu pordis 80:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

2. Lubage sissetulev liiklus UDP-protokolli kaudu pordis 22:

iptables -A INPUT -p udp --dport 22 -j ACCEPT

3. Blokeerige sissetulev liiklus konkreetselt IP-aadressilt.

iptables -A INPUT -s 192.168.1.100 -j DROP

Keti väljund :

  1. Luba väljuv liiklus TCP-protokolli kaudu pordis 443:
iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT

2. Lubage väljaminev liiklus UDP-protokolli kaudu pordis 80:

iptables -A OUTPUT -p udp --dport 80 -j ACCEPT

3. Blokeerige väljaminev liiklus konkreetsesse porti (näiteks 21):

iptables -A OUTPUT -p tcp --dport 21 -j DROP

Kett EDASI :

  1. Teatud IP-aadresside vahemiku edastatud liikluse blokeerimine:
iptables -A FORWARD -s 172.16.0.0/24 -j DROP

2. Blokeerige pakettide edastamine kindlast võrguliidesest:

iptables -A FORWARD -i eth1 -j DROP

3. Piirake konkreetse pordi samaaegsete ühenduste arvu (selles näites 10 ühendust minutis pordis 80):

iptables -A INPUT -p tcp --dport 80 -m limit --limit 10/minute -j ACCEPT

Nagu näete, kasutatakse igal üksikul juhul täiendavat argumenti (käsku). Võimalike argumentide täieliku loendi ja tööriista funktsionaalsuse üldise toe saamiseks sisestage:

iptables -h
iptables linux setup käskude loend

Seadete õigsuse tagamiseks sisestage reeglite loendi kuvamiseks käsk uuesti:

iptables -L
Iptablesi linuxi reeglite kontrollimine

Konkreetse reegli kustutamiseks kasutage käsku:

iptables -D chain rule_number

Näiteks kui soovite SISEND-ahelast reegli number 1 kustutada, näeb käsk välja järgmine:

iptables -D INPUT 1

Kõigi reeglite kustutamiseks ühe käsuga:

iptables -F

Oluline märkus : iptables'i reegleid ei salvestata automaatselt pärast süsteemi või teenuse taaskäivitamist. Reeglite salvestamiseks tuleb need lisada konfiguratsioonifaili ja pärast taaskäivitamist taastada. Utiliidid iptables-save ja iptables-restore aitavad seda teha. Reeglite salvestamiseks sisestage järgmine käsk:

iptables-save > /etc/iptables/rules.v4

See salvestab kehtivad iptablesi reeglid failis rules.v4. Pärast taaskäivitamist taastamiseks sisestage:

iptables-restore < /etc/iptables/rules.v4

See käsk taastab reeglid failist rules.v4.

Järeldus

Tulemüüri konfigureerimine Linuxis tulemüüri või iptablesi abil on serveri turvalisuse tagamise oluline aspekt. Mõlemad tööriistad pakuvad usaldusväärseid vahendeid võrguliikluse haldamiseks ja süsteemi kaitsmiseks volitamata juurdepääsu ja küberrünnakute eest. Valik tulemüüri ja iptablesi vahel sõltub kasutaja konkreetsetest vajadustest ja eelistustest, arvestades nende erinevat funktsionaalsust ja tugevusi.

❮ Eelmine artikkel Serveri koormuse diagnostika
Järgmine artikkel ❯ Linuxi kasutajad: haldus ja load

Küsige meilt VPS-i kohta

Oleme alati valmis vastama teie küsimustele igal kellaajal päeval või öösel.