Wyszukiwanie w witrynie

Jak otworzyć port dla określonego adresu IP w zaporze firewall


Jak mogę zezwolić na ruch z określonego adresu IP w mojej sieci prywatnej lub zezwolić na ruch z określonej sieci prywatnej przez zaporę sieciową do określonego portu lub usługi w Red Hat Enterprise Linux (RHEL) czy serwer CentOS?

W tym krótkim artykule dowiesz się, jak otworzyć port dla określonego adresu IP lub zakresu sieci na serwerze RHEL lub CentOS z zaporą sieciową firewalld.

Najbardziej odpowiednim sposobem rozwiązania tego problemu jest użycie strefy zapory sieciowej. Musisz więc utworzyć nową strefę, w której będą przechowywane nowe konfiguracje (lub możesz skorzystać z dowolnej dostępnej bezpiecznej strefy domyślnej).

Otwórz port dla określonego adresu IP w zaporze firewall

Najpierw utwórz odpowiednią nazwę strefy (w naszym przypadku użyliśmy mariadb-access, aby umożliwić dostęp do serwera bazy danych MySQL).

firewall-cmd --new-zone=mariadb-access --permanent

Następnie załaduj ponownie ustawienia zapory sieciowej, aby zastosować nową zmianę. Jeśli pominiesz ten krok, przy próbie użycia nowej nazwy strefy może pojawić się błąd. Tym razem nowa strefa powinna pojawić się na liście stref, jak pokazano na poniższym zrzucie ekranu.

firewall-cmd --reload
firewall-cmd --get-zones

Następnie dodaj źródłowy adres IP (10.24.96.5/20) i port (3306), który chcesz otworzyć na serwerze lokalnym, jak pokazano. Następnie załaduj ponownie ustawienia zapory sieciowej, aby zastosować nowe zmiany.

firewall-cmd --zone=mariadb-access --add-source=10.24.96.5/20 --permanent
firewall-cmd --zone=mariadb-access --add-port=3306/tcp  --permanent
firewall-cmd --reload

Alternatywnie możesz zezwolić na ruch z całej sieci (10.24.96.0/20) do usługi lub portu.

firewall-cmd --zone=mariadb-access --add-source=10.24.96.0/20 --permanent
firewall-cmd --zone=mariadb-access --add-port=3306/tcp --permanent
firewall-cmd --reload

Aby potwierdzić, że nowa strefa ma wymagane ustawienia dodane powyżej, sprawdź jej szczegóły za pomocą poniższego polecenia.

firewall-cmd --zone=mariadb-access --list-all 

Usuń port i strefę z zapory ogniowej

Możesz usunąć źródłowy adres IP lub sieć, jak pokazano.

firewall-cmd --zone=mariadb-access --remove-source=10.24.96.5/20 --permanent
firewall-cmd --reload

Aby usunąć port ze strefy, wydaj następujące polecenie i załaduj ponownie ustawienia zapory:

firewall-cmd --zone=mariadb-access --remove-port=3306/tcp --permanent
firewall-cmd --reload

Aby usunąć strefę, uruchom następujące polecenie i ponownie załaduj ustawienia zapory:

firewall-cmd --permanent --delete-zone=mariadb-access
firewall-cmd --reload

Ostatnia, ale nie lista, możesz także użyć bogatych reguł zapory ogniowej. Oto przykład:

firewall-cmd --permanent –zone=mariadb-access --add-rich-rule='rule family="ipv4" source address="10.24.96.5/20" port protocol="tcp" port="3306" accept'

Otóż to! Mamy nadzieję, że powyższe rozwiązania zadziałały dla Ciebie. Jeśli tak, daj nam znać za pomocą poniższego formularza opinii. Możesz także zadawać pytania lub dzielić się ogólnymi komentarzami na ten temat.