Byla vydána (𝕏) nová verze 24.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 24.7 je Thriving Tiger. Přehled novinek v příspěvku na fóru.
Binarly REsearch upozorňuje na bezpečnostní problém PKFail (YouTube) v ekosystému UEFI. Stovky modelů zařízení používají pro Secure Boot testovací Platform Key vygenerovaný American Megatrends International (AMI) a jeho privátní část byla při úniku dat prozrazena. Do milionů zařízení (seznam v pdf) po celém světě tak útočníci mohou do Secure Bootu vložit podepsaný malware. Otestovat firmware si lze na stránce pk.fail. Ukázka PoC na Linuxu na Windows na YouTube.
Mobilní operační systém /e/OS (Wikipedie) založený na Androidu / LineageOS, ale bez aplikací a služeb od Googlu, byl vydán ve verzi 2.2 (Mastodon, 𝕏). Přehled novinek na GitLabu. Vypíchnuta je rodičovská kontrola.
Společnost OpenAI představila vyhledávač SearchGPT propojující OpenAI modely umělé inteligence a informace z webů v reálném čase. Zatím jako prototyp pro vybrané uživatele. Zapsat se lze do pořadníku čekatelů.
Distribuce Linux Mint 22 „Wilma“ byla vydána. Je založená na Ubuntu 24.04 LTS, ale s desktopovým prostředím Cinnamon (aktuálně verze 6.2), příp. MATE nebo Xfce, balíkem aplikací XApp, integrací balíčků Flatpak a dalšími změnami. Více v přehledu novinek a poznámkách k vydání.
Příspěvek na blogu Truffle Security: Kdokoli může přistupovat ke smazaným a privátním repozitářům na GitHubu.
Byla vydána nová verze 14 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v cgitu. Vypíchnout lze podporu rozšíření v Lua.
Byla vydána verze 1.80.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Apple oznámil, že v beta verzi spustil své Apple Maps na webu. Podporován je také webový prohlížeč Chrome. Ne však na Linuxu.
Portál Stack Overflow po roce opět vyzpovídal své uživatele, jedná se především o vývojáře softwaru, a zveřejnil detailní výsledky průzkumu. Průzkumu se letos zúčastnilo více než 65 tisíc vývojářů. Z Česka jich bylo 710. Ze Slovenska 246.
ip route add 194.x.x.224 dev eth1 ip route add 194.x.x.225 dev eth2 ip route add 194.x.x.226/31 via 10.158.0.66apod.
Obávám se, že todle bude fungovat jen pokud stanice, které mají používat ony veřejné adresy, mají nainstalován nějaký operační systém. Pokud je na nich nějaký microsoftí produkt, nebude možno (alespoň pokud vím) těmto vysvětlit, kde mají hledat def-gw. Windows tuším routing via zařízení neumějí a neumějí si nechat nastavit IP s maskou /32, takže by to na nich byl docela problém.
(Ale možná kecám, možná to nějak jde, akorát já jsem nikdy nevyvinul dostatečné úsilí.)
Záleží, kterým počítačům budete chtít ty veřejné adresy přidělit. Nejjednodušší případ bude, pokud to budou počítače na stejném segmentu, jako je LAN routeru (tedy segment 10.157.0.0/25). V takovém případě na LAN rozhraní routeru přidejte adresu 194.x.x.x+1/29 a příslušným stanicím nastavte 194.x.x.x+2 až 194.x.x.x+6, maska 255.255.255.248, brána 194.x.x.x+1. Na routeru musíte samozřejmě ošetřit, aby se tento rozsah nemaškarádoval.
Pokud byste chtěl celý ten blok adres dostat do jiného segmentu (třeba 10.158.0.0/25), pak musíte na tom svém WAN/LAN routeru naroutit 194.x.x.x/29 via 10.157.0.x (gateway do segmentu 10.158.0.0) a na této gatewai pak analogicky s předchozím odstavcem nastavit 194.x.x.x+1, atd...
Úplně nejsložitější případ by nastal, pokud byste chtěl některé z těch veřejných adres přidělovat počítačům v různých segmentech. To už by pak nešlo čistě proroutovat a muselo by se to nějak obejít (ať už SNAT/DNATem nebo přes ARPproxy).
Každopádně, to co jsem popsal je čistý routing, nic se neNATuje, prostě se to routuje, tam kam má.
Pokud přesně uvedete, co, jak, kde a komu chcete nastavit (a odkupasebelou ty vaše další subnety, rád svůj popis příslušně zpřesním.
route add -net 10.158.0.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.0.128 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.1.0 netmask 255.255.255.128 gw 10.157.0.3 route add -net 10.158.1.128 netmask 255.255.255.128 gw 10.157.0.3 route add -net 10.158.2.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.3.0 netmask 255.255.255.128 gw 10.157.0.4 route add -net 10.158.4.0 netmask 255.255.255.128 gw 10.157.0.20 route add -net 10.158.5.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.5.128 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.6.0 netmask 255.255.255.128 gw 10.157.0.10 iptables -t nat -A POSTROUTING -o eth1 -s 10.158.0.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.0.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.2.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.3.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.4.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.5.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.5.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.6.0/25 -j SNAT --to 172.x.x.aV té to chvíli bych rád nastavil veřejné IP 194.x.x.x+1 stanici 10.157.0.49, IP 194.x.x.x+2 stanici 10.158.1.33 a IP 194.x.x.x+3 stanici 10.158.0.50. Ještě pokud by to bylo možné, nejlepší by bylo, kdyby všem stanicím uvnitř zůstala zachována jejich vnitřní IP, ale není to úplně nutné, kdyby nebylo jednoduché cesty jak to vyřešit. Děkuji za dosavadní rady, rád ještě cokoliv upřesním.
Hm, tak to je malé neštěstí. Asi by to šlo nějak vyřešit pomocí ARP proxy, ale obávám se, že to ztroskotá na nastavení Windows a určitě by to bylo moc práce.
V takovém případě bych doporučil nastavit na tom routeru SNAT/DNAT a prostě příchozí provoz pro IP 194.x.x.x+1 DNATnout na 10.157.0.49, odchozí provoz z 10.157.0.49 SNATnout na 194.x.x.x+1 a tak dál. Bude to nejméně práce a na stanicích nebudete muset nic měnit.
Má to dokonce jednu výhodu, že totiž budete schopen využít všech 8 IP z té /29, při klasickém routování byste jich použil tak maximálně pět. Má to na druhé straně i nevýhodu, protože některé obskurní protokoly (FTP, kupříkladu, to je první obludnost na ráně) nemusí pracovat správně, ale to je vesměs řešitelné stavovým firewallem s vhodným modulem. Želbohu, jiná cesta asi není.
echo "NAT 1:1"
COMMENT="#"
DEV=eth0
while read PublicIP PrivateIP UserName
do
FIRST_CHAR=`echo $PublicIP|cut -c1`
if [ "$FIRST_CHAR" = "$COMMENT" ]
then
echo "$UserName commented"
else
echo "$UserName ($PrivateIP -> $PublicIP)"
iptables -t nat -A PREROUTING -d $PublicIP -j DNAT --to $PrivateIP
iptables -t nat -A POSTROUTING -o $DEV -s $PrivateIP -j SNAT --to $PublicIP
iptables -A FORWARD -i $DEV -d $PrivateIP -j ACCEPT
fi
done < /1-1-nat.conf
# verejna privatni name
212.240.181.2 10.93.0.1 ns
212.240.181.3 10.93.0.3 jiri
212.240.181.4 10.93.0.18 mikael
...
ifconfig eth1:0 194.x.x.x+1 up iptables -t nat -A PREROUTING -d 194.x.x.x+1 -j DNAT --to 10.158.1.33 iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.33 -j SNAT --to 194.x.x.x+1 iptables -A FORWARD -i eth1 -d 10.158.1.33 -j ACCEPT route add -net 10.158.0.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.0.128 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.1.0 netmask 255.255.255.128 gw 10.157.0.3 route add -net 10.158.1.128 netmask 255.255.255.128 gw 10.157.0.3 route add -net 10.158.2.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.3.0 netmask 255.255.255.128 gw 10.157.0.4 route add -net 10.158.4.0 netmask 255.255.255.128 gw 10.157.0.20 route add -net 10.158.5.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.5.128 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.6.0 netmask 255.255.255.128 gw 10.157.0.10 iptables -t nat -A POSTROUTING -o eth1 -s 10.158.0.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.0.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.2.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.3.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.4.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.5.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.5.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.6.0/25 -j SNAT --to 172.x.x.aNa internetu už vystupuji pod veřejnou IP adresou, ale nemůžu se na ni zvenku dostat. Zkoušel jsem vypnout firewall u sebe na počítači a nevím o tom že bych něco blokoval na routeru. Takže jediné co vím, je, že SNAT funguje. Jak se dá co nejjednodušeji zjistit zda funguje DNAT pro moji IP?
Spusťte si na firewallu tcpdump na LANovém i WANovém rozhraní a zkuste ze své stanice obyčejný ping na cojávím www.seznam.cz. No a uvidíte, co jak kterým rozhraním přijde, přeloží se a odejde.
tcpdump
na routeru neni, ale snad bude stacit iptraf
ping na www.seznam.cz (212.80.76.18)
ICMP echo req (60 bytes) from 10.158.1.33 to 212.80.76.18 (src HWaddr 0011d8 ICMP echo req (60 bytes) from 194.x.x.x+1 to 212.80.76.18 (src HWaddr 001 ICMP echo rply (60 bytes) from 212.80.76.18 to 194.x.x.x+1 (src HWaddr 00 ICMP echo rply (60 bytes) from 212.80.76.18 to 10.158.1.33 (src HWaddr 00119
Pokud je to tak, že LANovým rozhraním přišel request, SNATnul se, odešel WANovým, následně se WANovým vrátil reply, DNATnul se a odešel LANovým (což vypadá, že to tak je), pak je ale všechno v pořádku.
A ta stanice, z níž jste zkoušel pingat, se tváří, že to pingá? Protože jinak teda nevím, co vám vlastně nefunguje. Eventuálně mi mailněte, zkusíme se domluvit přes ICQ.
iptables -t nat -A PREROUTING -d 194.x.x.x1 -j DNAT --to 10.158.1.33 iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.33 -j SNAT --to 194.x.x.x+1 iptables -I FORWARD -d 10.158.1.33 -j ACCEPTlze bez problému použít. Děkuji rovněž všem, kteří přispěli.
Chain PREROUTING (policy ACCEPT) target prot opt source destination nat-acl all -- 0.0.0.0/0 0.0.0.0/0 dns-preroute all -- 0.0.0.0/0 0.0.0.0/0 auto-forward all -- 0.0.0.0/0 0.0.0.0/0 port-forward all -- 0.0.0.0/0 0.0.0.0/0 DNAT all -- 0.0.0.0/0 194.x.x.x+1 to:10.158.1.33 Chain POSTROUTING (policy ACCEPT) target prot opt source destination MASQUERADE all -- 10.157.0.0/25 0.0.0.0/0 dns-postroute all -- 0.0.0.0/0 0.0.0.0/0 SNAT all -- 10.158.1.33 0.0.0.0/0 to:194.x.x.x+1 SNAT all -- 10.158.0.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.0.128/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.1.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.1.128/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.2.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.3.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.4.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.5.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.5.128/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.6.0/25 0.0.0.0/0 to:172.20.71.21 Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain auto-forward (1 references) target prot opt source destination Chain dns-postroute (1 references) target prot opt source destination Chain dns-preroute (1 references) target prot opt source destination Chain nat-acl (1 references) target prot opt source destination Chain port-forward (1 references) target prot opt source destination
Tiskni
Sdílej: