Potrzebujesz reguły iptables, aby zaakceptować cały ruch przychodzący


34

W moim środowisku testowym chcę zaakceptować cały przychodzący ruch. Czy ktoś może podać mi regułę iptable, którą należy dodać.

Moje obecne wyjście iptables -L -n wygląda następująco

Łańcuch WEJŚCIE (polityka AKCEPTUJ) cel prot opt ​​źródło
docelowy AKCEPTUJ wszystko - 0.0.0.0/0 0.0.0.0/0 STAN
POWIĄZANY, USTALONY AKCEPTUJ icmp - 0.0.0.0/0
0.0.0.0/0 AKCEPTUJ wszystko - 0.0.0.0 / 0 0,0,0,0/0 AKCEPTUJ tcp - 0,0,0,0/0 0,0,0,0/0 stan NOWY tcp dpt: 22 ODRZUĆ wszystko - 0,0,0,0/0 0,0,0,0/0
odrzucenie-z AKCEPTOWANIEM zabronione przez hosta icmp tcp - 0,0,0,0/
0 0,0,0,0/ 0 tcp dpt: 8443 AKCEPTUJ tcp - 0,0,0,0/0 0,0,0,0/0 tcp dpt: 8080 AKCEPTUJ tcp - 0,0,0,0/0 0,0,0,0/0 tcp dpt: 9443 AKCEPTUJ tcp - 0,0,0,0/0 0,0,0,0/0 tcp dpt: 2124

Łańcuch DO PRZODU (AKCEPTACJA zasad) cel prot opt ​​źródło
docelowy ODRZUĆ wszystko - 0.0.0.0/0 0.0.0.0/0
odrzucenie z icmp-host-zabronione

Łańcuch OUTPUT (policy ACCEPT) target prot opt source
destination

Dzięki

Odpowiedzi:


53

Uruchom następujące. Wstawi regułę na górze twoich iptables i pozwoli na cały ruch, chyba że zostanie później obsłużony przez inną regułę.

iptables -I INPUT -j ACCEPT

Możesz także opróżnić całą konfigurację iptables, wykonując następujące czynności:

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

Jeśli go opróżnisz, możesz chcieć uruchomić coś takiego:

iptables -A INPUT -i lo -j ACCEPT -m comment --comment "Allow all loopback traffic"
iptables -A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT -m comment --comment "Drop all traffic to 127 that doesn't use lo"
iptables -A OUTPUT -j ACCEPT -m comment --comment "Accept all outgoing"
iptables -A INPUT -j ACCEPT -m comment --comment "Accept all incoming"
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -m comment --comment "Allow all incoming on established connections"
iptables -A INPUT -j REJECT -m comment --comment "Reject all incoming"
iptables -A FORWARD -j REJECT -m comment --comment "Reject all forwarded"

Jeśli chcesz być nieco bezpieczniejszy w ruchu, nie używaj reguły akceptuj wszystkie przychodzące lub usuń ją za pomocą polecenia „iptables -D WEJŚCIE -J AKCEPTUJ -m komentarz - komentarz” Akceptuj wszystkie przychodzące ”i dodaj więcej szczegółowe zasady, takie jak:

iptables -I INPUT -p tcp --dport 80 -j ACCEPT -m comment --comment "Allow HTTP"
iptables -I INPUT -p tcp --dport 443 -j ACCEPT -m comment --comment "Allow HTTPS"
iptables -I INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT -m comment --comment "Allow SSH"
iptables -I INPUT -p tcp --dport 8071:8079 -j ACCEPT -m comment --comment "Allow torrents"

UWAGA: Muszą znajdować się powyżej 2 reguł odrzucania u dołu, więc użyj I, aby wstawić je u góry. Lub jeśli jesteś analny jak ja, użyj „iptables -nL --line-numbers”, aby uzyskać numery linii, a następnie użyj „iptables -I INPUT ...”, aby wstawić regułę pod określonym numerem linii.

Na koniec zapisz swoją pracę dzięki:

iptables-save > /etc/network/iptables.rules #Or wherever your iptables.rules file is

1
Ta odpowiedź w końcu zakończyła mój ból. Ta odpowiedź odpowiada na pytanie „w jaki sposób zmusić # @ $ #% iptables do robienia tego, co chcę i tylko tego, co chcę”. Jedyne ulepszenie, które zaleciłbym, to dodanie przykładu przekierowania portu. (tj. od 80 do 8080 i 443 do 8443) Myślę, że 99% pytań dotyczących iptables zostanie udzielonych w jednym pojedynczym poście.
— Eric Hartford

Trochę późno wracam do tego, ale oto jest. Przekierowywanie ruchu z jednego portu do drugiego: „iptables -A PREROUTING -p tcp --port 80 -j REDIRECT --to-porty 8080”. Łatwo jest dostosować to, co chcesz. Jedynym wymaganiem jest to, że oba porty muszą być otwarte (poprzez wpisy powyżej tej instrukcji). Ciesz się!
— Alex Atkinson

16

aby zaakceptować cały ruch przychodzący, można użyć następującego polecenia, -P oznacza ustawienie domyślnej zasady jako akceptuj

iptables -P INPUT ACCEPT  

jeśli nie potrzebujesz poprzednich reguł, po prostu je opróżnij / usuń, a następnie użyj powyższej komendy.
do opróżnienia wszystkich reguł

iptables -F    
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.