ip6nat
Zde představím ukázkovou konfiguraci pro zprovoznění aplikace, která umožní přesměrovat TCP spojení protokolu ipv6 na konkrétním portu na jiný server.
Aplikace by měla běžet na igw a to zejména pro účely
- redsysu
- varování, že není zaplaceno
- okamžitého povolení do internetu v případě dynamické adresy pomocí dashboardu (který není ještě hotový)
Je potřeba
- aplikace ip6nat http://www.suse.de/~krahmer/ip6nat/ http://d-network.hkfree.org/ip6nat-0.6.tgz
- Láďův patch http://d-network.hkfree.org/ip6nat-0.6-lada.patch
- ke kompilaci build-essential a libnetfilter-queue-dev
Instalace
cd /usr/srv wget http://d-network.hkfree.org/ip6nat-0.6.tgz wget http://d-network.hkfree.org/ip6nat-0.6-lada.patch tar xzvf ip6nat-0.6.tgz cd ip6nat cat ../ip6nat-0.6-lada.patch | patch -p1 make
Konfigurace
- Je potřeba vytvořit soubor ip6nat.conf
tcp dnat 2000::/3 80->::1 1234
- Spustit
./ip6dnat -c ip6dnat.conf
- Nastavit iptables
ip6tables -t raw -A PREROUTING -p tcp --dport 80 -j QUEUE ip6tables -t raw -A OUTPUT -p tcp --sport 1234 -j QUEUE
Tímto bude spojení nasměrováno na localhost (::1) na routeru, na kterém ip6nat běží (tam už může čekat http server, který vrací redirect). Pokud budeme chtít nasměrovat jinam, je pak nutné v druhém pravidle místo OUTPUT použít opět PREROUTING.
První pravidlo v iptables lze přenastavit, aby nasměrovávalo pouze vybrané adresy např. parametrem -s, nebo použít extra chain.
Co dělá patch:
V případě, že do dnat cílové routy (kam chceme lidem zabránit se dostat) patřil zároveň nasměrovaný uživatel, vracející se paket byl opět nasměrován na cílový server. Autor zřejmě nepočítal s tím, že použijeme default routu a že se tudíž zakázaná oblast bude překrývat se zdrojem. Patch toto opravuje jednoduše - pravidla pro vracející se pakety se vyhodnocují před pravidlem pro odeslané pakety. Nic dalšího se snad nerozbilo
Přidat komentář