Android

Kuinka määrittää palomuurin palomuurilla centos 7: llä

Week 7, continued

Week 7, continued

Sisällysluettelo:

Anonim

Oikein konfiguroitu palomuuri on yksi tärkeimmistä näkökohdista järjestelmän yleiseen turvallisuuteen.

FirewallD on täydellinen palomuuriratkaisu, joka hallitsee järjestelmän iptable-sääntöjä ja tarjoaa D-Bus-käyttöliittymän niiden käyttämiseen. CentOS 7: stä alkaen FirewallD korvaa iptables oletuspalomuurin hallintatyökaluna.

Tässä opetusohjelmassa näytämme, kuinka palomuuri voidaan määrittää FirewallD: n avulla CentOS 7 -järjestelmään ja selitämme sinulle palomuurin peruskäsitteet.

edellytykset

Ennen kuin aloitat tämän opetusohjelman, varmista, että olet kirjautunut palvelimellesi käyttäjätilillä, jolla on sudo-oikeudet, tai pääkäyttäjällä. Paras tapa on suorittaa järjestelmänvalvojan komentoja sudo-käyttäjänä root-käyttäjän sijasta. Jos CentOS-järjestelmässäsi ei ole sudo-käyttäjää, voit luoda käyttäjän noudattamalla näitä ohjeita.

Palomuurin peruskäsitteet

FirewallD käyttää vyöhykkeiden ja palvelujen käsitteitä iptable-ketjun ja sääntöjen sijasta. Määrittämiesi vyöhykkeiden ja palveluiden perusteella voit hallita mitä liikennettä on sallittu tai kielletty järjestelmään ja järjestelmään.

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

Palomuurivyöhykkeet

Vyöhykkeet ovat ennalta määritettyjä sääntöjä, jotka määrittelevät liikenteen sallimisen tietokoneiden yhteydessä olevien verkkojen luotettavuuden perusteella. 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.

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 ole jatkuva uudelleenkäynnistyksissä. Kun Firewalld-palvelu 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 olisivat pysyviä, on käytettävä - --permanent vaihtoehtoa.

FirewallD: n asentaminen ja ottaminen käyttöön

  1. Palomuuri on asennettu oletuksena CentOS 7: ään, mutta jos sitä ei ole asennettu järjestelmään, voit asentaa paketin kirjoittamalla:

    sudo yum install firewalld

    Palomuuripalvelu on oletuksena pois käytöstä. Voit tarkistaa palomuurin tilan:

    sudo firewall-cmd --state

    Käynnistä FirewallD-palvelu ja ota se käyttöön käynnistystyypillä:

    sudo systemctl start firewalld sudo systemctl enable firewalld

Yhteistyö palomuurivyöhykkeiden kanssa

Kun FirewallD-palvelu on otettu ensimmäisen kerran käyttöön, public alue asetetaan oletusalueeksi. Voit tarkastella oletusaluetta 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

Oletusarvoisesti kaikille verkkoliittymille on määritetty oletusvyöhyke. Verkon käyttöliittymätyypin käyttämien vyöhykkeiden tarkistaminen:

sudo firewall-cmd --get-active-zones

public interfaces: eth0 eth1

Yllä oleva tulos kertoo meille, että molemmat rajapinnat eth0 ja eth1 on osoitettu julkiselle vyöhykkeelle.

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 asetettu oletusasetukseksi, jota käyttävät sekä eth0 että eth1 rajapinnat. Myös DHCP-asiakasohjelmaan ja SSH: hon liittyvät yhteydet ovat sallittuja.

sudo firewall-cmd --list-all-zones

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

Rajapinnan vyöhykkeen muuttaminen

Voit helposti muuttaa käyttöliittymää käyttämällä --zone vaihtoehtoa yhdessä --change-interface vaihtoehdon kanssa. Seuraava komento määrittää eth1 rajapinnan työalueelle:

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.

Esimerkiksi, jos haluat muuttaa oletusvyöhykkeen kotiin, suorita seuraava komento:

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

Varmista muutokset:

sudo firewall-cmd --get-default-zone

home

Sataman tai palvelun avaaminen

FirewallD: n avulla voit sallia tiettyjen porttien liikenteen ennalta määritettyjen sääntöjen, nimeltään palvelut, 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

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

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 palvelua lisättäessä. Käytä vain - --add-service -vaihtoehtoa - --add-service vaihtoehdon sijaan:

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

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

Entä jos käytät Plex Media Server -sovelluksen kaltaista sovellusta, jolle ei ole saatavana sopivaa palvelua?

Tällaisissa tilanteissa sinulla on kaksi vaihtoehtoa. Voit joko avata asianmukaiset portit tai määrittää uuden FirewallD-palvelun.

Esimerkiksi Plex-palvelin kuuntelee porttia 32400 ja käyttää TCP: tä avataksesi portin nykyisen istunnon julkisella alueella käyttämällä --add-port= -vaihtoehtoa:

sudo firewall-cmd --zone=public --add-port=32400/tcp Protokollat ​​voivat olla joko tcp tai udp .

Varmista, että portti on lisätty onnistuneesti, käyttämällä --list-ports -vaihtoehtoa:

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

32400/tcp

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

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=32400/tcp

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.

Esimerkiksi, jotta voimme luoda palvelumääritelmän Plex Media Server -palvelimelle, käytämme 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..

Huolintaportti palomuurilla

Jos haluat siirtää liikennettä portista toiseen porttiin tai osoitteeseen, ota ensin naamiointi halutulle vyöhykkeelle käyttöön --add-masquerade -kytkimellä. Esimerkiksi naamioinnin salliminen external vyöhyketyypille:

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

  • Välitä liikennettä portista toiseen samalla palvelimella

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 toiselle palvelimelle

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

Sääntöjoukon luominen FirewallD: n avulla

Seuraavassa esimerkissä näytämme kuinka määrittää palomuurisi, jos käytit web-palvelinta. Oletetaan, että palvelimellasi on vain yksi käyttöliittymä eth0 , ja haluat sallia saapuvan liikenteen vain SSH-, HTTP- ja

  1. Muuta oletusvyöhyke arvoon dmz

    Käytämme dmz (demilitarisoitua) vyöhykettä, koska oletuksena se sallii vain SSH-liikenteen. Voit muuttaa oletusvyöhykkeen arvoksi dmz ja määrittää sen eth0 käyttöliittymälle suorittamalla seuraavat komennot:

    sudo firewall-cmd --set-default-zone=dmz sudo firewall-cmd --zone=dmz --add-interface=eth0

    Avaa HTTP- ja

    HTTP- ja HTTPS-porttien avaaminen lisää pysyvät palvelusäännöt dmz-vyöhykkeeseen:

    sudo firewall-cmd --permanent --zone=dmz --add-service=http sudo firewall-cmd --permanent --zone=dmz --add-service=https

    Tee muutokset voimaan heti lataamalla palomuuri:

    sudo firewall-cmd --reload

    Varmista muutokset

    Dmz-vyöhykkeen kokoonpanoasetustyypin tarkistaminen:

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

    dmz (active) target: default icmp-block-inversion: no interfaces: eth0 sources: services: ssh http https ports: protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:

    Yllä oleva lähtö kertoo, että dmz on oletusvyöhyke, sitä käytetään eth0 rajapintaan ja ssh (22) http (80) ja https (443) -portit ovat avoinna.

johtopäätös

Olet oppinut määrittämään ja hallitsemaan FirewallD-palvelua CentOS-järjestelmässäsi.

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

palomuuri palomuuri iptable centos turvallisuus