Ubuntu Server 18.04 Administration Guide Part 11 - Configuring Firewall rules with UFW
Spisu treści:
- Wymagania wstępne
- Zainstaluj UFW
- Sprawdź status UFW
- Domyślne zasady UFW
- Profile aplikacji
- Zezwalaj na połączenia SSH
- Włącz UFW
- Zezwalaj na połączenia na innych portach
- Otwórz port 80 - HTTP
- Otwórz port 443 - HTTPS
- Otwórz port 8080
- Zezwalaj na zakresy portów
- Zezwalaj na określone adresy IP
- Zezwalaj na określone adresy IP na określonym porcie
- Zezwalaj na podsieci
- Zezwalaj na połączenia z określonym interfejsem sieciowym
- Odmawiaj połączeń
- Usuń reguły UFW
- Wyłącz UFW
- Zresetuj UFW
- Wniosek
Debian zawiera kilka pakietów, które zapewniają narzędzia do zarządzania zaporą ogniową z zainstalowanymi iptables jako częścią systemu podstawowego. Dla początkujących może być skomplikowane nauczenie się korzystania z narzędzia iptables do prawidłowej konfiguracji i zarządzania firewallem, ale UFW upraszcza to.
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.
Wymagania wstępne
Przed kontynuowaniem tego samouczka upewnij się, że zalogowany użytkownik ma uprawnienia sudo.
Zainstaluj UFW
UFW nie jest domyślnie instalowany w Debianie 9. Możesz zainstalować pakiet
ufw
, wpisując:
Sprawdź status UFW
Po zakończeniu procesu instalacji możesz sprawdzić status UFW za pomocą następującego polecenia:
sudo ufw status verbose
Dane wyjściowe będą wyglądać następująco:
Status: inactive
UFW jest domyślnie wyłączone. Instalacja nie aktywuje zapory automatycznie, aby uniknąć blokady serwera.
Jeśli funkcja UFW jest aktywna, dane wyjściowe będą wyglądać podobnie do następujących:
Domyślne zasady UFW
Domyślnie UFW blokuje wszystkie połączenia przychodzące i zezwala na wszystkie połączenia wychodzące. Oznacza to, że każdy, kto spróbuje uzyskać dostęp do twojego serwera, nie będzie mógł się połączyć, chyba że specjalnie otworzysz port, podczas gdy wszystkie aplikacje i usługi uruchomione na twoim serwerze będą mogły uzyskać dostęp do świata zewnętrznego.
Domyślne zasady są zdefiniowane w
/etc/default/ufw
i można je zmienić za pomocą
sudo ufw default
Zasady zapory są podstawą do budowania bardziej szczegółowych i zdefiniowanych przez użytkownika reguł. W większości przypadków początkowe zasady domyślne UFW są dobrym punktem wyjścia.
Profile aplikacji
Podczas instalowania pakietu z
apt
doda profil aplikacji do katalogu
/etc/ufw/applications.d
który opisuje usługę i zawiera ustawienia UFW.
Aby wyświetlić listę wszystkich profili aplikacji dostępnych w typie systemu:
sudo ufw app list
W zależności od pakietów zainstalowanych w systemie dane wyjściowe będą wyglądać podobnie do następujących:
Available applications: DNS IMAP IMAPS OpenSSH POP3 POP3S Postfix Postfix SMTPS Postfix Submission…
Aby znaleźć więcej informacji na temat określonego profilu i zawartych reguł, użyj następującego polecenia:
sudo ufw app info OpenSSH
Profile: OpenSSH Title: Secure shell server, an rshd replacement Description: OpenSSH is a free implementation of the Secure Shell protocol. Port: 22/tcp
Wyjście powyżej mówi nam, że profil OpenSSH otwiera port
22
.
Zezwalaj na połączenia SSH
Przed włączeniem zapory UFW musimy najpierw zezwolić na połączenia przychodzące SSH.
Jeśli łączysz się ze swoim serwerem ze zdalnej lokalizacji, co prawie zawsze ma miejsce i włączysz zaporę UFW, zanim wyraźnie zezwolisz na połączenia SSH, nie będziesz już mógł połączyć się z serwerem Debian.
Aby skonfigurować zaporę UFW tak, aby zezwalała na przychodzące połączenia SSH, uruchom następujące polecenie:
sudo ufw allow OpenSSH
Rules updated Rules updated (v6)
Jeśli serwer SSH nasłuchuje na porcie innym niż domyślny port 22, konieczne będzie otwarcie tego portu.
Na przykład serwer ssh nasłuchuje na porcie
8822
, a następnie możesz użyć następującego polecenia, aby zezwolić na połączenia na tym porcie:
Włącz UFW
Teraz, gdy zapora sieciowa UFW jest skonfigurowana tak, aby zezwalać na przychodzące połączenia SSH, możesz ją włączyć, uruchamiając:
sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup
Zostaniesz ostrzeżony, że włączenie zapory może zakłócać istniejące połączenia ssh, po prostu wpisz
y
i naciśnij
Enter
.
Zezwalaj na połączenia na innych portach
W zależności od aplikacji, które działają na twoim serwerze i twoich specyficznych potrzeb, musisz także zezwolić na dostęp przychodzący do niektórych innych portów.
Poniżej znajduje się kilka przykładów zezwalania na połączenia przychodzące do niektórych z najbardziej popularnych usług:
Otwórz port 80 - HTTP
Połączenia HTTP mogą być dozwolone za pomocą następującego polecenia:
sudo ufw allow
Zamiast profilu
http
możesz użyć numeru portu
80
:
Otwórz port 443 - HTTPS
Połączenia HTTP mogą być dozwolone za pomocą następującego polecenia:
sudo ufw allow
Aby osiągnąć to samo zamiast
https
, możesz użyć numeru portu,
443
:
Otwórz port 8080
Zezwalaj na zakresy portów
Dzięki UFW możesz również zezwolić na dostęp do zakresów portów. Zezwalając na zakresy portów w UFW, musisz określić protokół
tcp
lub
udp
.
Na przykład, aby zezwolić na porty od
7100
do
7200
zarówno w
tcp
jak i
udp
, uruchom następującą komendę:
sudo ufw allow 7100:7200/tcp
sudo ufw allow 7100:7200/udp
Zezwalaj na określone adresy IP
sudo ufw allow from 64.63.62.61
Zezwalaj na określone adresy IP na określonym porcie
Aby zezwolić na dostęp do określonego portu, powiedzmy port 22 na komputerze roboczym o adresie IP 64.63.62.61, użyj następującego polecenia:
sudo ufw allow from 64.63.62.61 to any port 22
Zezwalaj na podsieci
Polecenie umożliwiające połączenie z podsiecią adresów IP jest takie samo, jak w przypadku korzystania z jednego adresu IP, jedyną różnicą jest to, że musisz określić maskę sieci. Na przykład, jeśli chcesz zezwolić na dostęp do adresów IP od 192.168.1.1 do 192.168.1.254 do portu 3360 (MySQL), możesz użyć tego polecenia:
sudo ufw allow from 192.168.1.0/24 to any port 3306
Zezwalaj na połączenia z określonym interfejsem sieciowym
Aby zezwolić na dostęp do określonego portu, powiedzmy, port 3360 tylko do określonego interfejsu sieciowego
eth2
, użyj
allow in on
i nazwy interfejsu sieciowego:
sudo ufw allow in on eth2 to any port 3306
Odmawiaj połączeń
Domyślną zasadą dla wszystkich połączeń przychodzących jest
deny
co oznacza, że UFW zablokuje wszystkie połączenia przychodzące, chyba że połączenie zostanie specjalnie otwarte.
Załóżmy, że otworzyłeś porty
80
i
443
a twój serwer jest atakowany z sieci
23.24.25.0/24
. Aby odmówić wszystkich połączeń z
23.24.25.0/24
, użyj następującego polecenia:
sudo ufw deny from 23.24.25.0/24
sudo ufw deny from 23.24.25.0/24 to any port 80
sudo ufw deny from 23.24.25.0/24 to any port 443
Pisanie reguł odmowy jest tym samym, co pisanie reguł zezwalania, wystarczy zastąpić
allow
przez
deny
.
Usuń reguły UFW
Istnieją dwa różne sposoby usuwania reguł UFW, według numeru reguły i poprzez podanie rzeczywistej reguły.
Usuwanie reguł UFW według numeru reguły jest łatwiejsze, zwłaszcza jeśli dopiero zaczynasz korzystać z UFW.
Aby usunąć regułę według numeru reguły, najpierw musisz znaleźć numer reguły, którą chcesz usunąć. Aby to zrobić, uruchom następujące polecenie:
sudo ufw status numbered
Status: active To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 80/tcp ALLOW IN Anywhere 8080/tcp ALLOW IN Anywhere
Aby usunąć regułę numer 3, regułę zezwalającą na połączenia z portem 8080, możesz użyć następującego polecenia:
sudo ufw delete 2
Druga metoda polega na usunięciu reguły poprzez określenie rzeczywistej reguły. Na przykład, jeśli dodałeś regułę, aby otworzyć port
8069
, możesz ją usunąć za pomocą:
Wyłącz UFW
Jeśli z jakiegokolwiek powodu chcesz zatrzymać UFW i dezaktywować wszystkie reguły uruchom:
sudo ufw disable
Później, jeśli chcesz ponownie włączyć UTF i aktywować wszystkie reguły, po prostu wpisz:
Zresetuj UFW
Zresetowanie UFW spowoduje wyłączenie UFW i usunięcie wszystkich aktywnych reguł. Jest to przydatne, jeśli chcesz cofnąć wszystkie zmiany i zacząć od nowa.
Aby zresetować UFW, wpisz następujące polecenie:
Wniosek
Nauczyłeś się, jak instalować i konfigurować zaporę UFW na komputerze z systemem Debian 9. Pamiętaj, aby zezwolić na wszystkie połączenia przychodzące, które są niezbędne do prawidłowego funkcjonowania systemu, ograniczając jednocześnie wszystkie niepotrzebne połączenia.
ufw firewall iptables Debian SecurityJak skonfigurować tunelowanie ssh, aby ominąć zaporę
Zapora ogniowa jest dobrą rzeczą, ale jeśli powstrzymuje cię przed zrobieniem czegoś, tunelowanie SSH jest dobrym rozwiązaniem do zbadania.
Jak skonfigurować i zarządzać zaporą ogniową w centos 8
W tym samouczku porozmawiamy o tym, jak skonfigurować i zarządzać zaporą ogniową w CentOS 8. Wyjaśnimy również podstawowe koncepcje zapory ogniowej.
Jak skonfigurować firewall z ufw na Ubuntu 18.04
Domyślnie Ubuntu jest wyposażone w narzędzie do konfiguracji zapory o nazwie UFW (zapora nieskomplikowana). UFW 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.