Powiedzmy, że mam konfigurację zapory ogniowej na moim serwerze linux z iptables, więc akceptuję tylko ruch z portu 22 i 80 i blokuję dostęp do wszystkich innych portów.
Czy te reguły działają tylko wtedy, gdy komputer kliencki używa adresu IPv4? Więc jeśli używany jest adres IPv6, klient może uzyskać dostęp do portów, których nie chcę? (tj. porty inne niż port 22 i port 80)
Odpowiedzi:
iptables
działa dla IPv4, ale nie dla IPv6.ip6tables
jest równoważną zaporą IPv6 i jest instalowany ziptables
.Ostatecznie jednak
iptables
dotyczy połączeń IPv4,ip6tables
dotyczy połączeń IPv6. Jeśli chcesz, aby Twojeiptables
reguły dotyczyły również IPv6, musisz jeip6tables
również dodać .Jeśli spróbujesz zreplikować
iptables
zestaw regułip6tables
, nie wszystkie reguły, któreiptables
mogą to zrobić, zostaną odpowiednio przeniesioneip6tables
, ale większość z nich tak.Zapoznaj się z podręcznika dla
ip6tables
jeśli chcesz się upewnić, że komendy użyć w swojejiptables
woli zgrabnie nad portem.Jeśli chcesz, możemy pomóc Ci w tworzeniu równoważnych
ip6tables
zestawów reguł zgodnych z twoimiiptables
regułami, jeśli podasz listę reguł zapory (usuwając wszelkie informacje, które mogłyby zidentyfikować system coruse). W przeciwnym razie możemy odpowiedzieć tylko na twoje ogólne pytanie.źródło
ufw
istnieją inni menedżerowie zapory ogniowej, którzy sami dodają reguły do obu. Problemem tutaj nie jest jednak: „Czy ktoś z IPv6 może zobaczyć moją stronę?” większym problemem jest to, czy twój system ma adresy IPv6. Większość połączeń ma IPv4 i IPv6 z komputerów klienckich takich jak moje. Ale jeśli zdalny serwer nie ma publicznego adresu IPv6, wówczas IPv4 jest podłączony. Jak rozumiem, jeśli masz IPv6, powinieneś również dodać regułyip6tables
.iptables
ANDip6tables
, a ogólne zasady, takie jak-p tcp --dport
, nadal będą działać, ale bardziej złożone reguły mogą nie ... (jak-j REJECT --reject-with [something]
)-j REJECT --reject-with icmp-host-prohibited
na przykład, ponieważ pakiet odrzucania ma inną nazwę w IPv6)Jak już powiedzieli inni, istnieją różne tabele zapory dla IPv4 i IPv6. Możesz skonfigurować reguły dla IPv6 jak dla IPv4, ale istnieje duże ryzyko, że zepsujesz je, jeśli nie znasz IPv6. Na przykład nie możesz wpaść
ICMP
na IPv6, ponieważ są tam niezbędne części do uzgadniania. Jak powiedzenie nadawcy, że ramki są zbyt duże itp. Bez tych rzeczy IPv6 może przestać działać dla niektórych użytkowników.Zaleca więc użycie pakietu
ufw
lub pakietushorewall6
razem zshorewall
. Doiptables
interfejsu internetowegoufw
obsługuje zarówno IPv4 i IPv6 i działa świetnie na serwerach z jednym lub dwoma interfejsami ale nie ruch trasach (praca jako routera lub bramy). Jeśli kierujesz ruchem, potrzebujesz czegoś lepszego, na przykładshorewall
ręcznie dodaj kilka reguł przekazywania dalej za pomocąiptables
iip6tables
.Nie zapominaj, że możesz mieć więcej niż jeden adres IPv6 na swoich interfejsach. Niektóre z nich mają wyłącznie lokalny link, inne są statyczne i dynamiczne. Powinieneś więc odpowiednio skonfigurować reguły, a serwery nasłuchują tylko na właściwych adresach.
źródło