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ářů: 24
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%)
 (23%)
 (29%)
 (8%)
 (5%)
 (3%)
Celkem 783 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: iptables

25.5.2009 11:27 aaaaaaaaa
iptables
Přečteno: 1475×

Hello,

potreboval by som poradit s iptables. Na port 22 by som potreboval povolit pripajanie iba jednej IPcke ktoru zadefinujem, ako by sa to dalo?

Odpovědi

25.5.2009 11:33 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
Předpokládám protokol TCP:
iptables -A INPUT -p tcp --dport 22 -s ! $IP -j REJECT
25.5.2009 11:46 aaaaaaaaa
Rozbalit Rozbalit vše Re: iptables


iptables -A INPUT -s xxx.xxx.xxx.xxx --destination-port 22 -j ACCEPT

 

?

25.5.2009 14:47 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
Předpokládám, že dotaz byl na to, jak přístup z jedné IP adresy povolit a z ostatních zakázat. Ve výchozím nastavení je povolen libovolný provoz, takže je zbytečné povolovat ještě extra tuto IP adresu a port.
polo23 avatar 25.5.2009 14:38 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables

Ahoj, kdyz uz je tu diskuze o iptables chtel bych se zeptat kde je ulozen konfiguracni soubor Iptables. Nemuzu ho nikde najit(pouzivam Debian). Vim asi mi reknete ze si mam napsat skript s prikazy a ten pak spustit. No me by to zajimalo uz jen ze zvedavosti. Rad bych si ten soubor prosel. Diky

http://www.it-kurz.cz
25.5.2009 14:49 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
Není uložen nikde – pravidla se musí aplikovat při každém startu znova. iptables umožňují aktuální stav pravidel uložit do souboru a později jej zase obnovit – toho některé distribuce využívají. Třeba Gentoo má init skript /etc/init.d/iptables, který umí pravidla uložit na žádost uživatele a při startu tato pravidla obnoví. Kam ta pravidla ukládá, na to se musíte podívat do toho skriptu. Předpokládám, že Debian to bude mít podobně.
polo23 avatar 25.5.2009 15:16 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables

No nekde ty pravidla byt ulozena musi kdyz se aplikuji pri kazdem startu znova. Musi byt nejaky soubor kde jsou uvedena - odkud Iptables cerpaji. Ja prave v /etc/init.d iptables vubec nemam uvedeno. Kdyz chcete do pravidel na trvalo nejake pridat tak musite prece editovat nejaky konfigurak.

http://www.it-kurz.cz
25.5.2009 20:05 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
No nekde ty pravidla byt ulozena musi kdyz se aplikuji pri kazdem startu znova. Musi byt nejaky soubor kde jsou uvedena - odkud Iptables cerpaji.
Sice píšete že musí, ale já jsem se vám snažil vysvětlit, že nic takového neexistuje. iptables pouze umožňují stav pravidel nastavených na firewallu uložit a z uloženého souboru zase načíst – toho pak využívají distribuční skripty. Podívejte se, který skript vám volá iptables-resore, a tím zjistíte, který skript to má na starosti ve vašem systému.
25.5.2009 15:20 chinook | skóre: 25
Rozbalit Rozbalit vše Re: iptables
Ja mam v debiane v /etc/rc.local iptables-restore < /etc/firewall.conf a v souboru /etc/firewall.conf mam nadefinovana pravidla. V centOs je soubor /etc/syssconfig/iptablse, kde jsou opet zadana pravidla, ale tam se to nahazuje samo.

polo23 avatar 25.5.2009 15:29 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables

Tak ja mam v Debianu taky /etc/rc.local ale nic s iptables v nem neni. /etc/firewall.conf tak nemam vubec. Tak by me zajimalo odkud se ta ma konfigurace bere?

http://www.it-kurz.cz
25.5.2009 17:24 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: iptables
To mě taky, protože Debian žádný distribuční způsob nemá. Ještě zkuste nakouknout do /etc/network/if-up.d/.
polo23 avatar 25.5.2009 17:30 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables

Tak v adresari ktery doporucujete taky nic neni...bohuzel:(

http://www.it-kurz.cz
25.5.2009 17:36 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: iptables
Tak ještě je možné, že tam máte nějaký IDS nebo něco jiného, co si nahrává vlastní pravidla. Nebo se zeptejte toho, po kom jste ten systém zdědil. Nebo znefunkčněte /sbin/iptables (třeba mu seberte příznak spustitelnosti) a pří následném rebootu sledujte, který skript si bude stěžovat.
polo23 avatar 25.5.2009 18:09 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables

Tak jsem mu vzal ten priznak spustitelnosti jak jste doporucoval ale nic:( Nikdo si na nic nestezuje... PC jsme po nikom neprebral. Je to muj notebook:)

http://www.it-kurz.cz
25.5.2009 23:09 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: iptables
A teď ta zásadní otázka: Když pustíte iptables-save, tak to vypíše co? Jsou tam vůbec nějaká pravidla?
26.5.2009 13:18 chinook | skóre: 25
Rozbalit Rozbalit vše Re: iptables
Omlouvam se za demagogii. Ty pravidla jsem si tam dal sam. Debian po instalaci skutecne zadna pravidla nema. Aspon ja nic nenasel. Jen jsem chtel poradit autorovi jak se to da resit. CentOS ta pravidla ma standardne /etc/syssconfig/iptables nebo nejak tak. Ted tu zadny stroj po ruce nemam, abych koukl na presnou cestu.
25.5.2009 20:07 Ash | skóre: 53
Rozbalit Rozbalit vše Re: iptables
vi /etc/init.d/iptables ?
grep -r iptables-restore /etc/* ?
polo23 avatar 25.5.2009 21:33 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables
grep -r iptables-restore /etc/* ? Nenasel nic.
/etc/init.d/iptables ? V init.d iptables vubec nemam:(
http://www.it-kurz.cz
26.5.2009 07:17 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
A po startu systému vůbec nějaká pravidla v iptables máte?
polo23 avatar 26.5.2009 14:53 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables

No tady je vypis iptables -L:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination        

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination        

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination        
 

To je vsechno co tam mam...

http://www.it-kurz.cz
26.5.2009 15:30 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
Takže nic, politika ACCEPT je výchozí politika. Takže dál nemusíte hledat, co vám nastavuje při startu pravidla, protože vám je nic nenastavuje.

Pokud tedy chcete automatické nastavování pravidel při startu (pokud na tom počítači potřebujete firewall, tak je to rozumné, nikomu by se nechtělo firewall pokaždé znova nastavovat ručně), máte dvě možnosti – buď Debian už nějaké skripty pro uložení a obnovu nastavení firewallu má (pak je zřejmě stačí doinstalovat), nebo si pomocí iptables-save a iptables-restore můžete napsat skripty vlastní.
26.5.2009 10:59 Filip F
Rozbalit Rozbalit vše Re: iptables
Ja mam v praci debian Lenny, a konfiguracni soubort iptables je /etc/iptables.up.rules

A potom v /etc/network/interfaces mam
...
iface eth0 inet static
        address 192.168.1.4
        netmask 255.255.255.0
        broadcast 192.168.1.255
        network 192.168.1.0
        post-up iptables-restore < /etc/iptables.up.rules
...
polo23 avatar 26.5.2009 14:54 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables

Taky mam debian Lenny ale zadne /etc/iptables.up.rules tam bohuzel nemam:(

http://www.it-kurz.cz
26.5.2009 15:15 Filip F
Rozbalit Rozbalit vše Re: iptables
Tak si ho vytvor :)
iptables-save > /etc/iptables.up.rules
26.5.2009 15:18 kmarty | skóre: 15
Rozbalit Rozbalit vše Re: iptables

Sak to si tam davas ty sam. Ja tam mam /etc/iptables/up.rules.

Sveho casu to bylo u Debiana nekde v /usr/share/doc/iptables/ jako mozny nebo dokonce doporucovany zpusob.

 

polo23 avatar 26.5.2009 18:02 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables

Ja jsem hledal soubor ve kterem jsou dosavadni pravidla ze kterych iptables firewall cerpa informace a chtel jsme si k nim pripsat nejaka svoje. Ted jsem si ho sice vytvoril ale neni v nem skoro nic a nezda se mi ze by to byla jedina pravidla v mem PC co jsme tam dosud mel. Navic chci po zmene takoveho souboru aby z neho iptables cerpali dal... Ted jsem cosi vytvoril ale iptables o tom nevi a tak to podle me nebere v potaz. Tohle je vypis toho noveho souboru:

# Generated by iptables-save v1.4.2 on Tue May 26 17:53:03 2009
*filter
:INPUT ACCEPT [196767:231519618]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [167934:58767252]
COMMIT
# Completed on Tue May 26 17:53:03 2009
 

http://www.it-kurz.cz
26.5.2009 19:38 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
nezda se mi ze by to byla jedina pravidla v mem PC co jsme tam dosud mel
Podle toho výpisu výše tam žádná pravidla nemáte.
Navic chci po zmene takoveho souboru aby z neho iptables cerpali dal...
Běžně se to dělá tak, že nastavíte pravidla jak chcete a uložíte je pomocí iptables-save. Ve startovacím skriptu pak obnovíte pravidla přes iptables-restore. Výhoda je ta, že ukládáte aktuální pravidla firewallu, která vám nejspíš fungují. Pokud byste upravoval skript s pravidly, je velká pravděpodobnost, že ten skript nebo pravidla pokazíte.

polo23 avatar 26.5.2009 21:00 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables

No a kdyz tam zadna pravidla nemam tak to mam chapat tak ze je muj pocitac nechraneny? Myslel jsme ze iptables aspon v defaultu nejake pravidla maji aspon omezeni prichozi komunikace - takhle na me muze kdokoliv zkouset utoky.

K te druhe casti vaseho prispevku - uprimne moc Vam nerozumim-mejte se mnou tu trpelivost a vysvetlete mi to polopate. Ja si to predstavuju tak ze napisu do nejakeho textaku(skriptu) prikazy(pravidla) pro iptables. Pak musim nejakym zpusobem zajistit aby se tento skript spustil pokazde kdyz zapnu PC a pravidla se tak aplikovala. Jo jeste bych dodal ze ja tam nemam zadny iptables startovaci skript(mam tim na mysli v /etc//init.d ani nic v /etc). Moc prave nechapu jak je mam ulozit pomoci iptables-save a k cemu je to restore?

http://www.it-kurz.cz
27.5.2009 00:05 chinook | skóre: 25
Rozbalit Rozbalit vše Re: iptables
V defaultu zadna pravidla nadefinovana nejsou. Aspon u distribuci co znam. Zkus napsat:
iptables -L -n -v 
a uvidis co mas definovane. Podle me je pc chranene i bez firewallu pokud ti neco neposloucha na nejakem portu, ktery nechces mit otevreny. napises normalne pravidla neco ve smyslu:

iptables -I INPUT -p tcp 22 -j ACCEPT
.
.
.
.
iptables -P INPUT DROP
atd.

pak to ulozis do nejakeho souboru napr:

iptables-save > firewall.conf
a pravidla pak obnovis

iptables-restore < firewall.conf
27.5.2009 00:42 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
No a kdyz tam zadna pravidla nemam tak to mam chapat tak ze je muj pocitac nechraneny?
Ne, znamená to, že je veškerá komunikace povolena. To nemusí nutně znamenat nechráněný počítač. Počítač je chráněný jedině v případě, kdy máte ve firewallu pravidla, kterým rozumíte a která tam chcete mít.
Myslel jsme ze iptables aspon v defaultu nejake pravidla maji aspon omezeni prichozi komunikace - takhle na me muze kdokoliv zkouset utoky.
Neexistuje žádné "základní" nastavení firewallu -- resp. základní nastavení je vypnutý firewall, tedy povolení veškeré komunikace. A pokud nevíte, co děláte, je nastavování jakýchkoli dalších pravidel stejně k ničemu.

Útoky může každý zkoušet, ale pokud je bezpečný software na tom počítači, k ničemu mu to nebude. A pokud na tom počítači nemusí běžet žádné síťové služby, není důvod, aby běžely, a pak není co napadat. Pak už může firewall sloužit pouze jako obecná ochrana sítě (proti útokům na infrastrukturu sítě, nikoli na konkrétní programy), jenže taková ochrana musí být z principu před onou sítí, na koncovém počítači je k ničemu.
K te druhe casti vaseho prispevku - uprimne moc Vam nerozumim-mejte se mnou tu trpelivost a vysvetlete mi to polopate. Ja si to predstavuju tak ze napisu do nejakeho textaku(skriptu) prikazy(pravidla) pro iptables. Pak musim nejakym zpusobem zajistit aby se tento skript spustil pokazde kdyz zapnu PC a pravidla se tak aplikovala. Jo jeste bych dodal ze ja tam nemam zadny iptables startovaci skript(mam tim na mysli v /etc//init.d ani nic v /etc). Moc prave nechapu jak je mam ulozit pomoci iptables-save a k cemu je to restore?
Ne, postup je jiný. Spouštíte si příkazy iptables s potřebnými parametry na příkazovém řádku a tím nastavujete firewall. Občas se vám nějaké pravidlo nepovede, odstřihnete se úplně od sítě nebo od ssh -- v takovém případě si poděkujete, že vše děláte z místní konzole, a že nemáte pravidla v nějakém skriptu, který byste takhle upravil a od sítě se odstřihl při příštím restartu (což je typicky v situaci, kdy jste od serveru tisíc kilometrů daleko a za 15 minut má začít prezentace webových stránek, které na tom serveru běží). Takhle si to nastavení firewallu ladíte (přidáváte, upravujete a mažete pravidla), dokud s ním nejste spokojen. Pak zavoláte příkaz iptables-save > /etc/moje-nastaveni-firewallu. Do startovacích skriptů (třeba do rc.local, nebo si vytvoříte nový skript) si pak přidáte příkaz iptables-restore < /etc/moje-nastaveni-firewallu. Ten první vezme aktuální nastavení firewallu a vypíše jej v nějakém formátu (který je shodou okolností čitelný a dost podobný parametrům iptables, kterým se pravidla nastavují), druhý pak data ve stejném formátu zase načte a nastaví příslušným způsobem firewall. Možná je k tomu dobré ještě dodat, že iptables nejsou samotný firewall. Firewall je sada pravidel nastavených v jádře -- iptables je jenom utilita, která s těmito pravidly umožňuje manipulovat (měnit je, přidávat a odebírat). A iptables-save a iptables-restore jsou příkazy, které umí tuhle aktuální sadu pravidel jádra v nějakém formátu uložit a pak zase z toho formátu nahrát zpět do jádra.

Pokud pak chcete pravidla později změnit, zase pomocí příkazů iptables upravíte aktuální nastavení firewallu a pak je pomocí iptables-save uložíte opět do souboru, který používá váš inicializační skript k obnově po startu.
27.5.2009 07:21 chinook | skóre: 25
Rozbalit Rozbalit vše Re: iptables
A pokud na tom počítači nemusí běžet žádné síťové služby, není důvod, aby běžely, a pak není co napadat. Pak už může firewall sloužit pouze jako obecná ochrana sítě (proti útokům na infrastrukturu sítě, nikoli na konkrétní programy), jenže taková ochrana musí být z principu před onou sítí, na koncovém počítači je k ničemu.
Koncovym pocitacem myslis co? Ze FW nesmi bezi na stejnem stroji jako ostatni sluzby a nebo ze FW nesmi bezet za sluzbama?
27.5.2009 08:08 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
Nevím, jaký je rozdíl mezi těmi variantami v otázce, ale firewall přímo na počítači se službami má význam hlavně v případě, kdy tam nějaká služba má běžet, ale nemá být dostupná všem a není možné to nastavit přímo v tom daném programu. Ochrana před útoky typu DoS už tam moc smysl nedává, protože problém je už když vám ten útok zahltí vnitřní síť. To pásmo, kdy firewall na počítači se službou ještě dokáže zahazovat provoz, který by už aplikaci položil, ale provoz ještě není natolik silný, aby položil i síťovou vrstvu jádra nebo okolní infrastrukturu, je velice úzké. No a proti útokům na samotnou síťovou vrstvu jádra je takový firewall zcela neúčinný, protože je stejná pravděpodobnost, že bude chyba v kódu před firewallem nebo v samotném firewallu (a firewall je tedy na nic nebo dokonce situaci zhorší), jako že bude až za firewallem.

Takže má smysl mít firewall před servery nebo DMZ, má smysl mít firewall před sítí, kde mohou být neaktualizované počítače se spoustou děr v softwaru (typická síť s Windows), ale na samotné pracovní stanici uživatele, kde žádné síťové služby neběží, je firewall skoro zbytečný. Ne že by za nějaké velmi výjimečné konstelace událostí nemohl pomoci, ale třeba pravidelná aktualizace jádra pomůže v takovém případě nesrovnatelně víc. A to už vůbec nemluvím o tzv. personálních firewallech často používaných ve Windows, to už je úplně na nic. Za prvé uživatel, který tomu nerozumí, stejně vždy povolení odklikne, za druhé tam je firewall na stejné pozici, jako kterýkoli vir, takže jde jenom o to, kdo koho přechytračí, firewall tam nemá žádné technické možnosti, které by vir neměl. (To platí v Linuxu taky v případě, kdy by onen vir byl modulem v jádru, což je přeci jen už dost extrémní případ, protože běžný uživatel jen tak snadno modul do jádra nenaistaluje.)
27.5.2009 12:57 polo23
Rozbalit Rozbalit vše Re: iptables

Takze secteno podtrzeno... mala rekapitulace jak nastavit iptables v mem PC.

1) Napisu pomoci prikazu iptables do konzole pravidla jako napr: iptables -A INPUT -s xxx.xxx.xxx.xxx --destination-port 22 -j ACCEPT

2) Do konzole napisu prikaz iptables-save > /etc/muj_firewall tim dojde k ulozeni konfigurace(v mem pripade pravidla iptables -A INPUT -s xxx.xxx.xxx.xxx --destination-port 22 -j ACCEPT) do souboru muj_firewall.

3) Vytvorim si skript.sh ve kterem bude prikaz  iptables-restore < /etc/muj_firewall a tento skript umistim nejlepe pomoci update-rc.d skript.sh default do /etc/init.d/ a do /etc/rcX.

Mame hotovo skript.sh se spusti pokazde pri startu, provede se prikaz iptables-restore < /etc/muj_firewall ktery zavede pravidla ze souboru muj_firewal do pameti(aplikuje je). Posledni vec ktera mi neni uplne jasna... v jakem formatu se ulozi pravidla do souboru muj_firewall pomoci iptables-save? Klasicky textovy ktery mohu editovat a pripadne tam pravidla dopsat? To pochybuju kdyby to tak bylo byly by prikazy iptables-save/restore asi zbytecne ze? Tzn bude to nejaky format zrejme s tim ze forma ulozeni bude nejakym zpusobem pozmenena - prikazy nebudou mit stejnou formu jak jsme je zadaval do konzole.

A malem bych zapomnel... Kdyz uz ta pravidla mam aplikovana(tzn po prikazu iptables - restore) tak je zmenim? To musim zase vsechno vypsat do konzole a pak celou proceduru udelat znova?

 

Druha moznost reseni podle me mnohem jednodussi bez utilit jako iptables save/restore:

1) Vytvorim si soubor muj_firewall a do neho napisu prikazy iptables jako napr iptables -A INPUT -s xxx.xxx.xxx.xxx --destination-port 22 -j ACCEPT

2) Pomoci update-rc.d muj_firewall default ho dostanu do do /etc/init.d/ a do /etc/rcX.

Pri kazdem startu PC se vykonaji prikazy ulozene v muj_firewall. Tato vyrianta mi prijde mnohem jednodussi - nebo v ni snad vidite nejakou slabinu?

27.5.2009 14:21 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
Posledni vec ktera mi neni uplne jasna... v jakem formatu se ulozi pravidla do souboru muj_firewall pomoci iptables-save? Klasicky textovy ktery mohu editovat a pripadne tam pravidla dopsat? To pochybuju kdyby to tak bylo byly by prikazy iptables-save/restore asi zbytecne ze?
Ten formát vás nemusí zajímat, pracují s ním jen příkazy iptables-save a iptables-restore. Jinak je to ale čistě textový formát, který má syntaxi velmi podobnou tomu, jak vypadá zápis pravidel pro příkaz iptables. Takže s trochou opatrnosti jej upravíte i v textovém editoru – ale to je zbytečné, vizte dále.
A malem bych zapomnel... Kdyz uz ta pravidla mam aplikovana(tzn po prikazu iptables - restore) tak je zmenim? To musim zase vsechno vypsat do konzole a pak celou proceduru udelat znova?
Ne, po iptables-restore máte firewall ve stejném stavu, jako byste ta pravidla nahrál přes jednotlivé příkazy iptables. Takže prostě jen dalšími příkazy iptables nastavení firewallu změníte a pak nastavení znova uložíte pomocí iptables-save.

Například, nejprve si nastavíte firewall tak, aby v příchozí komunikaci povoloval pokračování v navázaných spojeních a připojení na port 22 a 80 a uložíte:
iptables -A INPUT -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -P INPUT DROP
iptables-save > /etc/muj-firewall
Pak můžete třeba tisíckrát spustit iptables-restore a nastavení firewallu se vždy obnoví. Pak se vzpomenete, že chcete firewall upravit – přístup na port 80 zakážete a povolíte port 443. Nejprve si vypíšete aktuální stav firewallu, zjistíte, který řádek chcete vymazat (ten s pravidlem pro port 80) a přidáte nové pravidlo.
iptables --line-numbers -nvL
iptables -D INPUT 3 #chcete smazat 3. pravidlo v INPUT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
Teď máte firewall nastaven do nového požadovaného stavu, otestujete jej a když jste spokojen, zase jeho stav uložíte:
iptables-save > /etc/muj-firewall
Druha moznost reseni podle me mnohem jednodussi bez utilit jako iptables save/restore:

1) Vytvorim si soubor muj_firewall a do neho napisu prikazy iptables jako napr iptables -A INPUT -s xxx.xxx.xxx.xxx --destination-port 22 -j ACCEPT

2) Pomoci update-rc.d muj_firewall default ho dostanu do do /etc/init.d/ a do /etc/rcX.

Pri kazdem startu PC se vykonaji prikazy ulozene v muj_firewall. Tato vyrianta mi prijde mnohem jednodussi - nebo v ni snad vidite nejakou slabinu?
Výhod je několik. iptables-restore je pravděpodobně atomická operace, takže firewall je nejprve v jednom stavu, a pak hned v druhém. Pokud zadáváte pravidla postupně přes iptables, aplikují se postupně – takže je možné, že třeba nejprve nastavíte výchozí politiku na DROP a za pár sekund povolíte pravidlem SSH spojení – jenže mezitím bylo pár sekund SSH spojení zakázáno a spojení se přerušilo (a nemáte jak zadat to druhé pravidlo). Toto je samozřejmě extrémní případ, ale obecně není moc dobré mít firewall v nějakém mezistavu.

Za druhé, když budete pokaždé znova spouště skript nastavující firewall pomocí příkazů, budete muset řešit problém, jak skript otestovat. Buď jej testovat nebudete, a pak až při příštím restartu zjistíte, že jste omylem zakázal přístup k nějaké důležité službě – třeba k SSH a musíte jet fyzicky k serveru. S iptables-restore se tomu snadno vyhnete – třeba přes příkaz at si nastavíte, ať se za 5 minut obnoví vaše dosavadní nastavení firewallu. Pak přes iptables nastavení změníte a vyzkoušíte. Když funguje, načasovanou akci obnovení firewallu zrušíte, když nefunguje a třeba jste se odpojil, počkáte 5 minut, až se pravidla obnoví.

Druhá možnost je testovat skript tím, že jej při každá změně zkusíte spustit. Pak máte ale stejný problém jako v předchozím případě s tím, že se můžete od počítače snadno odstřihnout. Druhý problém je v tom, že při testování nebudete skript aplikovat na firewall ve stejném stavu, jako při startu počítače. Tj. musíte na začátek skriptu přidat výmaz všech uživatelských řetězců a nastavení všech výchozích hodnot. Jenže pak budou iptables zase při startu PC řvát, že mažete neexistující řetězec (a nejlépe vám to init systém pošle e-mailem), jednak hrozí, že při mazání na něco zapomenete, pak vám při testování bude skript fungovat (protože jste nějaké pravidlo zapomněl vymazat a pak nastavit, ve firewallu tedy zůstane), ale po restartu už bude firewall nastavený špatně (protože to nastavující pravidlo tam prostě bude chybět).

Proto je lepší používat kombinaci iptables-save a iptables-restore – vytvářet skript s voláním iptables je jen složitější a jsou tam zbytečná rizika.
27.5.2009 15:36 polo23
Rozbalit Rozbalit vše Re: iptables

Rozumím... Chápu tedy správně že souhlasíte s mým prvním návrhem v mém posledním příspěvku? Jde mi jen o to zda je ta koncepce správná a zda by bylo vhodné ji používat.  Co říct závěrem? Pane Jirsák nezbývá mi než Vám poděkovat za vyčerpávající vysvětlení problematiky IPTABLES na distribuci Debian.  a za to že jste se mnou měl tu trpělivost:) Snad už tomu rozumím na té úrovni, že si sám dokážu nastavit pravidla(jejich syntaxi se samozřejmě musím ještě doučit) a ty následně aplikovat.

27.5.2009 17:57 Ash | skóre: 53
Rozbalit Rozbalit vše Re: iptables
Osobně doporučuji následující postup:

1) udělat iptables-save do souboru někam do /root/iptables.rules

2) naučit se trochu iptables

3) doplnit do uvedeného souboru všechna žádoucí pravidla

4) tento skript 2x zkontrolovat jestli jste si náhodou nezakázal to milionkrát omílané SSH, zálohovat ho, mít ho v RCS apod.

5) udělat iptables-restore z tohoto souboru

6) pokud to funguje jak má, udělat ještě jednou iptables-save, tentokrát někam do /etc/blah kde to bude uloženo jakože konfigurace a dělat při startu iptables-restore z tohoto souboru

*) další změny (přidávání služeb, tuning) dělat opět v tom souboru /root/iptables.rules a pravidla aktualizovat pomocí iptables-restore < /root/iptables.rules, tedy už nikdy více nedělat iptables-save jakéhosi "aktuálního stavu"

beru tedy daný konfig. soubor jako zdroják programu, který bude dělat to, co jsem do něj napsal. Psaní pravidel (většinou neatomicky) z příkazové řádky a pak "daný vytvořený funkční stav" uložit se mi jeví spíš hardcore a odobně méně přehledné než napsaný skript pro iptables-restore. Rovněž pokud firewall sdílí více uživatelů, může to být výhoda (komentáře atd.). Také návrat k "bezpečnému stavu fw" pokud by v živém stavu někdo udělal binec je snadný (iptables-restore < /root/iptables.rules). Je to samozřejmě individuální, někdo se dobře vyzná v iptables -L a stačí mu to pro kontrolu aktuálního stavu.

Příklad komentovaného konfiguráku:
# default table with build-in INPUT, FORWARD and OUTPUT chains
*filter

# attemp to flush all rules in filter table
-F

# flush built-in rules
-F INPUT
-F OUTPUT
-F FORWARD

# delete all user-defined chains
-X

# --- chains ---

# default policies

# drop
-P INPUT DROP
-P OUTPUT DROP
-P FORWARD DROP

# --- chains for services

# ssh
-N S_SSH
-F S_SSH

# sebe povolit
-A S_SSH -s mojeip/32 -j ACCEPT
# ostatni omezit
-A S_SSH -m recent --set --name s_ssh_recent
#log and block 4th attempt
-A S_SSH -m recent --update --seconds 60 --hitcount 4 --name s_ssh_recent -m limit --limit 1/minute --limit-burst 1 -j LOG --log-level debug --log-prefix "iptables: SSH blocked: "
-A S_SSH -m recent --update --seconds 60 --hitcount 4 --name s_ssh_recent -j DROP
-A S_SSH -j ACCEPT

# www
...

# --- Main ----

# loopback input/output

-A INPUT -i lo -j ACCEPT
-A OUTPUT -o lo -j ACCEPT

# panic

#COMMIT

# --- input chain

# not from lo, but destination 127.0.0.1/8
-A INPUT -d 127.0.0.0/8 -j DROP

# accept all from localhost
-A INPUT -s 127.0.0.1 -j ACCEPT

# disable some ports
-A INPUT -p tcp -j DENIEDPORTS

# DROP/ACCEPT packets depending on the state of the connection
-A INPUT -j KEEPSTATE

...

# --- input chain services

# ssh
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j S_SSH

# http
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j S_WWW

...

# --- output chain

...

# --- output chain services

...

# --- logging ---

# LOG all superfluous packets

-A INPUT -m limit --limit 5/minute --limit-burst 5 -j LOG --log-level debug --log-prefix "iptables: undefined input: "
-A FORWARD -m limit --limit 5/minute --limit-burst 5 -j LOG --log-level debug --log-prefix "iptables: undefined forward: "
-A OUTPUT -m limit --limit 5/minute --limit-burst 5 -j LOG --log-level debug --log-prefix "iptables: undefined output: "

# but finally be kind and allow other output
-A OUTPUT -j ACCEPT

COMMIT
polo23 avatar 27.5.2009 22:09 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables

Ohledne toho konfiguraku... nemely by byt ty pravdila

# drop
-P INPUT DROP
-P OUTPUT DROP
-P FORWARD DROP
az na konci? Kazdy FW prece projizdi tabulku od vrchu dolu a aplikuje jednotliva pravidla. U toho Vaseho by se vsechno hned na zacatku zahodilo ne?

http://www.it-kurz.cz
28.5.2009 01:31 Ash | skóre: 53
Rozbalit Rozbalit vše Re: iptables
Ono tohle nejsou pravidla (rules), tohle jsou policies, vizte to -P, nikoliv -I nebo -A. Policy je možné nastavit pro předdefinované chainy, tedy v tabulce filter jsou to ty INPUT, OUTPUT, FORWARD a uplatňují se když paket dojde na konec chainu. U uživatelských chainů (u mně třeba S_SSH atd.) se paket pro projdení tímto chainem vrací do chainu ze kterého si odskočil (např INPUT).
28.5.2009 01:38 Ash | skóre: 53
Rozbalit Rozbalit vše Re: iptables
A ano, trochu si protiřečím když mám -P OUTPUT DROP a na konci mám -A OUTPUT -j ACCEPT. Takže na začátku se tvářím tvrdě jako že hodlám ve finále zahazovat i nepovolená odchozí spojení, a na konci vyměknu protože si nechci přidělávat problémy :) Říkám si že někdy zkusím to ACCEPT na konci smazat, schválně co všechno přestane fungovat.
28.5.2009 13:10 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
Osobně bych to určitě nedělal tak, že budu mít v nějakém skriptu příkazy iptables a ten skript nechám spouštět při startu systému. Podle mne si tak člověk koleduje o průšvih. Osobně upřednostňuju variantu s iptables-save a iptables-restore. Možné jsou samozřejmě oba způsoby, výhody a nevýhody jsem popsal v předchozích příspěvcích.
polo23 avatar 29.5.2009 08:30 polo23 | skóre: 26 | blog: polo23
Rozbalit Rozbalit vše Re: iptables

No ono kdyz se to tak vezme tak ten zpusob s iptables-save a iptables restore je taky spusteni skriptu po startu. Vyjde to podle me uplne na stejno. Jednou aplikujete primo prikazy iptables a podruhe zase pomoci iptables-restore je taky tahate ze souboru pri startu. Ja v tom rozdil nevidim.

http://www.it-kurz.cz
29.5.2009 11:41 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: iptables
Rozdíly jsem popisoval nahoře – s iptables-restore dojde k atomickému nastavení firewallu (který tedy není nějakou dobu v nedefinovaném stavu), navíc s iptables-restore daleko snáz zařídíte, že firewall bude po startu nastaven správně (protože se pouze obnovuje již vyzkoušené nastavení firewallu), a konečně s iptables-save a iptables-restore se daleko snáz dělají na firewallu úpravy.

V obou případech jde o spouštění skriptu, v tom rozdíl není. Rozdíl je v tom, co ten skript udělá – buď obnoví dříve použité nastavení firewallu (iptables-restore), nebo postupně mění současné nastavení firewallu (sada volání iptables) – přičemž ale výchozí stav firewallu je pokaždé jiný, takže je těžké napsat skript tak, aby fungoval vždy správně.

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.