Strona 1 z 2
iptables pomoc w odczytaniu.
: 04 lutego 2015, 17:16
autor: biolkell
ucze się iptables trochę poczytałem man i poradników z neta ale złożone reguł dalej nie rozumiem:/
iptables -A INPUT -s 192.168.1.90 -p tcp --dport 22 --tcp-flags ALL SYN -j ACCEPT
akceptuje wejście z komputera 192.168.1.90 na protokole tcp docelowy port( port wejścia ) 22 [ --tcp-flags ALL SYN tu nie bardzo rozumiem mam być sprawdzana flaga ALL, SYN czyli powrotne pakiety z potwierdzenia transmisji tcp] [-j jump target zrozumiałem to że akceptuje cały łańcuch, czyli całą transmisje ].
iptables -P INPUT ACCEPT
akceptuje łańcuchy przychodzące ? ( o co chodzi z tym łańcuchami chain?) jak rozumieć definicje z man (-P) docelowy łańcuch.
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
tego wogóle nie rozumiem chyba że chodzi o zaakceptowanie połączeń już używanych ?
: 04 lutego 2015, 22:10
autor: piroaa
Dzień dobry.
Sprawdź sobie jak pakiety podróżują przez poszczególne tabele i łańcuchy. Jest tak pakiet przychodzi do ciebie "wpada w iptables" tam są tabele a w nich łańcuchy w łańcuchach masz reguły pakiety przechodzą przez to wszystko w określonej kolejności. W łańcuchach dodajesz reguły które są sprawdzane kolejno z "góry na dół" jeśli w danym łańcuchu jest reguła która pasuje do danego pakietu stosowana jest akcja zawarta w tej regułce jeśli pakiet nie pasuje do żadnej reguły w danym łańcuchu stosowana jest polityka domyślna dla łańcucha.
Jak pakiet przejdzie przez wszystko i nie zostanie po drodze odrzucony "opuszcza iptables" i dociera tam gdzie był początkowo adresowany.
iptables -P INPUT ACCEPT
sprawi że będziesz akceptował cały ruch przychodzący chyba że masz reguły które wycinają jakiś rodzaj połączeń gdzieś po drodze. A mówiąc bardziej precyzyjnie ustawienie domyślnej polityki na ACCEPT w łańcuchu INPUT tabeli filter.
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
tego wogóle nie rozumiem chyba że chodzi o zaakceptowanie połączeń już używanych ?
Z grubsza tak.
: 04 marca 2015, 12:07
autor: sethiel
W najprostszej konfiguracji są dwie tabele:
Standardowa - jest tam prawie wszystko
NAT - gdzie są składowane reguły NAT (czyli ingerujące w ramkę i podmieniające adres źródłowy i/lub docelowy)
Trzy łańcuchy:
INPUT (to co przychodzi do urządzenia) urządzenie <- komputer
OUTPUT (to co wychodzi z urządzenia) urządzenie -> komputer
FORWARD (to co przechodzi przez urządzenie) komputer <-> urządzenie <-> komputer2
Każdy łańcuch może mieć kilka akcji:
DROP (porzucenie)
ACCEPT (zaakceptowanie)
REJECT (odrzucenie - informujące nadawce o odrzuceniu)
DNAT (zaakceptowanie a następnie podmiana adresu docelowego)
SNAT (zaakceptowanie a następnie podmiana adresu źródłowego)
State:
różne statusy pakietu,
NEW - nowy,
ESTABLISHED/RELATED - urządzenie przez który przechodzi pakiet oznacza markerem pakiet który wychodzi/wraca , jak wraca odpowiedź na ten pakiet (albo więcej pakietów dotyczących tego samego połączenia) wówczas sprawdzany jest czy ten pakiet należy do takiej rodziny, i ten pakiet łączy się logicznie z poprzednim. Stąd oznaczenia E/R - ułatwiają logiczne przyjęcie pakietu w sesji w której już na początku zgodziliśmy się na jego przyjęcie.
: 04 marca 2015, 14:20
autor: dedito
Na tym forum jest obszerny 4-częściowy artykuł na tema filtrowania pakietów przez iptables.
Jest tam między innymi rysunek pokazujący przepływ pakietów, który wiele wyjaśnia.
: 04 marca 2015, 21:41
autor: Yampress
https://pl.wikipedia.org/wiki/Transmiss ... l_Protocol
iptables -A INPUT -s 192.168.1.90 -p tcp --dport 22 --tcp-flags ALL SYN -j ACCEPT
akceptuj połączenia na wejściu z adresu żródłowego 192.168.1.90 na protokole tcp, do portu docelowego 22 na maszynie aktualnej z flagami stanu połączenia SYN
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
wpuszczaj na wejściu polączenia już nawiązane SYN/ACK ACK
: 20 kwietnia 2015, 10:50
autor: arturdziki90
Witam czy ktoś może sprawdzić czy dobrze myśle:
iptables -A OUTPUT -p SSH -j DROP
Poleceniem tym zablokuje tylko wychodzące z mojego komputera połączenia SSH.
: 20 kwietnia 2015, 12:04
autor: mariaczi
Zerknij do helpa jakie wartości przyjmuje parametr "-p".
: 20 kwietnia 2015, 14:21
autor: dedito
arturdziki90 pisze:Witam czy ktoś może sprawdzić czy dobrze myśle:
iptables -A OUTPUT -p SSH -j DROP
Poleceniem tym zablokuje tylko wychodzące z mojego komputera połączenia SSH.
Sama konstrukcja poprawna, ale parametr -p raczej nie dopuszcza protokołów z warstwy aplikacji.
: 21 kwietnia 2015, 09:34
autor: arturdziki90
faktycznie parametr -p domuszcza tylko protokoły warstwy transportowej (ICMP, UDP, TCP, itp.). Jak dobrze rozumiem nie ma możliwości zablokowania protokołu SSH na wszystkich portach nie tylko 22, nie blokując innych przy tym innych rzeczy.
: 21 kwietnia 2015, 11:34
autor: dedito
Przy użyciu Iptables nie spotkałem się z taką możliwością jakiej oczekujesz.
Jeżeli koniecznie musi być to za pomocą Iptables to można by coś pokombinować za pomocą skanu procesów i dynamicznego dodawania/usuwania regułek z użyciem modułu '-m owner --pid' lub coś w ten deseń.