Ero sivun ”FirewallD” versioiden välillä

Siirry navigaatioon Siirry hakuun
1 957 merkkiä lisätty ,  18. helmikuuta 2022
p
<syntaxhighlight>
Ei muokkausyhteenvetoa
p (<syntaxhighlight>)
 
(9 välissä olevaa versiota toisen käyttäjän tekemänä ei näytetä)
Rivi 10: Rivi 10:
[[Tiedosto:Firewalld ja iptables.png|right|thumb|FirewallD- ja iptables-palvelut juttelevat kernelin netfilter-pakettisuodattimelle iptables-työkalun välityksellä]]
[[Tiedosto:Firewalld ja iptables.png|right|thumb|FirewallD- ja iptables-palvelut juttelevat kernelin netfilter-pakettisuodattimelle iptables-työkalun välityksellä]]


'''FirewallD''' ('''Dynamic Firewall''') on [[Red Hat]]in kehittämä dynaaminen [[palomuuri]]. FirewallD on dynaamisena palomuurina monipuolisempi ja tehokkaampi verrattuna perinteiseen staattiseen palomuuriin, kuten [[iptables]]. Vanhan tyylisessä staattisessa palomuurissa uudet asetukset otetaan käyttöön käynnistämällä palomuuri uudelleen, jolloin luetaan uudet asetukset. FirewallD sen sijaan sallii asetusten muuttamisen suoraan lennosta. Kuten iptables, myös FirewallD on vain työkalu joka käyttää linux-kernelin [[netfilter]]iä.
'''FirewallD''' (''Dynamic Firewall'') on [[Red Hat]]in kehittämä dynaaminen [[palomuuri]]. FirewallD on dynaamisena palomuurina monipuolisempi ja tehokkaampi verrattuna perinteiseen staattiseen palomuuriin, kuten [[iptables]]. Vanhan tyylisessä staattisessa palomuurissa uudet asetukset otetaan käyttöön käynnistämällä palomuuri uudelleen, jolloin luetaan uudet asetukset. FirewallD sen sijaan sallii asetusten muuttamisen suoraan lennosta. Kuten iptables, myös FirewallD on vain työkalu joka käyttää linux-kernelin [[netfilter]]iä.


==Asennus==
==Asennus==
Rivi 17: Rivi 17:
==Käyttö==
==Käyttö==
{{Oikeudet}}
{{Oikeudet}}
FirewallD:n asetuksia voidaan säätää graafisella <tt>firewall-config</tt>-ohjelmalla tai tekstipohjaisella <tt>firewall-cmd</tt>-ohjelmalla. [[Systemd]] hallitsee FirewallD:tä <tt>firewalld.service</tt>:n avulla, eli FirewallD voidaan käynnistää komennolla:
FirewallD:n asetuksia voidaan säätää graafisella <tt>firewall-config</tt>-ohjelmalla tai tekstipohjaisella <tt>firewall-cmd</tt>-ohjelmalla. [[Systemd]] hallitsee FirewallD:tä <tt>firewalld.service</tt>:n avulla, eli FirewallD voidaan käynnistää ja asettaa käynnistymään tietokoneen käynnistyessä komennoilla:
  # systemctl start firewalld.service
  # systemctl start firewalld.service
# systemctl enable firewalld.service


Lisätietoa systemd:n käytöstä löytyy [[systemd|systemd:n omasta artikkelista]].
Lisätietoa systemd:n käytöstä löytyy [[systemd|systemd:n omasta artikkelista]].
Rivi 28: Rivi 29:
FirewallD käyttää eri ''alueita'' (engl. ''zones''). Oletusalue on määritelty <tt>/etc/firewalld/firewalld.conf</tt> -tiedostossa.
FirewallD käyttää eri ''alueita'' (engl. ''zones''). Oletusalue on määritelty <tt>/etc/firewalld/firewalld.conf</tt> -tiedostossa.
{| class=wikitable
{| class=wikitable
! colspan="2" | Alueet järjestettynä tiukimmasta sallivimpaan
|-
! Alue (''zone'')
! Alue (''zone'')
! Kuvaus
! Kuvaus
Rivi 38: Rivi 41:
|-
|-
| '''public'''
| '''public'''
| Tarkoitettu julkisiin epäluotettaviin verkkoihin, kuten avoimiin WLAN-verkkoihin. Ei luoteta muihin verkon laitteisiin.
| Tarkoitettu julkisiin epäluotettaviin verkkoihin, kuten avoimiin WLAN-verkkoihin, joissa ei luoteta muihin verkon laitteisiin.
|-
|-
| '''external'''
| '''external'''
|  
| Tarkoitettu erityisesti ulkoverkkoihin reitittimiin jotka tekevät osoitteenmuutosta.
|-
| '''internal'''
|
|-
|-
| '''dmz'''
| '''dmz'''
Rivi 50: Rivi 50:
|-
|-
| '''work'''
| '''work'''
| Tarkoitettu työpaikan verkkoihin joissa voidaan luottaa pääosin muihin laitteisiin
| Tarkoitettu työpaikan verkkoihin joissa voidaan luottaa pääosin muihin laitteisiin.
|-
|-
| '''home'''
| '''home'''
| Tarkoitettu kodin verkkoihin joissa voidaan luottaa pääosin muihin laitteisiin
| Tarkoitettu kodin verkkoihin joissa voidaan luottaa pääosin muihin laitteisiin.
|-
| '''internal'''
| Tarkoitettu sisäverkkoihin, joissa voidaan luottaa pääosin muihin laitteisiin.
|-
|-
| '''trusted'''
| '''trusted'''
| Kaikki yhteydet sallitaan
| Kaikki yhteydet sallitaan.
|}
|}


Rivi 93: Rivi 96:
  $ firewall-cmd --get-services
  $ firewall-cmd --get-services


Enemmän tietoa yksittäisistä palveluista löytyy <tt>/usr/lib/firewalld/services</tt> -tiedostosta, jossa eri palvelut ovat [[XML]]-tiedostoissa. Kun halutaan lisätä jokin palvelu haluttuun alueeseen, voidaan se tehdä <tt>--add-service=PALVELU</tt>-parametrilla. Esimerkiksi oletusalueelle voitaisiin avata portti http-palvelimelle näin:
Enemmän tietoa yksittäisistä palveluista löytyy <tt>/usr/lib/firewalld/services</tt> -hakemistosta, jossa eri palvelut ovat [[XML]]-tiedostoissa. Kun halutaan lisätä jokin palvelu haluttuun alueeseen, voidaan se tehdä <tt>--add-service=PALVELU</tt>-parametrilla. Esimerkiksi oletusalueelle voitaisiin avata portti http-palvelimelle näin:
  # firewall-cmd --add-service=http
  # firewall-cmd --add-service=http


Rivi 106: Rivi 109:


===Portit===
===Portit===
Joskus tarjolla olevista palveluista ei löydy sopivaa, vaan tulee avata halutut portit manuaalisesti itse. Esimerkiksi jos joku oma ohjelma kuuntelisi porttia 5875 ja käyttäisi [[TCP]]-protokollaa, voitaisiin portti avata <tt>--add-port=PORTTI/PROTOKOLLA</tt> -parametrilla.
Joskus tarjolla olevista palveluista ei löydy sopivaa. Tällöin tulee avata halutut portit manuaalisesti itse. Esimerkiksi jos joku oma ohjelma kuuntelisi porttia 5875 ja käyttäisi [[TCP]]-protokollaa, voitaisiin portti avata <tt>--add-port=PORTTI/PROTOKOLLA</tt> -parametrilla.
  # firewall-cmd --zone=public --add-port=5875/tcp
  # firewall-cmd --zone=public --add-port=5875/tcp


Rivi 117: Rivi 120:


Portteja ei tulisi avata turhaan. Yleisesti hyvä tapa on pitää kaikki portit kiinni ja avata niitä vasta tarpeen vaatiessa.
Portteja ei tulisi avata turhaan. Yleisesti hyvä tapa on pitää kaikki portit kiinni ja avata niitä vasta tarpeen vaatiessa.
===Palveluiden määrittäminen===
Yksittäisiä portteja avatessa saattaa unohtua mikä portti liittyy mihinkin ohjelmaan. Tämän takia palvelut on kehitetty helpottamaan eri porttien muistamista. Palvelut ovat periaatteessa vain kokoelmia portteja, joille on annettu joku nimi ja kuvaus. Omat palvelut määritellään <tt>/etc/firewalld/services</tt> -hakemistoon. Luodaan esimerkkinä uusi tiedosto <tt>esimerkki.xml</tt>, joka määrittää uuden palvelun.
# vim /etc/firewalld/services/esimerkki.xml
Tiedoston tulee olla XML-muodossa, jotta FirewallD osaa parsia sen oikein.
<syntaxhighlight lang="xml">
<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>esimerkki</short>
  <description>Tämä palvelu on esimerkki jonka tarkoitus on havainnollistaa palveluiden luomista FirewallD-palomuurille.</description>
  <port protocol="tcp" port="6666"/>
  <port protocol="udp" port="5555"/>
</service>
</syntaxhighlight>
Jotta palomuuri näkisi uuden palvelun, tulee se ladata uudelleen:
# firewall-cmd --reload
===Alueiden määrittäminen===
Joissain tapauksissa valmiiksi määritellyt alueet eivät ole riittäviä vaan tarvitaan lisäksi oma alueita. Esimerkiksi omalle aliverkolle voidaan määrittää oma alue. Kun alue määritellään, tehdään se <tt>--new-zone=ALUE</tt> -parametrilla, tähän tarvitaan myös <tt>--permanent</tt> -parametria.
# firewall-cmd --permanent --new-zone=omaverkko
Nyt uudelle alueelle voidaan lisätä halutut palvelut ja verkkoliitännät. Palomuurin asetukset tulee ladata uudestaan jotta uusi alue näkyisi nykyisessä istunnossa.
# firewall-cmd --reload


[[Tiedosto:firewall-config 0.3.9.png|thumb|none|500px|firewall-config on graafinen työkalu FirewallD:n asetusten säätämiseen]]
[[Tiedosto:firewall-config 0.3.9.png|thumb|none|500px|firewall-config on graafinen työkalu FirewallD:n asetusten säätämiseen]]
10 148

muokkausta

Navigointivalikko