Ubuntu

Instalacja i konfiguracja UFW w Ubuntu 20.04 LTS

Instalacja i konfiguracja UFW w Ubuntu 20.04 LTS
UFW, czyli Uncomplicated Firewall, to przyjazna dla użytkownika nakładka na iptables na Linuksie. UFW jest napisany w Pythonie (obsługuje Python 3.5 i wyżej) i jest obecnie de facto narzędziem do zarządzania zaporą ogniową w systemach Ubuntu Ubuntu. To narzędzie jest bardzo przyjazne dla użytkownika i działa jako świetna zapora sieciowa oparta na hoście.

Ten artykuł pokazuje, jak zainstalować i używać UFW na Ubuntu 20.04 System LTS.

Instalacja

UFW jest preinstalowany na większości systemów Ubuntu. Jeśli twoja kompilacja nie ma już zainstalowanego tego programu, możesz zainstalować go za pomocą przystawki lub menedżerów pakietów apt.$ sudo przystawki zainstaluj ufw

$ sudo apt zainstaluj ufw

Osobiście wolę używać do tego menedżera pakietów apt, ponieważ snap jest mniej popularny i nie chcę mieć tej dodatkowej złożoności. W chwili pisania tego tekstu wersja opublikowana dla UFW to 0.36 za 20.04 wydanie.

Przychodzące vs. Ruch wychodzący

Jeśli jesteś początkujący w świecie sieci, pierwszą rzeczą, którą musisz wyjaśnić, jest różnica między ruchem przychodzącym a wychodzącym.

Kiedy instalujesz aktualizacje za pomocą apt-get, przeglądasz Internet lub sprawdzasz pocztę, wysyłasz „wychodzące” żądania do serwerów, takich jak Ubuntu, Google itp. Aby uzyskać dostęp do tych usług, nie potrzebujesz nawet publicznego adresu IP. Zwykle jeden publiczny adres IP jest przydzielany dla, powiedzmy, domowego połączenia szerokopasmowego, a każde urządzenie otrzymuje własny prywatny adres IP. Router obsługuje następnie ruch za pomocą czegoś znanego jako NAT lub translacja adresów sieciowych.

Szczegóły dotyczące NAT i prywatnych adresów IP wykraczają poza zakres tego artykułu, ale film, do którego link znajduje się powyżej, jest doskonałym punktem wyjścia. Wracając do UFW, domyślnie UFW zezwoli na cały regularny wychodzący ruch internetowy. Twoje przeglądarki, menedżery pakietów i inne programy wybierają losowy numer portu - zwykle powyżej 3000 - i w ten sposób każda aplikacja może śledzić swoje połączenie (połączenia).

Kiedy korzystasz z serwerów w chmurze, zwykle mają one publiczny adres IP, a powyższe zasady zezwalania na ruch wychodzący nadal obowiązują. Ponieważ nadal będziesz używać narzędzi, takich jak menedżery pakietów, które rozmawiają z resztą świata jako „klient”, UFW domyślnie zezwala na to.

Zabawa zaczyna się od ruchu przychodzącego. Aplikacje, takie jak serwer OpenSSH, którego używasz do logowania się do maszyny wirtualnej, nasłuchują na określonych portach (np. 22) przychodzący prośby, podobnie jak inne aplikacje. Serwery WWW potrzebują dostępu do portów 80 i 443.

Częścią zadania zapory jest umożliwienie określonym aplikacjom nasłuchiwania określonego ruchu przychodzącego, blokując jednocześnie wszystkie niepotrzebne. Możesz mieć zainstalowany serwer bazy danych na swojej maszynie wirtualnej, ale zwykle nie musi on nasłuchiwać przychodzących żądań na interfejsie z publicznym adresem IP. Zwykle po prostu nasłuchuje w interfejsie pętli zwrotnej dla żądań.

W sieci jest wiele botów, które nieustannie bombardują serwery fałszywymi żądaniami włamania się do środka lub wykonania prostego ataku typu Denial of Service. Dobrze skonfigurowana zapora powinna być w stanie zablokować większość tych sztuczek za pomocą wtyczek innych firm, takich jak Fail2ban.

Ale na razie skupimy się na bardzo podstawowej konfiguracji.

Podstawowe użycie

Teraz, gdy masz już zainstalowany UFW w swoim systemie, przyjrzymy się kilku podstawowym zastosowaniom tego programu. Ponieważ reguły zapory są stosowane w całym systemie, poniższe polecenia są uruchamiane jako użytkownik root. Jeśli wolisz, możesz użyć sudo z odpowiednimi uprawnieniami do tej procedury.

# status ufw
Status: nieaktywny

Domyślnie UFW jest w stanie nieaktywnym, co jest dobrą rzeczą. Nie chcesz blokować całego ruchu przychodzącego na porcie 22, który jest domyślnym portem SSH. Jeśli jesteś zalogowany na zdalnym serwerze przez SSH i zablokujesz port 22, zostaniesz zablokowany na serwerze.

UFW ułatwia nam wybicie dziury tylko dla OpenSSH. Uruchom poniższe polecenie:

[email chroniony]:~# lista aplikacji ufw
Dostępne aplikacje:
OpenSSH

Zauważ, że nadal nie włączyłem zapory. Dodamy teraz OpenSSH do naszej listy dozwolonych aplikacji, a następnie włączymy zaporę sieciową. Aby to zrobić, wprowadź następujące polecenia:

# ufw zezwalaj na OpenSSH
Zaktualizowano zasady
Zaktualizowano zasady (v6)
# ufw włącz

Polecenie może zakłócić istniejące połączenia SSH. Kontynuuj operację (y|n)? tak.

Zapora jest teraz aktywna i włączona przy starcie systemu.

Gratulacje, UFW jest teraz aktywne i działa. UFW pozwala teraz tylko OpenSSH nasłuchiwać przychodzących żądań na porcie 22. Aby w dowolnym momencie sprawdzić stan zapory, uruchom następujący kod:

# status ufw
Status: aktywny
Do działania Od
-- ------ ----
OpenSSH ZEZWALAJ Wszędzie
OpenSSH (v6) ZEZWALAJ WSZĘDZIE (v6)

Jak widać, OpenSSH może teraz odbierać żądania z dowolnego miejsca w Internecie, pod warunkiem, że dociera do portu 22. Wiersz v6 wskazuje, że reguły dotyczą również IPv6.

Możesz oczywiście zablokować określone zakresy adresów IP lub zezwolić tylko na określony zakres adresów IP, w zależności od ograniczeń bezpieczeństwa, w których pracujesz.

Dodawanie aplikacji

W przypadku najpopularniejszych aplikacji polecenie ufw app list automatycznie aktualizuje listę polityk podczas instalacji. Na przykład, po zainstalowaniu serwera WWW Nginx, zobaczysz następujące nowe opcje:

# trafna instalacja nginx
# lista aplikacji ufw
Dostępne aplikacje:
Nginx pełny
Nginx HTTP
Nginx HTTPS
OpenSSH

Śmiało i spróbuj poeksperymentować z tymi zasadami. Pamiętaj, że możesz po prostu zezwolić na numery portów, zamiast czekać na wyświetlenie profilu aplikacji. Na przykład, aby zezwolić na port 443 dla ruchu HTTPS, po prostu użyj następującego polecenia:

# ufw zezwól 443
# status ufw
Status: aktywny
Do działania Od
-- ------ ----
OpenSSH ZEZWALAJ Wszędzie
443 ZEZWALAJ WSZĘDZIE
OpenSSH (v6) ZEZWALAJ WSZĘDZIE (v6)
443 (v6) ZEZWALAJ WSZĘDZIE (v6)

Wniosek

Teraz, gdy masz już posortowane podstawy UFW, możesz poznać inne potężne możliwości zapory, zaczynając od zezwalania i blokowania zakresów adresów IP. Posiadanie przejrzystych i bezpiecznych zasad zapory sieciowej zapewni bezpieczeństwo i ochronę systemów.

Ubuntu Change Password
In terms of security, Linux is definitely one of the tightest. The password system is one of the most important parts. Without the password, you're no...
How to Add and Remove PPA on Ubuntu
If you're using Ubuntu, you're already familiar with the software repository. It's a HUGE collection of all the necessary tools Ubuntu needs to run. T...
Install SuperTuxKart in Ubuntu 18.04
SuperTuxKart is a 3D arcade racing game designed for Linux based operating system. It is a multiplatform game and comes for Windows, Mac, and Android ...