Установка и настройка CentOS в VirtualBox
Spisu treści:
- Wymagania wstępne
- Podstawowe pojęcia dotyczące zapory ogniowej
- Strefy zapory ogniowej
- Usługi zapory ogniowej
- Firewalld Runtime and Permanent Settings
- Włączanie zapory sieciowej D.
- Strefy zapory ogniowej
- Zmiana celu strefy
- Przypisywanie interfejsu do innej strefy
- Zmiana strefy domyślnej
- Tworzenie nowych stref
- Usługi zapory ogniowej
- Tworzenie nowej usługi FirewallD
- Otwieranie portów i źródłowych adresów IP
- Otwieranie źródłowego adresu IP
- Otwieranie portu źródłowego
- Porty przekierowujące
- Przekazywanie ruchu z jednego portu do drugiego na adres IP
- Przekaż ruch na inny adres IP
- Przekaż ruch do innego serwera na innym porcie
- Wniosek
Zapora ogniowa to metoda monitorowania i filtrowania przychodzącego i wychodzącego ruchu sieciowego. Działa poprzez zdefiniowanie zestawu reguł bezpieczeństwa, które określają, czy zezwolić lub zablokować określony ruch. Prawidłowo skonfigurowana zapora ogniowa jest jednym z najważniejszych aspektów ogólnego bezpieczeństwa systemu.
CentOS 8 jest dostarczany z demonem zapory o nazwie firewalld. Jest to kompletne rozwiązanie z interfejsem D-Bus, który umożliwia dynamiczne zarządzanie zaporą systemową.
W tym samouczku porozmawiamy o tym, jak skonfigurować i zarządzać zaporą ogniową w CentOS 8. Wyjaśnimy również podstawowe koncepcje zapory ogniowej.
Wymagania wstępne
Aby skonfigurować usługę zapory, musisz być zalogowany jako użytkownik root lub użytkownik z uprawnieniami sudo.
Podstawowe pojęcia dotyczące zapory ogniowej
firewalld korzysta z koncepcji stref i usług. Na podstawie skonfigurowanych stref i usług możesz kontrolować, jaki ruch jest dozwolony lub blokowany do iz systemu.
Firewalld może być konfigurowany i zarządzany za pomocą narzędzia wiersza polecenia
firewall-cmd
.
W CentOS 8 iptables jest zastępowane przez nftables jako domyślny backend zapory ogniowej dla demona firewalld.
Strefy zapory ogniowej
Strefy to predefiniowane zestawy reguł określające poziom zaufania do sieci, do których komputer jest podłączony. Możesz przypisać interfejsy sieciowe i źródła do strefy.
Poniżej znajdują się strefy dostarczone przez FirewallD uporządkowane według poziomu zaufania strefy od niezaufanego do zaufanego:
- drop: wszystkie połączenia przychodzące są odrzucane bez powiadomienia. Dozwolone są tylko połączenia wychodzące. blok: Wszystkie połączenia przychodzące są odrzucane z komunikatem
icmp6-adm-prohibited
dla hosta IPmp dlaIPv4
i dla IPv6nicmp6-adm-prohibited
dlaicmp6-adm-prohibited
. Dozwolone są tylko połączenia wychodzące. public: Do użytku w niezaufanych miejscach publicznych. Nie ufasz innym komputerom w sieci, ale możesz zezwolić na wybrane połączenia przychodzące. zewnętrzne: Do użytku w sieciach zewnętrznych z włączonym maskowaniem NAT, gdy system działa jako brama lub router. Dozwolone są tylko wybrane połączenia przychodzące. wewnętrzna: Do użytku w sieciach wewnętrznych, gdy system działa jako brama lub router. Inne systemy w sieci są ogólnie zaufane. Dozwolone są tylko wybrane połączenia przychodzące. dmz: Używany dla komputerów znajdujących się w strefie zdemilitaryzowanej, które mają ograniczony dostęp do reszty sieci. Dozwolone są tylko wybrane połączenia przychodzące. praca: Używany do maszyn roboczych. Inne komputery w sieci są ogólnie zaufane. Dozwolone są tylko wybrane połączenia przychodzące. home: Używany do maszyn domowych. Inne komputery w sieci są ogólnie zaufane. Dozwolone są tylko wybrane połączenia przychodzące. zaufany: wszystkie połączenia sieciowe są akceptowane. Ufaj wszystkim komputerom w sieci.
Usługi zapory ogniowej
Usługi zapory ogniowej to predefiniowane reguły obowiązujące w strefie i określające niezbędne ustawienia umożliwiające ruch przychodzący do określonej usługi. Usługi pozwalają łatwo wykonać kilka zadań w jednym kroku.
Na przykład usługa może zawierać definicje dotyczące otwierania portów, przekazywania ruchu itp.
Firewalld Runtime and Permanent Settings
Firewalld używa dwóch oddzielnych zestawów konfiguracji, środowiska wykonawczego i konfiguracji stałej.
Konfiguracja środowiska wykonawczego jest faktyczną konfiguracją działającą i nie utrzymuje się przy ponownym uruchomieniu. Po uruchomieniu demona zapory ładuje konfigurację stałą, która staje się konfiguracją środowiska wykonawczego.
Domyślnie podczas wprowadzania zmian w konfiguracji Firewalld za pomocą narzędzia
firewall-cmd
zmiany są stosowane w konfiguracji środowiska wykonawczego. Aby zmiany były trwałe,
--permanent
do polecenia opcję
--permanent
.
Aby zastosować zmiany w obu zestawach konfiguracyjnych, możesz użyć jednej z następujących dwóch metod:
-
Zmień konfigurację środowiska wykonawczego i ustaw ją na stałe:
sudo firewall-cmd
sudo firewall-cmd --runtime-to-permanent
Zmień stałą konfigurację i ponownie załaduj demona zapory ogniowej:
sudo firewall-cmd --permanent
sudo firewall-cmd --reload
Włączanie zapory sieciowej D.
W CentOS 8 firewalld jest domyślnie zainstalowany i włączony. Jeśli z jakiegoś powodu nie jest zainstalowany w twoim systemie, możesz zainstalować i uruchomić demona, wpisując:
sudo dnf install firewalld
sudo systemctl enable firewalld --now
sudo dnf install firewalld
sudo systemctl enable firewalld --now
Możesz sprawdzić status usługi zapory za pomocą:
sudo firewall-cmd --state
Jeśli zapora jest włączona, polecenie powinno zostać wydrukowane. W przeciwnym razie zobaczysz, że
not running
.
Strefy zapory ogniowej
Strefa domyślna to ta, która jest używana do wszystkiego, co nie jest jawnie przypisane do innej strefy.
Aby zobaczyć strefę domyślną, wpisz:
sudo firewall-cmd --get-default-zone
public
Aby uzyskać listę wszystkich dostępnych stref, wpisz:
sudo firewall-cmd --get-zones
block dmz drop external home internal public trusted work
Aby zobaczyć aktywne strefy i przypisane do nich interfejsy sieciowe:
sudo firewall-cmd --get-active-zones
Poniższe dane wyjściowe pokazują, że interfejsy
eth0
i
eth1
są przypisane do strefy
public
:
public interfaces: eth0 eth1
Możesz wydrukować ustawienia konfiguracji strefy za pomocą:
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:
Na podstawie powyższego wyniku widzimy, że strefa publiczna jest aktywna i używa domyślnego celu, którym jest
REJECT
. Dane wyjściowe pokazują również, że strefa jest używana przez interfejsy
eth0
i
eth1
i zezwala na ruch klienta DHCP i SSH.
sudo firewall-cmd --list-all-zones
Polecenie drukuje ogromną listę z ustawieniami wszystkich dostępnych stref.
Zmiana celu strefy
Cel określa domyślne zachowanie strefy dla ruchu przychodzącego, który nie jest określony. Można ustawić jedną z następujących opcji:
default
,
ACCEPT
,
REJECT
i
DROP
.
Aby ustawić cel strefy, określ strefę za pomocą opcji
--zone
i cel za pomocą opcji
--set-target
.
Na przykład, aby zmienić cel strefy
public
na
DROP
, uruchom:
sudo firewall-cmd --zone=public --set-target=DROP
Przypisywanie interfejsu do innej strefy
Możesz tworzyć określone zestawy reguł dla różnych stref i przypisywać im różne interfejsy. Jest to szczególnie przydatne, gdy masz wiele interfejsów na swoim komputerze.
Aby przypisać interfejs do innej strefy, określ strefę z opcją
--zone
i interfejs z opcją
--change-interface
.
Na przykład następujące polecenie przypisuje interfejs
eth1
do strefy
work
:
sudo firewall-cmd --zone=work --change-interface=eth1
Sprawdź zmiany, wpisując:
sudo firewall-cmd --get-active-zones
work interfaces: eth1 public interfaces: eth0
Zmiana strefy domyślnej
Aby zmienić strefę domyślną, użyj opcji
--set-default-zone
, a następnie nazwy strefy, którą chcesz ustawić jako domyślną.
Na przykład, aby zmienić domyślną strefę na
home
, uruchom następujące polecenie:
sudo firewall-cmd --set-default-zone=home
Sprawdź zmiany za pomocą:
sudo firewall-cmd --get-default-zone
Tworzenie nowych stref
Firewalld pozwala także tworzyć własne strefy. Jest to przydatne, gdy chcesz utworzyć reguły dla poszczególnych aplikacji.
W poniższym przykładzie utworzymy nową strefę o nazwie
memcached
, otwórz port
11211
i zezwalamy na dostęp tylko z
192.168.100.30
IP
192.168.100.30
:
-
Utwórz strefę:
sudo firewall-cmd --new-zone=memcached --permanent
Dodaj reguły do strefy:
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
Ponownie załaduj demona zapory ogniowej, aby aktywować zmiany:
sudo firewall-cmd --reload
Usługi zapory ogniowej
Za pomocą firewalld można zezwolić na ruch dla określonych portów i / lub źródeł w oparciu o predefiniowane reguły zwane usługami.
Aby uzyskać listę wszystkich domyślnych dostępnych usług, należy:
sudo firewall-cmd --get-services
Więcej informacji o każdej usłudze można znaleźć, otwierając powiązany plik.xml w katalogu
/usr/lib/firewalld/services
. Na przykład usługa HTTP jest zdefiniowana w następujący sposób:
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.
Aby zezwolić na przychodzący ruch HTTP (port 80) dla interfejsów w strefie publicznej, tylko dla bieżącej sesji (konfiguracja środowiska wykonawczego):
sudo firewall-cmd --zone=public --add-service=http
Jeśli modyfikujesz strefę domyślną, możesz
--zone
opcję
--zone
.
Aby sprawdzić, czy usługa została pomyślnie dodana, użyj opcji
--list-services
:
sudo firewall-cmd --zone=public --list-services
ssh dhcpv6-client
Aby pozostawić port 80 otwarty po ponownym uruchomieniu, ponownie uruchom to samo polecenie z opcją
--permanent
lub wykonaj:
sudo firewall-cmd --runtime-to-permanent
Użyj
--list-services
wraz z opcją
--permanent
, aby zweryfikować zmiany:
sudo firewall-cmd --permanent --zone=public --list-services
ssh dhcpv6-client
Składnia usuwania usługi jest taka sama jak przy dodawaniu usługi. Wystarczy użyć
--remove-service
zamiast flagi
--add-service
:
sudo firewall-cmd --zone=public --remove-service=http --permanent
Powyższe polecenie usuwa usługę
http
ze stałej konfiguracji strefy publicznej.
Tworzenie nowej usługi FirewallD
Jak już wspomniano, usługi domyślne są przechowywane w katalogu
/usr/lib/firewalld/services
. Najłatwiejszym sposobem utworzenia nowej usługi jest skopiowanie istniejącego pliku usługi do katalogu
/etc/firewalld/services
, który jest miejscem dla usług utworzonych przez użytkownika i zmodyfikowanie ustawień pliku.
Na przykład, aby utworzyć definicję usługi dla Plex Media Server, możesz użyć pliku usługi SSH:
sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/plexmediaserver.xml
Otwórz nowo utworzony plik
plexmediaserver.xml
i zmień krótką nazwę i opis usługi w
port
, który określa numer portu i protokół, który chcesz otworzyć.
W poniższym przykładzie otwieramy porty
1900
UDP i
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.
Zapisz plik i ponownie załaduj usługę FirewallD:
sudo firewall-cmd --reload
Możesz teraz korzystać z usługi
plexmediaserver
w swoich strefach tak samo, jak innych usług.
Otwieranie portów i źródłowych adresów IP
Firewalld pozwala także szybko włączyć cały ruch z zaufanego adresu IP lub określonego portu bez tworzenia definicji usługi.
Otwieranie źródłowego adresu IP
Aby zezwolić na cały ruch przychodzący z określonego adresu IP (lub zakresu), określ strefę za pomocą opcji
--zone
i źródłowy adres IP za pomocą opcji
--add-source
.
Na przykład, aby zezwolić na cały ruch przychodzący z 192.168.1.10 w strefie
public
, uruchom:
sudo firewall-cmd --zone=public --add-source=192.168.1.10
Utrwal nową regułę:
sudo firewall-cmd --runtime-to-permanent
Sprawdź zmiany za pomocą następującego polecenia:
sudo firewall-cmd --zone=public --list-sources
192.168.1.10
Składnia usuwania źródłowego adresu IP jest taka sama, jak w przypadku dodawania jednego. Wystarczy użyć opcji
--remove-source
zamiast opcji
--add-source
:
sudo firewall-cmd --zone=public --remove-source=192.168.1.10
Otwieranie portu źródłowego
Aby zezwolić na cały ruch przychodzący na danym porcie, określ strefę za pomocą opcji
--zone
oraz port i protokół za pomocą opcji
--add-port
.
Na przykład, aby otworzyć port
8080
w strefie publicznej dla bieżącej sesji, którą zlikwidowałeś:
sudo firewall-cmd --zone=public --add-port=8080/tcp
Protokół może mieć postać
tcp
,
udp
,
sctp
lub
dccp
.
Sprawdź zmiany:
sudo firewall-cmd --zone=public --list-ports
8080
Aby pozostawić port otwarty po ponownym uruchomieniu, dodaj regułę do ustawień stałych, uruchamiając to samo polecenie za pomocą flagi
--permanent
lub wykonując:
sudo firewall-cmd --runtime-to-permanent
Składnia usuwania portu jest taka sama, jak podczas dodawania portu. Wystarczy użyć opcji
--remove-port
zamiast opcji
--add-port
.
sudo firewall-cmd --zone=public --remove-port=8080/tcp
Porty przekierowujące
Aby przekierować ruch z jednego portu do drugiego, najpierw włącz maskaradę dla żądanej strefy za pomocą opcji
--add-masquerade
. Na przykład, aby włączyć maskaradę dla strefy
external
, wpisz:
sudo firewall-cmd --zone=external --add-masquerade
Przekazywanie ruchu z jednego portu do drugiego na adres IP
W poniższym przykładzie przekazujemy ruch z portu
80
do portu
8080
na tym samym serwerze:
sudo firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toport=8080
Przekaż ruch na inny adres IP
W poniższym przykładzie przekazujemy ruch z portu
80
do portu
80
na serwerze o IP
10.10.10.2
:
sudo firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toaddr=10.10.10.2
Przekaż ruch do innego serwera na innym porcie
W poniższym przykładzie przekierowujemy ruch z portu
80
do portu
8080
na serwerze o IP
10.10.10.2
:
sudo firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=10.10.10.2
Aby utrwalić regułę przekazywania, użyj:
sudo firewall-cmd --runtime-to-permanent
Wniosek
Nauczyłeś się konfigurować i zarządzać usługą firewalld w swoim systemie CentOS 8.
Upewnij się, że zezwalasz na wszystkie połączenia przychodzące, które są niezbędne do prawidłowego funkcjonowania systemu, jednocześnie ograniczając wszystkie niepotrzebne połączenia.
firewalld firewall centos bezpieczeństwoNarzędzie do rozwiązywania problemów z zaporą systemu Windows: Napraw i napraw automatycznie problemy z zaporą systemu Windows
Pobierz narzędzie do rozwiązywania problemów z zaporą systemu Windows. Czy twoja zapora systemu Windows daje ci problemy? Czy otrzymujesz ostrzeżenie o zabezpieczeniach Zapora systemu Windows jest wyłączona lub może nie masz dostępu do udostępnionych plików lub drukarek.
Jak skonfigurować i skonfigurować ustawienia routera Zapora
Dowiedz się, jak skonfigurować zaporę routera, uzyskać dostęp do strony routera sprzętowego, skonfigurować ustawienia zapory routera. Sprawdź, które porty są niezbędne na komputerze.
Jak skonfigurować zaporę ogniową z ufw na Debian 9
UFW (Uncomplicated Firewall) to przyjazny dla użytkownika interfejs do zarządzania regułami zapory iptables, a jego głównym celem jest ułatwienie zarządzania iptables lub, jak sama nazwa wskazuje, nieskomplikowane. W tym samouczku pokażemy, jak skonfigurować zaporę ogniową z UFW na Debianie 9.