Introduction to Amazon Web Services by Leo Zhadanovsky
Indholdsfortegnelse:
- Forudsætninger
- Grundlæggende Firewalld-koncepter
- Firewalld Zoner
- Firewall-tjenester
- Firewalld kørselstid og permanente indstillinger
- Aktivering af firewallD
- Firewalld Zoner
- Ændring af zonemålet
- Tildeling af en grænseflade til en anden zone
- Ændring af standardzone
- Oprettelse af nye zoner
- Firewalld-tjenester
- Oprettelse af en ny FirewallD-service
- Åbning af porte og kilde-IP'er
- Åbning af en kilde-IP
- Åbning af en kildeport
- Videresendelse af porte
- Videresend trafik fra en port til en anden på IP-adressen
- Videresend trafik til en anden IP-adresse
- Videresend trafik til en anden server på en anden port
- Konklusion
En firewall er en metode til overvågning og filtrering af indgående og udgående netværkstrafik. Det fungerer ved at definere et sæt sikkerhedsregler, der bestemmer, om specifik trafik skal tillades eller blokeres. En korrekt konfigureret firewall er en af de vigtigste aspekter af den generelle systemsikkerhed.
CentOS 8 sendes med en firewall-dæmon ved navn firewalld. Det er en komplet løsning med en D-Bus-interface, der giver dig mulighed for at administrere systemets firewall dynamisk.
I denne tutorial vil vi tale om, hvordan man konfigurerer og administrerer firewall på CentOS 8. Vi forklarer også de grundlæggende FirewallD-koncepter.
Forudsætninger
For at konfigurere firewall-tjenesten skal du være logget som root eller bruger med sudo-privilegier.
Grundlæggende Firewalld-koncepter
firewalld bruger begreberne zoner og tjenester. Baseret på de zoner og tjenester, du konfigurerer, kan du styre, hvad trafik er tilladt eller blokeret til og fra systemet.
Firewalld kan konfigureres og administreres ved hjælp af kommandolinjeprogrammet
firewall-cmd
.
I CentOS 8 erstattes iptables af nftables som standard firewall-backend for firewalldæmonen.
Firewalld Zoner
Zoner er foruddefinerede regelsæt, der specificerer tillidsniveauet for de netværk, din computer er forbundet til. Du kan tildele netværksgrænseflader og kilder til en zone.
Nedenfor er de zoner, der leveres af FirewallD bestilt i henhold til tillidsniveauet i zonen fra ikke-tillid til betroet:
- drop: Alle indgående forbindelser slettes uden nogen meddelelse. Kun udgående forbindelser er tilladt. blok: Alle indgående forbindelser afvises med en
icmp-host-prohibited
meddelelse tilIPv4
ogicmp6-adm-prohibited
for IPv6n. Kun udgående forbindelser er tilladt. offentligt: Til brug i ikke-betroede offentlige områder. Du har ikke tillid til andre computere på netværket, men du kan tillade valgte indgående forbindelser. ekstern: Til brug på eksterne netværk med NAT-maskering aktiveret, når dit system fungerer som en gateway eller router. Kun valgte indgående forbindelser er tilladt. intern: Til brug på interne netværk, når dit system fungerer som en gateway eller router. Andre systemer på netværket er generelt tillid til. Kun valgte indgående forbindelser er tilladt. dmz: Bruges til computere placeret i din demilitariserede zone, der har begrænset adgang til resten af dit netværk. Kun valgte indgående forbindelser er tilladt. arbejde: Bruges til arbejdsmaskiner. Andre computere på netværket er generelt tillid til. Kun valgte indgående forbindelser er tilladt. Hjem: Bruges til hjemmemaskiner. Andre computere på netværket er generelt tillid til. Kun valgte indgående forbindelser er tilladt. klareret: Alle netværksforbindelser accepteres. Stol på alle computere i netværket.
Firewall-tjenester
Firewall-tjenester er foruddefinerede regler, der gælder inden for en zone og definerer de nødvendige indstillinger for at tillade indkommende trafik for en bestemt tjeneste. Tjenesterne giver dig mulighed for let at udføre flere opgaver i et enkelt trin.
Tjenesten kan for eksempel indeholde definitioner om åbning af porte, videresendelse af trafik og mere.
Firewalld kørselstid og permanente indstillinger
Firewalld bruger to separate konfigurationssæt, runtime og permanent konfiguration.
Runtime-konfigurationen er den aktuelle løbskonfiguration og fortsætter ikke ved genstart. Når firewalldæmonen starter, indlæses den den permanente konfiguration, der bliver runtime-konfigurationen.
Når der foretages ændringer i Firewalld-konfigurationen ved hjælp af
firewall-cmd
værktøjet, anvendes ændringerne som standard til runtime-konfigurationen. For at gøre ændringerne permanent tilføje
--permanent
indstillingen til kommandoen.
Hvis du vil anvende ændringerne i begge konfigurationssæt, kan du bruge en af følgende to metoder:
-
Ændr runtime-konfigurationen, og gør den permanent:
sudo firewall-cmd
sudo firewall-cmd --runtime-to-permanent
Skift den permanente konfiguration og genindlæs firewalldemon'en:
sudo firewall-cmd --permanent
sudo firewall-cmd --reload
Aktivering af firewallD
På CentOS 8 er firewalld installeret og aktiveret som standard. Hvis det af en eller anden grund ikke er installeret på dit system, kan du installere og starte dæmonen ved at skrive:
sudo dnf install firewalld
sudo systemctl enable firewalld --now
Du kan kontrollere status for firewall-tjenesten med:
sudo firewall-cmd --state
Hvis firewall er aktiveret, skal kommandoen udskrives,
running
. Ellers ser du
not running
.
Firewalld Zoner
Standardzonen er den, der bruges til alt, der ikke eksplicit er tildelt en anden zone.
Du kan se standardzonen ved at skrive:
sudo firewall-cmd --get-default-zone
public
For at få en liste over alle tilgængelige zoner skal du indtaste:
sudo firewall-cmd --get-zones
block dmz drop external home internal public trusted work
Sådan ser du de aktive zoner og netværksgrænseflader, der er tildelt dem:
sudo firewall-cmd --get-active-zones
Outputet nedenfor viser, at grænsefladerne
eth0
og
eth1
er tildelt den
public
zone:
public interfaces: eth0 eth1
Du kan udskrive indstillingerne for zonekonfiguration med:
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:
Fra output ovenfor kan vi se, at den offentlige zone er aktiv og bruger standardmålet, som er
REJECT
. Outputet viser også, at zonen bruges af
eth0
og
eth1
grænsefladerne og tillader DHCP-klient og SSH-trafik.
sudo firewall-cmd --list-all-zones
Kommandoen udskriver en enorm liste med indstillingerne for alle tilgængelige zoner.
Ændring af zonemålet
Målet definerer standardopførelsen i zonen for den indkommende trafik, der ikke er specificeret. Det kan indstilles til en af følgende indstillinger:
default
,
ACCEPT
,
REJECT
og
DROP
.
For at indstille zonens mål skal du specificere zonen med indstillingen - zone og målet med -
--set-target
.
For at ændre målene for den
public
zone til
DROP
vil du f.eks. Køre:
sudo firewall-cmd --zone=public --set-target=DROP
Tildeling af en grænseflade til en anden zone
Du kan oprette specifikke regelsæt for forskellige zoner og tildele forskellige grænseflader til dem. Dette er især nyttigt, når du har flere grænseflader på din maskine.
For at tildele en grænseflade til en anden zone skal du specificere zonen med indstillingen - zone og grænsefladen med indstillingen -
--change-interface
.
For eksempel tildeler følgende kommando
eth1
grænsefladen til arbejdszonen:
sudo firewall-cmd --zone=work --change-interface=eth1
Bekræft ændringerne ved at skrive:
sudo firewall-cmd --get-active-zones
work interfaces: eth1 public interfaces: eth0
Ændring af standardzone
Hvis du vil ændre standardzonen, skal du bruge indstillingen -
--set-default-zone
efterfulgt af navnet på den zone, du vil
--set-default-zone
standard.
For at ændre standardzonen til
home
vil du f.eks. Køre følgende kommando:
sudo firewall-cmd --set-default-zone=home
Bekræft ændringerne med:
sudo firewall-cmd --get-default-zone
Oprettelse af nye zoner
Firewalld giver dig også mulighed for at oprette dine egne zoner. Dette er praktisk, når du vil oprette regler pr. Applikation.
I det følgende eksempel opretter vi en ny zone med navnet
memcached
, åbner porten
11211
og tillader kun adgang fra IP-adressen
192.168.100.30
:
-
Opret zonen:
sudo firewall-cmd --new-zone=memcached --permanent
Føj reglerne til zonen:
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
Genindlæs firewalldæmonen for at aktivere ændringerne:
sudo firewall-cmd --reload
Firewalld-tjenester
Med firewalld kan du tillade trafik for specifikke porte og / eller kilder baseret på foruddefinerede regler kaldet tjenester.
Sådan får du en liste over alle tilgængelige standardtjenester:
sudo firewall-cmd --get-services
Du kan finde mere information om hver tjeneste ved at åbne den tilhørende.xml-fil i biblioteket
/usr/lib/firewalld/services
. For eksempel er HTTP-tjenesten defineret sådan:
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.
For at tillade indgående HTTP-trafik (port 80) til grænseflader i den offentlige zone, kun for den aktuelle session (runtime-konfiguration) type:
sudo firewall-cmd --zone=public --add-service=http
Hvis du ændrer standardzonen, kan du udelade indstillingen - zone.
For at bekræfte, at tjenesten blev tilføjet, skal du bruge indstillingen -
--list-services
:
sudo firewall-cmd --zone=public --list-services
ssh dhcpv6-client
For at holde port 80 åben efter en genstart skal du køre den samme kommando igen med
--permanent
indstillingen, eller udføre:
sudo firewall-cmd --runtime-to-permanent
Brug -
--list-services
sammen med
--permanent
indstillingen til at bekræfte dine ændringer:
sudo firewall-cmd --permanent --zone=public --list-services
ssh dhcpv6-client
Syntaks for fjernelse af service er den samme som når du tilføjer en. Brug bare -
--remove-service
stedet for flag -
--add-service
:
sudo firewall-cmd --zone=public --remove-service=http --permanent
Kommandoen ovenfor fjerner
http
tjenesten fra den permanente konfiguration af den offentlige zone.
Oprettelse af en ny FirewallD-service
Som vi allerede har nævnt, er standardtjenesterne gemt i biblioteket
/usr/lib/firewalld/services
. Den nemmeste måde at oprette en ny tjeneste er at kopiere en eksisterende servicefil til biblioteket
/etc/firewalld/services
, som er placeringen for brugeroprettede tjenester og ændre filindstillingerne.
For at oprette en servicedefinition for Plex Media Server kan du f.eks. Bruge SSH-servicefilen:
sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/plexmediaserver.xml
Åbn den nyligt oprettede fil
plexmediaserver.xml
, og ændre kortnavnet og beskrivelsen for tjenesten inden for
I det følgende eksempel åbner vi havne
1900
UDP og
32400
TCP.
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.
Gem filen og genindlæs FirewallD-tjenesten:
sudo firewall-cmd --reload
Du kan nu bruge
plexmediaserver
tjenesten i dine zoner, som alle andre tjenester.
Åbning af porte og kilde-IP'er
Firewalld giver dig også mulighed for hurtigt at aktivere al trafik fra en betroet IP-adresse eller på en bestemt port uden at oprette en servicedefinition.
Åbning af en kilde-IP
For at tillade al indgående trafik fra en bestemt IP-adresse (eller rækkevidde) skal du specificere zonen med indstillingen - zone og kilde-IP med indstillingen -
--add-source
.
For eksempel at tillade al indkommende trafik fra 192.168.1.10 i den
public
zone, skal du køre:
sudo firewall-cmd --zone=public --add-source=192.168.1.10
Gør den nye regel vedvarende:
sudo firewall-cmd --runtime-to-permanent
Bekræft ændringerne ved hjælp af følgende kommando:
sudo firewall-cmd --zone=public --list-sources
192.168.1.10
Syntaks til fjernelse af en kilde-IP er den samme som når du tilføjer en. Brug bare -
--remove-source
stedet for -
--add-source
:
sudo firewall-cmd --zone=public --remove-source=192.168.1.10
Åbning af en kildeport
For at tillade al indkommende trafik på en given port skal du specificere zonen med - zoneindstillingen og porten og protokollen med
--add-port
.
For at åbne port
8080
i den offentlige zone for den aktuelle session, du sårede, for eksempel:
sudo firewall-cmd --zone=public --add-port=8080/tcp
Protokollen kan være enten
tcp
,
udp
,
sctp
eller
dccp
.
Bekræft ændringerne:
sudo firewall-cmd --zone=public --list-ports
8080
For at holde porten åben efter en genstart skal du tilføje reglen til de permanente indstillinger ved at køre den samme kommando ved hjælp af
--permanent
flag eller ved at udføre:
sudo firewall-cmd --runtime-to-permanent
Syntaks til fjernelse af en port er den samme som når du tilføjer en port. Brug bare -
--remove-port
stedet for
--add-port
.
sudo firewall-cmd --zone=public --remove-port=8080/tcp
Videresendelse af porte
For at videresende trafik fra en port til en anden port skal du først aktivere maskering til den ønskede zone ved hjælp af
--add-masquerade
. For eksempel at aktivere maskering af den
external
zone, skriv:
sudo firewall-cmd --zone=external --add-masquerade
Videresend trafik fra en port til en anden på IP-adressen
I det følgende eksempel videresender vi trafikken fra port
80
til port
8080
på den samme server:
sudo firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toport=8080
Videresend trafik til en anden IP-adresse
I det følgende eksempel videresender vi trafikken fra port
80
til port
80
på en server med IP
10.10.10.2
:
sudo firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toaddr=10.10.10.2
Videresend trafik til en anden server på en anden port
I det følgende eksempel videresender vi trafikken fra port
80
til port
8080
på en server med IP
10.10.10.2
:
sudo firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=10.10.10.2
For at gøre fremadgående regel vedvarende skal du bruge:
sudo firewall-cmd --runtime-to-permanent
Konklusion
Du har lært, hvordan du konfigurerer og administrerer firewall-tjenesten på dit CentOS 8-system.
Sørg for at tillade alle indgående forbindelser, der er nødvendige for, at dit system fungerer korrekt, mens du begrænser alle unødvendige forbindelser.
firewall firewall centos sikkerhedSådan konfigureres og konfigureres indstillinger for router-firewall
Lær hvordan du konfigurerer router-firewall, adgang til hardware-router-siden, konfigurer router-firewallindstillinger. Find ud af hvilke porte der er nødvendige på computeren.
Sådan konfigureres og administreres e-mail-synkronisering på Windows Phone 8
Alt hvad du ønskede at vide om e-mail-synkronisering og opsætningsmuligheder tilgængelige på Windows Phone 8.
Sådan konfigureres en firewall med firewall på centos 7
FirewallD er en komplet firewall-løsning, der administrerer systemets iptables-regler og giver en D-Bus-interface til at betjene dem. I denne tutorial viser vi dig, hvordan du opsætter en firewall med FirewallD på dit CentOS 7-system og forklarer dig de grundlæggende FirewallD-koncepter.