Nowe posty

Autor Wątek: Zapora w Linuxie Manjaro  (Przeczytany 613 razy)

Offline kowa.pi

  • Nowy na forum
  • *
  • Wiadomości: 32
    • Zobacz profil
Zapora w Linuxie Manjaro
« dnia: 2022-06-08, 14:03:01 »
Cześć. Używam Linux Manjaro 64 Xfce.

1. Jak sprawdzić które porty w systemie są otwarte/zamknięte?
2. Jak sprawdzić jakich portów używają programy takie jak Firefox, Thunderbird, GoogleEarth, Pigwin, Pacman, VirtualBox? (tylko tego używam do internetu)
3. Jak prawidłowo zamknąć cały inny ruch w zaporze pozostawiając jedynie otwarte porty dla w/w programów?

Offline robson75

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 340
    • Zobacz profil
Odp: Zapora w Linuxie Manjaro
« Odpowiedź #1 dnia: 2022-06-08, 14:14:16 »
Co wy wszyscy macie z tą zaporą, o wiele prościej jest skonfigurować iptables, i to w zupełności na systemie linux wystarczy.
Arch Linux Xfce+compiz - 64Bit Linux User #621110
anarchyinstaller

Offline kowa.pi

  • Nowy na forum
  • *
  • Wiadomości: 32
    • Zobacz profil
Odp: Zapora w Linuxie Manjaro
« Odpowiedź #2 dnia: 2022-06-08, 15:35:05 »
To za ciężkie na nasze głowy te arch wiki :)

Offline robson75

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 340
    • Zobacz profil
Odp: Zapora w Linuxie Manjaro
« Odpowiedź #3 dnia: 2022-06-08, 15:47:26 »
Jeżeli chcesz używać Manjaro, to radzę się dobrze zaznajomić z arch wiki.
Arch Linux Xfce+compiz - 64Bit Linux User #621110
anarchyinstaller

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 2840
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Odp: Zapora w Linuxie Manjaro
« Odpowiedź #4 dnia: 2022-06-08, 20:41:02 »
Cytuj
2. Jak sprawdzić jakich portów używają programy takie jak Firefox, Thunderbird, GoogleEarth, Pigwin, Pacman, VirtualBox? (tylko tego używam do internetu)

Używają losowych portów. Piszę to, jako osoba, która napisała kiedyś własny, uproszczony stos IP działający w przestrzeni użytkownika (kernel Linuksa tylko z driverami do kart sieciowych i bez żadnego protokołu sieciowego, nawet złamanego ARPa).

Tutaj masz opisaną ścieżkę zdrowia pakietów przez iptables.
Tutaj masz pierdylion obrazków o tym, ale bez komentarza.

Dodatkowo dorwij gdzieś Sieci komputerowe Tanenbauma, tam będziesz miał opisany sam protokół IP (między innymi), bo bez tego za dużo tłumaczenia. Wersja angielska jest już w 6. wydaniu. A co do tłumaczenia, zajrzyj do mojej odpowiedzi na wątek Reguły ufw zapory w Linux sprzed paru dni, konkluzja dotyczy także Ciebie.
« Ostatnia zmiana: 2022-06-08, 20:43:48 wysłana przez Paweł Kraszewski »
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Offline marcin'82

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 380
    • Zobacz profil
Odp: Zapora w Linuxie Manjaro
« Odpowiedź #5 dnia: 2022-06-09, 07:43:55 »
Cytuj
1. Jak sprawdzić które porty w systemie są otwarte/zamknięte?

Przeskanować porty podstawowe 1-1024 na przykład przez stronę https://www.grc.com/shieldsup .

2. Jak sprawdzić jakich portów używają programy takie jak Firefox, Thunderbird, GoogleEarth, Pigwin, Pacman, VirtualBox? (tylko tego używam do internetu)

sudo lsof -Pi4

3. Jak prawidłowo zamknąć cały inny ruch w zaporze pozostawiając jedynie otwarte porty dla w/w programów?

Zależy od przyjętej polityki użytkownika. Paweł Kraszewski opisywał innemu użytkownikowi w jednym ze swoich postów.

Na marginesie (bajdełej), firewalld (Fedora), został przepisany już jakiś czas temu na nftables. Czy to lepsze, hiper super - nie wiem. W każdym razie składnia i kod może być wydatnie krótszy, nie trzeba powtarzać kilku podobnych reguł, itd., itp.
marcin82

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2562
  • 1709
    • Zobacz profil
Odp: Zapora w Linuxie Manjaro
« Odpowiedź #6 dnia: 2022-06-09, 20:04:07 »
Ad.1
Poprzez sprawdzenie usług nasłuchujących lub przez skanowanie.
https://forum.linux.pl/index.php/topic,25718.0.html

Ad.2
Komenda tcpdump pokaże zarówno połączenia wchodzące i wychodzące oraz połączenie trwające bardzo krótko.
Połączenia dłuższe można próbować sprawdzić przy pomocy np.
lsof -i :0-65535
ss -utp
i może
netstat -tup

Ad.3
Cytuj
3. Jak prawidłowo zamknąć cały inny ruch w zaporze pozostawiając jedynie otwarte porty dla w/w programów?
Zależy od zapory. Zasada budowy pewnie ta sama lub podobna. Wygląd regół może wyglądać trochę inaczej.

Edycja ...

Cytuj
jedynie otwarte porty dla w/w programów? ... ( Firefox, Thunderbird, GoogleEarth, Pigwin, Pacman, VirtualBox )
Dla mnie otwarte porty to porty na których aplikacje nasłuchują (LISTEN) , czyli czekają na połączenie przychodzące.

Cytuj
serwer <-- ( zapytanie ) klient
serwer ( odpowiedź ) --> klient

Takie aplikacje nazywamy aplikacjami serwerowymi
Mam wątpliwości czy takie aplikacje posiadasz.
To może być np. serwer poczty, serwer do druku, serwer do monitorowania systemu, komunikator ( który łączy się bezposrednio bez serwerów zewnętrznych ), serwer gry.

Bardzo często w poradnikach znajdziesz że w typowej zaporze
połączenia wyjściowe są zezwolone
połączenia wejściowe są blokowane.

Ale nie w dosłownym tego znaczeniu.
Przyjżyj się podstawowej zaporze iptables dła zwykłych użytkowników żeby spróbować zrozumieć.

iptables -P INPUT   DROP
iptables -P FORWARD DROP
iptables -P OUTPUT  ACCEPT
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

- domyślna polityka połączenia wejściowe blokuje.
- domyślna polityka przekierowania blokuje
- domyślna polityka połączenia wyjściowe blokuje.

Z tymi trzema regółami połączenie internetowe raczej nie będzie działać tak jakbyśmy chcieli,
ponieważ np. przeglądarka wyśle zapytanie do internetu, ale nie otrzymamy odpowiedzi, bo jest blokowane.

Dlatego na końcu znajduje się jeszcze jedna ważna reguła
Cytuj
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Jak będziesz się bawił komendami to zauważysz że niektóre zwracają stan połączenia
https://pl.wikipedia.org/wiki/Protok%C3%B3%C5%82_sterowania_transmisj%C4%85
Zostało to wykorzystane do filtrowania połączeń internetowych w zaporze.
W tym przypadku reguła pozwala na połącznienia wejściowe jeśli mają stan stały (ESTABLISHED), lub powiązany (RELATED)


Cytuj
iptables -A INPUT -i lo -j ACCEPT
Ta regóła jest dla połączeń " lokalnych " / między procesami w systemie.
Przy pomocy komendy
ifconfig 
lub
ip a 
możesz zauważyć że jest taki interfejs " lo " w systemie. https://pl.wikipedia.org/wiki/Localhost

Taka podstawowa zapora pozwala " w miarę " na bezpieczne korzystanie z przeglądarki.

Mam na myśli że nawet gdybyś miał włączoną usługę serwerową to zapora nie pozwoli na połączenie.
Natomiast jak to przysłowie mówi jak nie dzwiami to oknem.
Czyli hakerzy próbują przekonać użytkownika by sam pobrał złośliwe oprogramowanie.

Komputery serwerowe gdzie usługi i porty muszą być otwarte mają już gorzej.
Ponieważ otwarte porty pozwalają na bezpośredni atak na aplikacje, jesli nasłuchują / czekają na połączenie.

Zapory dla komputerów serwerowych zwykle mają bardziej zaostrzoną politykę.
Czyli domyślnie blokują wszystko, więc zwykle muszą być dodane dwie reguły.
Dla połączeń wejściowych ( przychodzących ) i połączeń wyjściowych ( wychodzących ).
np.
https://github.com/tele1/Tmur/blob/main/rules/rules_accept_ipv4.sh
https://www.tutorialspoint.com/most-frequently-used-linux-iptables-rules-with-examples

Dodatkowo zwykle są chronione dodatkowymi regułami lub programami filtrującymi sieć.
Np. mogą ograniczać ilość połączeń od jednego adresu IP,
mogą wykrywać skanowanie i dodawać takie adresy do listy blokowanych.



« Ostatnia zmiana: 2022-06-09, 21:56:33 wysłana przez 1709 »
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.