abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 11:44 | Zajímavý projekt

Na Indiegogo byla spuštěna kampaň na podporu herní mini konzole a multimediálního centra RetroEngine Sigma od Doyodo. Předobjednat ji lze již od 49 dolarů. Požadovaná částka 20 000 dolarů byla překonána již 6 krát. Majitelé mini konzole si budou moci zahrát hry pro Atari VCS 2600, Sega Genesis nebo NES. Předinstalováno bude multimediální centrum Kodi.

Ladislav Hagara | Komentářů: 0
dnes 00:10 | Nová verze

Byla vydána verze 4.7 redakčního systému WordPress. Kódové označením Vaughan bylo vybráno na počest americké jazzové zpěvačky Sarah "Sassy" Vaughan. Z novinek lze zmínit například novou výchozí šablonu Twenty Seventeen, náhledy pdf souborů nebo WordPress REST API.

Ladislav Hagara | Komentářů: 0
včera 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 16
včera 11:00 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2016-8655 v Linuxu zneužitelné k lokální eskalaci práv. Chyba se dostala do linuxového jádra v srpnu 2011. V upstreamu byla opravena minulý týden [Hacker News].

Ladislav Hagara | Komentářů: 2
5.12. 22:00 | Komunita

Přibližně před měsícem bylo oznámeno, že linuxová distribuce SUSE Linux Enterprise Server (SLES) běží nově také Raspberry Pi 3 (dokumentace). Obraz verze 12 SP2 pro Raspberry Pi 3 je ke stažení zdarma. Pro registrované jsou po dobu jednoho roku zdarma také aktualizace. Dnes bylo oznámeno, že pro Raspberry Pi 3 je k dispozici také nové openSUSE Leap 42.2 (zprávička). K dispozici je hned několik obrazů.

Ladislav Hagara | Komentářů: 6
5.12. 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 50
5.12. 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 10
3.12. 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 17
3.12. 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
2.12. 22:44 | Komunita

Joinup informuje, že Mnichov používá open source groupware Kolab. V srpnu byl dokončen dvouletý přechod na toto řešení. V provozu je asi 60 000 poštovních schránek. Nejenom Kolabu se věnoval Georg Greve ve své přednášce Open Source: the future for the European institutions (SlideShare) na konferenci DIGITEC 2016, jež proběhla v úterý 29. listopadu v Bruselu. Videozáznam přednášek z hlavního sálu je ke zhlédnutí na Livestreamu.

Ladislav Hagara | Komentářů: 26
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (8%)
 (5%)
 (3%)
Celkem 780 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: iptables - záhada s vlastním IP

25.4.2006 05:05 Espinosa | skóre: 24 | blog: Espblog | London
iptables - záhada s vlastním IP
Přečteno: 450×
Mám extrémně jednoduchou domácí síť. Dvě pracovní stanice a ADSL router/modem. Protože firewallu na modemu moc nedůvěřuji, rozhodl jsem se nakonfigurovat iptables na obou stanicích, pod heslem v jednoduchosti je krása:
  • všechno z vnějšku zahazovat (až na malé portové okénko)
  • povolit všechno co jde z vnitřní domácí sítě, používám tam např. VNC a SSH. Domácí síť má rozsah IP 192.168.2.xxx a adresy se přidělují dynamicky.
Z návodů na internetu se mi to téměř podařilo. Ale jedna záhada zbyla - v definici pravidla pro vnitřní síť.
iptables -A INPUT -p tcp -m iprange --dst-range 192.168.2.1-192.168.2.10 -j ACCEPT
Takhle to vypadá správně a neškodně, ale jakmile je v povoleném rozsahu (192.168.2.1-192.168.2.10) náhodou i stanice na které to právě testuji (např. 192.168.2.5) tak firewall jako by neexistoval a všechny porty počítače se z vnějšku tváří jako otevřené.

Jakmile má stanice náhodou IP mimo rozsah (např. 192.168.2.11) tak vše funguje jak má, z vnějšku je dostupné jen omezené "portové okénko" na případný GnomeMeeting nebo bittorent.

Jak jste asi poznali, síťařina není můj obor, ale zvolená politika sítě i síť sama se mi zdá natolik jednoduchá, že bych to snad i já mohl rozchodit, ne?

P.S. Pro zájemce kompletní skript:
#!/bin/sh

# Flush all chains
iptables --flush

# vychozi politika, vsechno prichozi zahazuj 
iptables -P INPUT DROP

# Allow unlimited traffic on the loopback interface
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# Allow DNS resolution
iptables -A OUTPUT  -p udp --destination-port 53 -m state --state NEW -j ACCEPT
iptables -A OUTPUT  -p tcp  --destination-port 53 -m state --state NEW -j ACCEPT

# vsechno z vnitrni (domaci) site povol, tcp, udp, ..
iptables -A INPUT -p tcp -m iprange --dst-range 192.168.2.1-192.168.2.10 -j ACCEPT

# volne "portove" okento pro okolni svet
iptables -A INPUT -p tcp --dport 7001:7010 -j ACCEPT

Odpovědi

25.4.2006 07:04 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP

To je ale jasné, protože tím pravidlem povolujete veškerý příchozí provoz na IP adresy v rozsahu. Pokud je tedy "vaše" adresa v rozsahu, povolil jste si na svůj počítač jakýkoliv příchozí provoz. Vy zřejmě chcete povolit veškerý příchozí provoz z daného rozsahu adres. Místo --dst-range tak flákněte --src-range a bude.

25.4.2006 11:03 Espinosa | skóre: 24 | blog: Espblog | London
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
Místo --dst-range tak flákněte --src-range a bude.
..no tohle mi taky vrtalo hlavou. Logické se zdá právě to co říkáte vy.

To je tak když opisujete přesně co neznáte. Problém je že většina návodů popisuje konfiguraci dedikovaného firewallu, chránícího síť za sebou, kdežto já se snažím nastavit firewall přímo na koncové stanici. Takže některé "směrovky" asi budou obráceně.
25.4.2006 08:33 macrek | skóre: 12
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
Este som si tam vsimol:
ked povolujes domacu siet.. v poznamke mas ze povolujes aj tcp aj udp aj ... :), pricom povolujes len tcp. Na to aby si povolil aj udp potrebujes dalsie pravidlo (rovnake), so zmenou len -p udp.
An eye for an eye makes the whole world blind.
25.4.2006 10:36 Espinosa | skóre: 24 | blog: Espblog | London
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
Já to trochu zkrátil, ty pravidla pro udp tam jsou, přesně jak radíte, omlouvám se za zmatení. Jaké porty povolit jako další? icmp? Je bezpečné zjednodušit si život a použít -p all ?
25.4.2006 12:05 macrek | skóre: 12
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
cez -p sa nepovoluju porty ale protokoly, icmp by sa hodilo a myslim si ze je v poriadku aj -p all.

Pripadne je mozne obmedzit icmp len pre male packety napr. cez -m length --length 0:1000
An eye for an eye makes the whole world blind.
25.4.2006 12:12 Espinosa | skóre: 24 | blog: Espblog | London
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
Ano, jak píšete, myslel jsem protokol, ne port.

K tomu icmp, tohle by mohlo být možná ještě účinnější
# Propoustime pouze ICMP ping
iptables -A INPUT -i $INET_IFACE -p icmp --icmp-type echo-request -j ACCEPT
(ze skriptu od Herona)
25.4.2006 12:42 macrek | skóre: 12
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
jo.. to z icmpecka pusti len ping(tusim), avsak niekedy je vhodne povolit len mensie pingy.(obmedzit velkost pingu napr. na 100bytov)
iptables -A INPUT -i $INET_IFACE -p icmp -m length --length 0:100 --icmp-type echo-request -j ACCEPT
potom take daco:
ping ipecka -s 10000
nebude fungovat
An eye for an eye makes the whole world blind.
25.4.2006 08:53 temporary | skóre: 17
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
doporucuji tyto stranky: http://www.petricek.cz/mpfw/

najdete na nich vysvetleni a hlavne hotovy okomentovany script
Mostly harmless
Heron avatar 25.4.2006 09:33 Heron | skóre: 50 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP

Dost dobře nechápu, jak to může fungovat.

iptables -A INPUT -p tcp -m iprange --dst-range 192.168.2.1-192.168.2.10 -j ACCEPT

Tímto povilíte všechno pro všechny IP v tom rozsahu. Takže co vám to dělá, je správné.

Podle:

-m state --state NEW

soudím, že chcete používat stavový firewall. Chybí vám tam pravidlo:

$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Co politiky pro ostatní chainy?

Zkrátka a dobře, tak jednoduché to nebude. Pokud chcete, můžete si stáhnout (a upravit) můj firewall (skript je řešený jako služba pro FC4, ale jistě si z toho vytáhnete vše potřebné).

25.4.2006 12:06 Espinosa | skóre: 24 | blog: Espblog | London
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
Problém je že většina návodů popisuje konfiguraci dedikovaného firewallu, chránícího síť za sebou, kdežto já se snažím nastavit firewall přímo na koncové stanici.

Váš skript je také určený pro dedikovaný firewall - vidím tři síťovky, dvě do vnitřní sítě (LAN1_IFACE, LAN2_IFACE) a jedna do internetu (INET_IFACE). To máte pak jednoduché :) poznáte vnitřní síť podle interfacu! Já mám koncovou stanici, jedna síťovka, vnitřní síť musím poznávat podle rozsahu IP adres. A na tohle právě nemohu sehnat žádný návod!

Ale zpět k vašemu skriptu.

Co mohu přeskočit na koncové stanici: pravidla spojená s FORWARD, masquerede a NAT, to o to se skutečně stará router. Optimalizace sítě, TOS, asi také.

Naopak ochrana proti SPOOFING, syn-flooding, zahlceni icmp - tady bych inspiraci najít mohl.

Samozřejmě děkuji za všechny reakce! Ten ideální návod ale stále ještě hledám :(
Heron avatar 25.4.2006 12:16 Heron | skóre: 50 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
Váš skript je také určený pro dedikovaný firewall - vidím tři síťovky, dvě do vnitřní sítě (LAN1_IFACE, LAN2_IFACE) a jedna do internetu (INET_IFACE). To máte pak jednoduché :) poznáte vnitřní síť podle interfacu! Já mám koncovou stanici, jedna síťovka, vnitřní síť musím poznávat podle rozsahu IP adres. A na tohle právě nemohu sehnat žádný návod! Ale zpět k vašemu skriptu. Co mohu přeskočit na koncové stanici: pravidla spojená s FORWARD, masquerede a NAT, to o to se skutečně stará router. Optimalizace sítě, TOS, asi také.

Můj script je určen přímo pro můj PC. Routuju ještě na LAN2_IFACE. Ale to je všechno.

Moje síť:

INET_IFACE -- veřejná IP, cesta do Internetu
LAN1_IFACE -- lokálka
LAN2_IFACE -- lokálka, sem routuju Internet.

U mě beží: FTP, WWW, SVN, SSHD. Proto ty input pravidla. A funguji i jako http proxi cache a dns cache (pro LAN2).

Připomněl jste mi, že bych to mohl dopsat jako dokumentaci k tomu skriptu.

25.4.2006 15:44 Espinosa | skóre: 24 | blog: Espblog | London
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
Aha, trochu mě zmátly ty tři síťové karty a forwardování.

Bohužel v mém případě se $LAN1_IFACE == $INET_IFACE, takže vaše elegantní pravidlo na neomezování vnitřní sítě:
# Lokalni sit nebudeme omezovat
$IPTABLES -A INPUT -i $LAN1_IFACE -j ACCEPT
..přesně to co bych potřeboval, je pro mě nepoužitelné :( Musím tam dostat nějak to rozmezí IP adres.

Je to vůbec bezpečné testovat vnitřní síť podle rozsahu IP adres? Je reálné riziko podvrhu?
Heron avatar 25.4.2006 18:49 Heron | skóre: 50 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP

Jestli dobře rozumím vašemu problému: Máte router, který vám přiděluje adresu (DHCP) v rozsahu .1 až .10 (nebylo by lepší to nastavit natvrdo?). Potřebujete k sobě routovat nějaké porty z venku. A spoučastně potřebujete přístup na to druhé PC. Btw jakou adresu má router?

Pokud jsem to pochopil právně, tak si to nastavte: INPUT z IProutru filtrujte a povolte jen ty porty, které potřebujete. A ostatní IP z vnitřní sítě nechte otevřené.

#implicitně zahodíme vse
$IPTABLES -P INPUT DROP
#povolime vnitrni sit
$IPTABLES -A INPUT -s rozsah_adres_vnitrnich_PC -j ACCEPT
#z routru jen na povolené porty
$IPTABLES -A INPUT -s ip_adresa_routeru -p protokol --dport vase_porty -J ACCEPT
#pro navazana spojeni
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Je to vůbec bezpečné testovat vnitřní síť podle rozsahu IP adres? Je reálné riziko podvrhu?

Jak reálné je riziko podvrhu nevím. Ale uvědomte si, že útočník se stejně může připojit jen na programy, které u vás běží a poslouchají na síťovce. Viz netstat -lnp. Pokud budete mít dobře konfigurované služby a spuštěné jen ty, co nutně potřebujete, nemáte se čeho bát.

25.4.2006 18:59 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
Ale uvědomte si, že útočník se stejně může připojit jen na programy, které u vás běží a poslouchají na síťovce.

To je hojně rozšířený omyl, který vychází z historické terminologie, jež se traduje z pradávných dob, kdy jeden interface mohl mít jen jednu přiřazenou IP adresu. Ve skutečnosti nic takového jako "poslouchat jen na určitém rozhraní" neexistuje. Proces naslouchá prostřednictvím socketu a ten má určitou (lokální) adresu. Ta je buď 0.0.0.0 a pak socket přijme jakoukoli komunikaci, nebo je nenulová a pak socket přijme jen komunikaci, která má odpovídající cílovou adresu. To, na jaký interface příslušné pakety přišly, v tom nehraje nejmenší roli. Pokud to chcete zohlednit, je třeba to provést pomocí pravidel netfilteru, na úrovni aplikace to provést nelze.

Heron avatar 25.4.2006 19:06 Heron | skóre: 50 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
Špatně jsem to vyjádřil -- o tohle vím, myslel jsem to tak, že se musí jednat o síťový program a ještě k tomu musí naslouchat. Na webový prohlížeč se jen těžko připojíš z venku. :-)

Třeba: pokud tam bude mít SSHD nakonfigurované na klíče (nikoliv login/pass), tak se nemusí bát.
25.4.2006 22:44 Espinosa | skóre: 24 | blog: Espblog | London
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
Už se to začíná hezky rýsovat :)

Jestli dobře rozumím vašemu problému: Máte router, který vám přiděluje adresu (DHCP) v rozsahu .1 až .10 (nebylo by lepší to nastavit natvrdo?).

Předpokládám že přiděluje v plném rozsahu 1 - 255. Ale maximum zatím byla 12. Rád bych to vyřešil s dynamickým přidělováním. Nechce se mi udržovat žádné statické seznamy a SW na routeru je dost buggy, UI určitě, špatně se s tím pracuje.

Potřebujete k sobě routovat nějaké porty z venku. A spoučastně potřebujete přístup na to druhé PC. Btw jakou adresu má router?

Přesně tak si to představuji. Router má natvrdo 192.168.2.1

Pokud jsem to pochopil právně, tak si to nastavte: INPUT z IProutru filtrujte a povolte jen ty porty, které potřebujete. A ostatní IP z vnitřní sítě nechte otevřené.

Vida, použít adresy routeru mě nenapadlo! Je zaručené že příchozí požadavek z internetu bude mít vždy adresu routeru?

#implicitně zahodíme vse
$IPTABLES -P INPUT DROP
Tohle je jasné
#povolime vnitrni sit
$IPTABLES -A INPUT -s rozsah_adres_vnitrnich_PC -j ACCEPT
Tohle mě zajímá, liší se -m iprange --src-range 192.168.2.1-192.168.2.10 co navrhuje Jiří Veselský od -s 192.168.2.1-192.168.2.10 co navrhujete vy?

A taky by asi chtělo nastavit protokoly ne? Takže -p all. Nebo to se myslí defaultně?

#z routru jen na povolené porty
$IPTABLES -A INPUT -s ip_adresa_routeru -p protokol --dport vase_porty -J ACCEPT
Je zaručené že příchozí požadavek z internetu (vněšku) bude mít vždy adresu routeru? Router dělá NAT, tak asi jo. A když by NAT nedělal - teď se ptám ze zvědavosti - to by šlo toto pravidlo použít také?

Ten parametr -J (jump) má být asi malé -j
#pro navazana spojeni
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Tohle je něco jako optimalizace? Je to nezbytné? No, všichni mi to doporučují, tak to tam dám, proč ne :)

Pokud budete mít dobře konfigurované služby a spuštěné jen ty, co nutně potřebujete, nemáte se čeho bát.

Mám puštěný VNC server, zaheslovaný, ale přes šifrovaný kanál to zrovbna nejede, takže potenciál ke zneužití tu obávám se, je. VNC musí být bezpečně dostupné jen z vnitřní sítě!
Heron avatar 25.4.2006 23:06 Heron | skóre: 50 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP

Bez urážky, naučte se nejprve něco o sítích.

Nenapsal jsem vám skript pro copy-paste, a to ani není cílem diskuse.

Tohle mě zajímá, liší se -m iprange --src-range 192.168.2.1-192.168.2.10 co navrhuje Jiří Veselský od -s 192.168.2.1-192.168.2.10 co navrhujete vy?

Pro rozsah adres použijte --src-range, pro jednu adresu -s. Myslel jsem, že tohle je jasné.

#pro navazana spojeni
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Tohle je něco jako optimalizace? Je to nezbytné? No, všichni mi to doporučují, tak to tam dám, proč ne :)

Není to optimalizace. Je to povolení pro navázané spojení. Když prohlížečem jdete na nějaký web, tak se vám musí vrátit packety zpět. A protože už je spojení navázané (šel jste ven), tak se pustí i dovnitř aniž byste to nastavoval jako povolený port.

Nebudu to už psát jako pravidla pro iptables, jen pseudokódem:
1) DROP INPUT
2) INPUT ACCEPT rozsah vnitrnich adres (mimo adresu routeru)
3) INPUT ACCEPT port1 z adresy routeru
...
4) INPUT ACCEPT portn z adresy routeru
5) INPUT ACCEPT navázaných spojení

Dá se to doplnit o logování, TOS, ICMP flood filter atd. Vše najdete v mém skriptu

26.4.2006 00:12 Espinosa | skóre: 24 | blog: Espblog | London
Rozbalit Rozbalit vše Re: iptables - záhada s vlastním IP
Žádný strach, nejsem urážlivý tip :) Moje znalosti síťování jsou silně útržkovité, takže se radši ptám víc.

Myslím, že teď už jsem nashromáždil dostatek informací abych zbytek dal dohromady sám. Určitě je v podobné situaci více lidí, takže Ještě jednou všem děkuju, speciálně pak Heronovi.

O výsledek se podělím, určitě se bude hodit nejen mě.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.