Jedną z kluczowych rzeczy do zrozumienia w iptables jest to, że przejdzie przez reguły w kolejności sekwencyjnej, więc na twoje pytanie nie można odpowiedzieć, nie wiedząc, jakie są wszystkie pozostałe istniejące reguły w konfiguracji iptables. Można to zobaczyć dla pojedynczych łańcuchów z „iptables -vL chain” (np. Iptables -vL INPUT) lub dla wszystkich łańcuchów z „iptables-save”.
Istnieje również jedna domyślna reguła w trzech domyślnych łańcuchach (WEJŚCIE, WYJŚCIE i DO PRZODU); to jest zasada łańcucha, która określa, co dzieje się z pakietami, które nie spełniają kryteriów żadnej z istniejących reguł w tym łańcuchu. Z twojego przykładu wydaje się, że już to sobie uświadomiłeś.
W przypadku użycia INPUT w przeciwieństwie do FORWARD, użyj INPUT. FORWARD jest przeznaczony tylko do przesyłania pakietów na inne maszyny (tj. Gdy maszyna z iptables działa jako zapora ogniowa dla innych maszyn.
Podsumowując je i wracając do pierwotnego pytania, reguły, które napisałeś, wydają się prawie w porządku (myślę, że w flagach powinna znajdować się „-p tcp”, co oznacza, że reguły dotyczą protokołu tcp. I oczywiście, jeśli istnieją inne reguły, o których nie wiemy, mogą one blokować ruch http, zanim dotrze on do tych reguł. Zatem w iptables, pierwsza reguła terminala (tj. reguła z ACCEPT, REJECT lub DROP), która ma kryteria pasujące do pakiet przetworzy ten pakiet i żadne inne reguły po nim w tym samym łańcuchu nie będą miały wpływu na przetwarzanie.