Android

Kuinka määrittää ja hallita centos 8: n palomuuria

Introduction to Amazon Web Services by Leo Zhadanovsky

Introduction to Amazon Web Services by Leo Zhadanovsky

Sisällysluettelo:

Anonim

Palomuuri on tapa seurata ja suodattaa saapuvaa ja lähtevää verkkoliikennettä. Se toimii määrittelemällä joukko turvasääntöjä, jotka määrittävät sallitaanko tietyn liikenteen salliminen vai estäminen. Oikein konfiguroitu palomuuri on yksi tärkeimmistä näkökohdista järjestelmän yleiseen turvallisuuteen.

CentOS 8 toimitetaan palomuurin kanssa, nimeltään palomuuri. Se on täydellinen ratkaisu, jossa on D-Bus-käyttöliittymä, jonka avulla voit hallita järjestelmän palomuuria dynaamisesti.

Tässä opetusohjelmassa puhumme kuinka palomuuri voidaan määrittää ja hallita CentOS 8: lla. Selitämme myös palomuurin peruskäsitteet.

edellytykset

Palomuuripalvelun määrittämiseksi sinun on kirjauduttava pääkäyttäjään tai käyttäjään, jolla on sudo-oikeudet.

Palomuurin peruskäsitteet

palomuuri käyttää vyöhykkeiden ja palveluiden käsitteitä. Määrittämiesi vyöhykkeiden ja palveluiden perusteella voit hallita mitä liikennettä on sallittu tai estää järjestelmään ja järjestelmästä.

Palomuuri voidaan määrittää ja hallita firewall-cmd komentorivityökalulla.

CentOS 8: ssa iptablet korvataan nftableilla palomuuridimonon oletuspalomuurin taustana.

Palomuurivyöhykkeet

Vyöhykkeet ovat ennalta määritettyjä sääntöjä, jotka määrittävät verkkojen, joihin tietokoneesi on kytketty, luotettavuuden tason. Voit määrittää vyöhykkeelle verkkoliitännät ja lähteet.

Alla on FirewallD: n tarjoamat vyöhykkeet, jotka on järjestetty vyöhykkeen luotettavuustason mukaan epäluotetusta luotettavuuteen:

  • pudota: Kaikki saapuvat yhteydet katkaistaan ​​ilman mitään ilmoitusta. Vain lähtevät yhteydet ovat sallittuja. lohko: Kaikki saapuvat yhteydet hylätään icmp-host-prohibited viestillä IPv4 ja icmp6-adm-prohibited IPv6n: lle. Vain lähtevät yhteydet ovat sallittuja. julkinen: Käytetään epäluotettavissa julkisissa tiloissa. Et luota muihin verkon tietokoneisiin, mutta voit sallia valitut saapuvat yhteydet. ulkoinen: Käytetään ulkoisissa verkoissa, joissa NAT-naamiointi on käytössä, kun järjestelmä toimii yhdyskäytävänä tai reitittimenä. Vain valitut saapuvat yhteydet ovat sallittuja. sisäinen: Käytetään sisäisissä verkoissa, kun järjestelmä toimii yhdyskäytävänä tai reitittimenä. Muihin verkon järjestelmiin luotetaan yleensä. Vain valitut saapuvat yhteydet ovat sallittuja. dmz: Käytetään demilitarisoidulla vyöhykkeellä sijaitseville tietokoneille, joilla on rajoitettu pääsy muuhun verkkoosi. Vain valitut saapuvat yhteydet ovat sallittuja. työ: Käytetään koneisiin. Muihin verkon tietokoneisiin yleensä luotetaan. Vain valitut saapuvat yhteydet ovat sallittuja. koti: Käytetään kodinkoneissa. Muihin verkon tietokoneisiin yleensä luotetaan. Vain valitut saapuvat yhteydet ovat sallittuja. luotettu: Kaikki verkkoyhteydet hyväksytään. Luotta kaikkiin verkon tietokoneisiin.

Palomuuripalvelut

Palomuuripalvelut ovat ennalta määritettyjä sääntöjä, jotka koskevat vyöhykettä ja määrittelevät tarvittavat asetukset tulevan liikenteen sallimiseksi tietylle palvelulle. Palveluiden avulla voit suorittaa useita tehtäviä helposti yhdessä vaiheessa.

Palvelu voi sisältää esimerkiksi määritelmiä porttien avaamisesta, liikenteen edelleenlähettämisestä ja muusta.

Palomuurin kesto ja pysyvät asetukset

Palomuuri käyttää kahta erotettua kokoonpanosarjaa, suorituksenaikaista ja pysyvää kokoonpanoa.

Suorituksenaikainen kokoonpano on todellinen käynnissä oleva kokoonpano, eikä se jatka uudelleenkäynnistystä. Kun palomuuripalvelin käynnistyy, se lataa pysyvän kokoonpanon, josta tulee ajonaikainen kokoonpano.

Oletusarvon mukaan muutettaessa palomuurin määrityksiä firewall-cmd apuohjelman avulla muutokset otetaan käyttöön ajonaikaisessa määrityksessä. Jotta muutokset --permanent pysyviä, lisää --permanent pysyvä vaihtoehto.

Jos haluat soveltaa muutoksia molemmissa kokoonpanosarjoissa, voit käyttää yhtä seuraavista kahdesta menetelmästä:

  1. Muuta ajonaikainen kokoonpano ja tee siitä pysyvä:

    sudo firewall-cmd sudo firewall-cmd --runtime-to-permanent

    Vaihda pysyvä kokoonpano ja lataa palomuuripalvelin uudelleen:

    sudo firewall-cmd --permanent sudo firewall-cmd --reload

FirewallD: n ottaminen käyttöön

CentOS 8: ssa palomuuri on asennettu ja otettu käyttöön oletuksena. Jos jostain syystä sitä ei ole asennettu järjestelmään, voit asentaa ja käynnistää demonin kirjoittamalla:

sudo dnf install firewalld sudo systemctl enable firewalld --now

Voit tarkistaa palomuurin palvelun tilan:

sudo firewall-cmd --state

Jos palomuuri on käytössä, komennon pitäisi tulostaa running . Muuten näet, että se not running .

Palomuurivyöhykkeet

Oletusvyöhyke on alue, jota käytetään kaikkeen, jota ei ole nimenomaisesti määritetty toiselle vyöhykkeelle.

Voit nähdä oletusalueen kirjoittamalla:

sudo firewall-cmd --get-default-zone

public

Saat luettelon kaikista käytettävissä olevista vyöhykkeistä kirjoittamalla:

sudo firewall-cmd --get-zones

block dmz drop external home internal public trusted work

Näet aktiiviset vyöhykkeet ja niille osoitetut verkkoliitännät:

sudo firewall-cmd --get-active-zones

Alla oleva tulos osoittaa, että rajapinnat eth0 ja eth1 on osoitettu public vyöhykkeelle:

public interfaces: eth0 eth1

Voit tulostaa vyöhykkeen kokoonpanoasetukset:

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

public (active) target: default icmp-block-inversion: no interfaces: eth0 eth1 sources: services: ssh dhcpv6-client ports: protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:

Yllä olevasta tuotosta voidaan nähdä, että julkinen alue on aktiivinen ja käyttää oletuskohtetta, joka on REJECT . Tulos osoittaa myös, että eth0 ja eth1 rajapinnat käyttävät vyöhykettä ja sallivat DHCP-asiakas- ja SSH-liikenteen.

sudo firewall-cmd --list-all-zones

Komento tulostaa valtavan luettelon kaikkien käytettävissä olevien vyöhykkeiden asetuksista.

Vyöhykekohteen muuttaminen

Kohde määrittelee vyöhykkeen oletuskäyttäytymisen tulevalle liikenteelle, jota ei ole määritelty. Se voidaan asettaa yhdeksi seuraavista vaihtoehdoista: default , ACCEPT , REJECT ja DROP .

Aseta vyöhykkeen tavoite määrittämällä vyöhyke --zone vaihtoehdolla ja kohde --set-target -asetuksella.

Jos esimerkiksi haluat muuttaa public alueen tavoitteen DROP : iin, suorita:

sudo firewall-cmd --zone=public --set-target=DROP

Liittymän määrittäminen toiselle vyöhykkeelle

Voit luoda erityisiä sääntöjä eri vyöhykkeille ja määrittää niille erilaisia ​​rajapintoja. Tämä on erityisen hyödyllistä, kun sinulla on useita käyttöliittymiä koneellasi.

Jos haluat määrittää rajapinnan toiselle vyöhykkeelle, määritä vyöhyke --zone vaihtoehdolla ja käyttöliittymä --change-interface -vaihtoehdolla.

Esimerkiksi seuraava komento määrittää eth1 rajapinnan work :

sudo firewall-cmd --zone=work --change-interface=eth1

Varmista muutokset kirjoittamalla:

sudo firewall-cmd --get-active-zones

work interfaces: eth1 public interfaces: eth0

Oletusvyöhykkeen muuttaminen

Vaihda oletusvyöhyke käyttämällä --set-default-zone -vaihtoehtoa, jota seuraa sen vyöhykkeen nimi, josta haluat tehdä oletusvyöhykkeen.

Jos esimerkiksi haluat muuttaa oletusvyöhykkeen home suorita seuraava komento:

sudo firewall-cmd --set-default-zone=home

Varmista muutokset:

sudo firewall-cmd --get-default-zone

home

Uusien vyöhykkeiden luominen

Palomuurin avulla voit myös luoda omia vyöhykkeitä. Tämä on kätevää, kun haluat luoda sovelluskohtaisia ​​sääntöjä.

Seuraavassa esimerkissä luodaan uusi vyöhyke nimeltä memcached , avataan portti 11211 ja sallitaan pääsy vain 192.168.100.30 IP-osoitteesta:

  1. Luo vyöhyke:

    sudo firewall-cmd --new-zone=memcached --permanent

    Lisää säännöt vyöhykkeelle:

    sudo firewall-cmd --zone=memcached --add-port=11211/udp --permanent sudo firewall-cmd --zone=memcached --add-port=11211/tcp --permanent sudo firewall-cmd --zone=memcached --add-source=192.168.100.30/32 --permanent

    Lataa palomuuripalvelin uudelleen aktivoidaksesi muutokset:

    sudo firewall-cmd --reload

Palomuuripalvelut

Palomuurin avulla voit sallia tiettyjen porttien ja / tai lähteiden liikenteen ennalta määritettyjen sääntöjen, joita kutsutaan palveluiksi, perusteella.

Saadaksesi luettelon kaikista käytettävissä olevista palveluista:

sudo firewall-cmd --get-services

Löydät lisätietoja jokaisesta palvelusta avaamalla niihin liittyvän.xml-tiedoston /usr/lib/firewalld/services . Esimerkiksi HTTP-palvelu on määritelty seuraavasti:

/usr/lib/firewalld/services/http.xml

WWW (HTTP) HTTP is the protocol used to serve Web pages. If you plan to make your Web server publicly available, enable this option. This option is not required for viewing pages locally or developing Web pages. WWW (HTTP) HTTP is the protocol used to serve Web pages. If you plan to make your Web server publicly available, enable this option. This option is not required for viewing pages locally or developing Web pages.

Voit sallia saapuvan HTTP-liikenteen (portti 80) julkisen vyöhykkeen rajapinnoille vain nykyisen istunnon (ajonaikainen kokoonpano) tyypille:

sudo firewall-cmd --zone=public --add-service=http Jos muokkaat oletusaluetta, voit jättää pois --zone vaihtoehdon.

Varmista palvelun lisäys onnistuneesti käyttämällä --list-services -vaihtoehtoa:

sudo firewall-cmd --zone=public --list-services

ssh dhcpv6-client

Jos haluat pitää portin 80 auki uudelleenkäynnistyksen jälkeen, suorita sama komento uudelleen - --permanent vaihtoehdolla tai suorita:

sudo firewall-cmd --runtime-to-permanent

Käytä --list-services yhdessä --permanent vaihtoehdon kanssa tarkistaaksesi muutokset:

sudo firewall-cmd --permanent --zone=public --list-services

ssh dhcpv6-client

Palvelun poistamisen syntaksi on sama kuin lisättäessä. Käytä --add-service lipun sijasta:

sudo firewall-cmd --zone=public --remove-service=http --permanent

Yllä oleva komento poistaa http palvelun julkisen alueen pysyvästä kokoonpanosta.

Uuden FirewallD-palvelun luominen

Kuten olemme jo todenneet, oletuspalvelut tallennetaan /usr/lib/firewalld/services . Helpoin tapa luoda uusi palvelu on kopioida olemassa oleva /etc/firewalld/services hakemistoon /etc/firewalld/services , joka on käyttäjän luomien palveluiden sijainti, ja muokata tiedostoasetuksia.

Voit esimerkiksi luoda palvelumääritelmän Plex Media Server -palvelimelle käyttämällä SSH-palvelutiedostoa:

sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/plexmediaserver.xml

Avaa hiljattain luotu plexmediaserver.xml tiedosto ja muuta palvelun lyhyt nimi ja kuvaus ja tunnisteita. Tärkein muutettava tunniste on port , joka määrittelee porttinumeron ja protokollan, jonka haluat avata.

Seuraavassa esimerkissä avaamme portteja 1900 UDP ja 32400 TCP.

/etc/firewalld/services/plexmediaserver.xml

plexmediaserver Plex is a streaming media server that brings all your video, music and photo collections together and stream them to your devices at anytime and from anywhere. plexmediaserver Plex is a streaming media server that brings all your video, music and photo collections together and stream them to your devices at anytime and from anywhere.

Tallenna tiedosto ja lataa FirewallD-palvelu uudelleen:

sudo firewall-cmd --reload

Voit nyt käyttää plexmediaserver palvelua vyöhykkeilläsi samalla tavalla kuin mitä tahansa muuta palvelua.

Porttien ja lähde-IP: ien avaaminen

Palomuurin avulla voit myös ottaa kaiken liikenteen luotettavasta IP-osoitteesta tai tietystä portista nopeasti luomatta palvelumääritelmää.

Lähde-IP: n avaaminen

Jos haluat sallia kaiken tulevan liikenteen tietyltä IP-osoitteelta (tai alueelta), määritä vyöhyke --zone vaihtoehdolla ja lähde-IP-asetuksella --add-source .

Jos esimerkiksi haluat sallia kaiken saapuvan liikenteen vuodelta 192.168.1.10 public alueella, suorita:

sudo firewall-cmd --zone=public --add-source=192.168.1.10

Tee uudesta säännöstä pysyvä:

sudo firewall-cmd --runtime-to-permanent

Varmista muutokset seuraavalla komennolla:

sudo firewall-cmd --zone=public --list-sources

192.168.1.10

Lähde-IP: n poistamisen syntaksi on sama kuin lisättäessä. Käytä vain --add-source asetusta --add-source vaihtoehdon sijasta:

sudo firewall-cmd --zone=public --remove-source=192.168.1.10

Lähdeportin avaaminen

Jos haluat sallia kaiken tulevan liikenteen tietyllä portilla, määritä vyöhyke --zone vaihtoehdolla ja portti ja protokolla --add-port vaihtoehdolla.

Voit esimerkiksi avata portin 8080 julkisella vyöhykkeellä nykyiselle haavoitetullesi istunnolle:

sudo firewall-cmd --zone=public --add-port=8080/tcp

Protokolla voi olla joko tcp , udp , sctp tai dccp .

Varmista muutokset:

sudo firewall-cmd --zone=public --list-ports

8080

Jos haluat pitää portin auki uudelleenkäynnistyksen jälkeen, lisää sääntö pysyviin asetuksiin suorittamalla sama komento käyttämällä - --permanent lippu tai suorittamalla:

sudo firewall-cmd --runtime-to-permanent

Portin poistamisen syntaksi on sama kuin porttia lisättäessä. Käytä vain --add-port asetusta --add-port vaihtoehdon sijasta.

sudo firewall-cmd --zone=public --remove-port=8080/tcp

Huolintaportit

Jos haluat siirtää liikennettä portista toiseen, ota ensin naamiointi halutulle vyöhykkeelle käyttämällä --add-masquerade -vaihtoehtoa. Esimerkiksi, jotta external vyöhyke voidaan naamioida, kirjoita:

sudo firewall-cmd --zone=external --add-masquerade

Välitä liikennettä portista toiseen IP-osoitteessa

Seuraavassa esimerkissä siirrämme liikennettä portista 80 porttiin 8080 samassa palvelimessa:

sudo firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toport=8080

Siirrä liikenne toiseen IP-osoitteeseen

Seuraavassa esimerkissä siirrämme liikennettä portista 80 porttiin 80 palvelimella, jolla on IP 10.10.10.2 :

sudo firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toaddr=10.10.10.2

Välitä liikennettä toiseen palvelimeen eri portissa

Seuraavassa esimerkissä siirrämme liikennettä portista 80 porttiin 8080 palvelimella, jolla on IP 10.10.10.2 :

sudo firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=10.10.10.2

Jotta eteenpäin suuntautuva sääntö pysyisi, käytä:

sudo firewall-cmd --runtime-to-permanent

johtopäätös

Olet oppinut määrittämään ja hallitsemaan palomuuripalvelun CentOS 8 -järjestelmässäsi.

Varmista, että sallit kaikki tulevat yhteydet, jotka ovat tarpeen järjestelmän moitteettoman toiminnan kannalta, rajoittamatta samalla kaikkia tarpeettomia yhteyksiä.

palomuuri palomuurin centos turvallisuus