Dlaczego zapora jest domyślnie wyłączona?

64

Dlaczego firewall ufw jest zawarty w Ubuntu, skoro nie jest włączony i wstępnie skonfigurowany domyślnie? Większość użytkowników nawet nie wie, że tam jest, ponieważ nie jest dostępna żadna nakładka GUI.

6205
źródło
6
Byłem zszokowany, gdy przypadkowo dowiedziałem się, że zapora jest zainstalowana, ale wyłączona! Argumenty wymienione tutaj są dość słabe.
HRJ,
1
Mam to samo pytanie, dlatego tu trafiłem, po prostu mam bardzo dzikie przypuszczenie, że użytkownicy Linuksa (w przeciwieństwie do użytkowników systemu Windows, którzy częściej są normalnymi użytkownikami komputerów stacjonarnych) mają różne zastosowania Linuksa: niektóre do testowania, niektórzy używają ssh, niektórzy nie, dużo używają go jako serwera WWW, bazy danych lub serwera smtp ... filozofia Linuksa pozwoli każdemu użytkownikowi skonfigurować zaporę ogniową według własnego uznania.
user10089632
To niesamowicie zła decyzja projektowa. Po prostu zadziwiająco źle!
iono

Odpowiedzi:

37

Po zainstalowaniu Ubuntu jest dostarczane bez otwartych portów TCP lub UDP, stąd przekonanie, że nie ma powodu, aby domyślnie uruchamiać nieskomplikowaną zaporę ogniową (ufw) . Zgadzam się jednak, że wyłączenie ufw jest dziwną decyzją. Moje rozumowanie jest takie, że niedoświadczeni użytkownicy zamierzają zainstalować takie rzeczy, jak Samba, Apache itp., Eksperymentując z systemem przed nimi postawionym. Jeśli nie rozumieją implikacji tego, narażą się na złośliwe zachowanie w Internecie.

Przykład - mam laptopa skonfigurowanego do pracy z Sambą, co w mojej sieci domowej jest chronione za pomocą WPA2. Ale jeśli zabiorę laptopa do Starbucks, może nic o tym nie pomyślę, ale ten laptop teraz reklamuje moje akcje wszystkim i różnie. Dzięki zaporze ogniowej mogę ograniczyć moje porty samby tylko do mojego serwera domowego lub urządzeń równorzędnych. Nie muszę się teraz martwić, kto może próbować połączyć się z moim laptopem. To samo dotyczy VNC, SSH lub ogromnej liczby innych przydatnych usług, z którymi mój laptop może być uruchomiony lub próbuje się połączyć.

Ubuntu ma bardzo pewne podejście do niektórych elementów bezpieczeństwa, z którą nie mogę się zgodzić. Bezpieczeństwo może być technicznie włączone lub wyłączone, ale nakładając na siebie elementy bezpieczeństwa, powstaje lepszy system. Jasne, bezpieczeństwo Ubuntu jest wystarczające dla dużej liczby przypadków użycia, ale nie dla wszystkich.

Podsumowując, uruchom ufw. Lepiej dmuchać na zimne.

Nieskomplikowana zapora ma wiele graficznych interfejsów, ale najprostszym jest Gufw .

Logo GUFW

sudo apt-get install gufw

Tutaj zezwalam na cały ruch z określonych sieci VLAN serwera w moim środowisku korporacyjnym i dodałem regułę zezwalającą na niezbędne porty dla odwrotnej sesji SSH do odbicia się od tego komputera.

Zrzut ekranu GUFW

Scaine
źródło
ufw tylko kontroluje iptables - dlatego domyślnie nie jest włączony. Zaawansowani użytkownicy mogą korzystać z iptables.
papukaija
3
@papukaija - zaawansowani użytkownicy iptables mogą korzystać z iptables. Zaawansowany użytkownik w systemie bsd użyłby pf, ale to nie powoduje, że ten użytkownik, przychodząc do Ubuntu, nagle staje się nieoczywisty. Podobnie z kimś, kto jest głównie inżynierem sieci - ta osoba znałaby logikę Cisco lub Juniper ACL. To nie jest dla wszystkich, ale ufw może uczynić konfigurację bardziej dostępną i moim zdaniem jest to dobra rzecz.
belacqua
2
@jgbelacqua: To prawda, ale odpowiedź scaine daje obraz, że ufw to zapora ogniowa, podczas gdy jest to tylko nakładka na iptables.
papukaija
1
(Agresywne ostrzeżenie pedantyczne) Zalecam użytkownikom, aby nie zezwalali na losowe przychodzące pakiety UDP / 53 na podstawie fałszywego adresu źródłowego. Zostały wykorzystane w rzeczywistych atakach (trucizna DNS, DoS przez zwiększony ruch). Musisz to zrobić, dlaczego?
sourcejedi
Tak, prawdopodobnie prawda. To naprawdę zły zrzut ekranu starego komputera, na którym chciałem po prostu OpenDNS z moich dzienników. To nie jest dobra praktyka. Jeśli będę miał czas, spróbuję zaktualizować zrzut ekranu, ponieważ GUFW i tak wygląda całkiem inaczej.
Scaine,
28

W przeciwieństwie do systemu Microsoft Windows, komputer Ubuntu nie potrzebuje zapory, aby był bezpieczny w Internecie, ponieważ domyślnie Ubuntu nie otwiera portów, które mogą powodować problemy z bezpieczeństwem.

Zasadniczo odpowiednio zahartowany system Unix lub Linux nie potrzebuje zapory ogniowej. Zapory ogniowe (z wyjątkiem niektórych problemów bezpieczeństwa z komputerami z systemem Windows) mają większy sens, aby blokować sieci wewnętrzne w Internecie. W takim przypadku komputery lokalne mogą komunikować się ze sobą za pośrednictwem otwartych portów, które są zaporą blokującą na zewnątrz. W takim przypadku komputery są celowo otwierane na potrzeby komunikacji wewnętrznej, która nie powinna być dostępna poza siecią wewnętrzną.

Standardowy pulpit Ubuntu nie wymagałby tego, dlatego ufw nie jest domyślnie włączony.

txwikinger
źródło
Czy (g) uwf nie jest tylko nakładką? Mam na myśli, że prawdziwa zapora ogniowa to iptables, prawda?
papukaija
9
Nawet odpowiednio hartowane systemy skorzystają z zapory ogniowej. Na przykład, jeśli uruchomisz Sambę, otworzysz różne porty dla wszystkich. Dzięki firwall możesz ograniczyć to tylko do twojego serwera lub peerów.
Scaine
netfilter + iptables lub netfilter + ufw (który obejmuje iptables) zapewnia zaporę ogniową. Ale jeśli masz ufw, będziesz miał funkcję zapory ogniowej.
belacqua
4
[potrzebne źródło]
ζ--
7
To jest całkowicie absurdalne. Zapora ogniowa służy do ochrony komunikacji przychodzącej i wychodzącej przed nieautoryzowanym użyciem ... Oznacza to, że jeśli zainstalujesz, powiedzmy, odtwarzacz muzyki, który nieprawidłowo otwiera port, będziesz mieć otwarte połączenie z Internetem. To się nazywa prewencyjne bezpieczeństwo, chronisz przed tym, co może się zdarzyć. Ta odpowiedź daje fałszywe poczucie bezpieczeństwa w środowiskach Linux.
Daniel
8

W Ubuntu lub innym Linuksie zapora ogniowa jest częścią systemu podstawowego i nazywa się iptables / netfilter. Jest zawsze włączony.

iptables składa się z zestawu reguł dotyczących tego, co robić i jak zachowywać się, gdy pakiet wychodzi, gdy przychodzi. Jeśli chcesz jawnie blokować połączenia przychodzące z określonego adresu IP, musisz dodać regułę. W rzeczywistości nie musisz tego robić. Zrelaksować się.

Jeśli chcesz od czegoś dobrego bezpieczeństwa, pamiętaj, aby nie instalować losowego oprogramowania z dowolnego miejsca. Może to zepsuć domyślne ustawienia zabezpieczeń. Nigdy nie uruchamiaj jako root. Zawsze ufaj oficjalnym repozytoriom.

Myślę, że chciałeś zapytać, czy interfejs użytkownika jest zainstalowany, czy nie?

Manish Sinha
źródło
8
Wygląda na to, że zapora jest „zawsze włączona”, co nie jest prawdą. Może być zintegrowany, ale jeśli go nie włączysz sudo ufw enable, pierwsze oprogramowanie serwera, które zainstalujesz, otworzy port, w którym wbudowane iptables nic nie zrobią.
Scaine
4
@Scaine: ufw nie wykonuje pracy; robi to iptables, który jest domyślnie włączony.
papukaija
7
Cześć chłopaki. UFW jest nakładką na iptables - rozumiem. Jednak domyślnie iptables nie robi NIC. To nie działa To nie jest zapora ogniowa. Jest gotowy, ale bezużyteczny. MUSISZ uruchomić, sudo ufw enablezanim iptables zostanie skonfigurowany, aby cokolwiek zrobić. Manish, twoja odpowiedź brzmi jak zapora ogniowa. Mówisz „technicznie jest” i technicznie masz rację. Ale to nic nie robi, więc dajesz wrażenie fałszywego bezpieczeństwa, gdy takiego nie ma.
Scaine 24.01.11
3
@manish, w odniesieniu do „normalnych użytkowników instalujących oprogramowanie serwera”. Wielu zainstaluje Sambę, jak na mój przykład. Wiele innych korzysta z wbudowanego serwera VNC w preferencjach / pulpicie zdalnym. Jest to w porządku w domu (prawdopodobnie), ale zabierz laptopa na zewnątrz z włączonymi usługami, potencjalnie narażasz się na złośliwe zachowanie.
Scaine
2
Porty ssh, związane z drukowaniem i pocztowe są również często otwierane dla całkowicie normalnych operacji na pulpicie lub serwerze. Można je zablokować (na przykład przez źródłowy adres IP) lub całkowicie za pomocą ufw lub innego zapory ogniowej / ACL.
belacqua
4

Ponadto gufwmoże zapewnić interfejs użytkownika GUI. (To nie jest dla mnie bardziej intuicyjne niż ufw w wierszu poleceń, ale daje bardziej wizualne przypomnienie tego, co tam jest.) Zgadzam się, że zapora ogniowa nie jest obecnie dobrze reklamowana. Gdybym miał zgadywać, powiedziałbym, że ma to uniemożliwić nowym użytkownikom strzelanie sobie w stopę.

Belacqua
źródło
-1

Ponieważ: hasła lub klucze kryptograficzne.

To jest IMO poprawna odpowiedź i jak dotąd zupełnie inna odpowiedź niż inne. ufwjest domyślnie wyłączona dla wygody większości użytkowników Ubuntu, którzy wiedzą, że hasła są ważną formą ochrony zapewniającą prywatność i ograniczoną kontrolę. Większość użytkowników Ubuntu będzie „weryfikować” oprogramowanie, instalując je z repozytoriów zatwierdzonych przez Ubuntu i będzie uważać na inne źródła, aby ogólnie zminimalizować ryzyko, a nie tylko ryzyko związane z portami. Robiąc to, przeszli długą drogę do zminimalizowania ryzyka związanego z portem, które było już małe, ponieważ używają „normalnych” haseł i bardzo małe, jeśli używają trudnych do brutalnego haseł lub krypto-kluczy.

Niektóre z przytoczonych zagrożeń, takie jak serwer plików Samba, serwer HTTP Apache, SSH, VNC w sieci Wi-Fi Starbucks (publicznej) są zazwyczaj eliminowane przez trudne do brutalnego hasła na hoście.

ufw„łamie” oprogramowanie, tak jak powinna zapora ogniowa, dlatego domyślnie jest ono wyłączone. Aby przetestować to na nowej instalacji Ubuntu, serwer A, zainstaluj sshi zaloguj się z innej maszyny, klienta B, w tej samej sieci lokalnej, a zobaczysz, że działa natychmiast. Wyloguj. Następnie wróć do serwera A i sudo ufw enable. Wróć do klienta B, a nie powiedzie sshsię serwer A.

H2ONaCl
źródło
1
Hasła znajdują się na znacznie wyższym poziomie stosu. Systemy mogą być atakowane przez proste przepełnienia bufora na niższych poziomach stosu.
HRJ
Dlaczego głosowanie negatywne?
H2ONaCl
@HRJ, „systemy mogą zostać zaatakowane” nie obala, że ​​wygoda ma znaczenie. Nie odniosłeś się do poprawności tego, co napisałem. Mam rację. Jesteś na stycznej.
H2ONaCl