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í
×
    dnes 17:44 | IT novinky

    Policisté zadrželi odsouzeného drogového dealera Tomáše Jiřikovského, který daroval ministerstvu spravedlnosti za tehdejšího ministra Pavla Blažka (ODS) bitcoiny v miliardové hodnotě, a zajistili i darovanou kryproměnu. Zadržení Jiřikovského může být podle ministerstva důležité k rozuzlení kauzy, která vypukla koncem května a vedla ke konci Blažka. Zajištění daru podle úřadu potvrzuje závěry dříve publikovaných právních

    … více »
    Ladislav Hagara | Komentářů: 3
    dnes 13:44 | IT novinky

    Administrativa amerického prezidenta Donalda Trumpa jedná o možném převzetí podílu ve výrobci čipů Intel. Agentuře Bloomberg to řekly zdroje obeznámené se situací. Akcie Intelu v reakci na tuto zprávu výrazně posílily. Trump minulý týden označil Tana za konfliktní osobu, a to kvůli jeho vazbám na čínské společnosti, čímž vyvolal nejistotu ohledně dlouholetého úsilí Intelu o obrat v hospodaření. Po pondělní schůzce však prezident o šéfovi Intelu hovořil příznivě.

    Ladislav Hagara | Komentářů: 3
    dnes 05:44 | IT novinky

    Společnost Purism stojící za linuxovými telefony a počítači Librem má nově v nabídce postkvantový šifrátor Librem PQC Encryptor.

    Ladislav Hagara | Komentářů: 9
    včera 18:00 | Nová verze

    VirtualBox, tj. multiplatformní virtualizační software, byl vydán v nové verzi 7.2. Přehled novinek v Changelogu. Vypíchnou lze vylepšené GUI.

    Ladislav Hagara | Komentářů: 0
    včera 14:11 | IT novinky

    Eric Migicovsky, zakladatel společnosti Pebble, v lednu oznámil, že má v plánu spustit výrobu nových hodinek Pebble s již open source PebbleOS. V březnu spustil předprodej hodinek Pebble Time 2 (tenkrát ještě pod názvem Core Time 2) za 225 dolarů s dodáním v prosinci. Včera představil jejich konečný vzhled (YouTube).

    Ladislav Hagara | Komentářů: 13
    včera 12:44 | Zajímavý software

    Byla oznámena nativní podpora protokolu ACME (Automated Certificate Management Environment) ve webovém serveru a reverzní proxy NGINX. Modul nginx-acme je zatím v preview verzi.

    Ladislav Hagara | Komentářů: 1
    včera 12:22 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    13.8. 11:55 | IT novinky

    Společnost Perplexity AI působící v oblasti umělé inteligence (AI) podala nevyžádanou nabídku na převzetí webového prohlížeče Chrome internetové firmy Google za 34,5 miliardy dolarů (zhruba 723 miliard Kč). Informovala o tom včera agentura Reuters. Upozornila, že výše nabídky výrazně převyšuje hodnotu firmy Perplexity. Společnost Google se podle ní k nabídce zatím nevyjádřila.

    Ladislav Hagara | Komentářů: 5
    13.8. 04:33 | Bezpečnostní upozornění

    Intel vydal 34 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20250812 mikrokódů pro své procesory řešící 6 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    13.8. 04:22 | Nová verze

    Byla vydána nová verze 1.25 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (52%)
     (18%)
     (4%)
     (5%)
     (3%)
     (1%)
     (1%)
     (17%)
    Celkem 395 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Skripty pro firewall

    8.6.2010 19:00 | Přečteno: 1771× | Počítače | Výběrový blog | poslední úprava: 8.6.2010 17:40

    Soubor skriptů pro nastavení pravidel firewallu

    Pro nastavování pravidel do firewallu jsem si udělal sadu jednoduchých a přehledných skriptů. Pravidla mohou být u velké sítě dost složitá. Častý bývá požadavek snadného přenosu těchto pravidel na jiný počítač, například na pobočce. Pravidla bývají v takovém případě podobná, mění se pouze nastavení ip adres a podobně.

    Nastavovat pravidla přes klikací prostředí samozřejmě je možné (například kmyfirewall), ale i zde se ztrácí přehlednost, nastavit složitější věci je extrémně pracné, a v neposlední řadě nelze taková pravidla spravovat v nějakém verzovacím systému - nelze se snadno vrátit k předchozímu stavu.

    Klikadla pro nastavení všeho možného navíc všeobecně trpí dvěma neduhy: nic nelze zdokumentovat přímo na místě (příklad: registr windows) a odstranění nějakého pravidla "na zkoušku" s tím, že když se to neosvědčí, obnoví se původní stav, není možné (příklad: registr windows). V textových skriptech je možná jak dokumentace, tak podmíněné zpracování kusu kódu, případně zakomentování kódu.

    V dobách dřevěných jsem nastavoval pravidla v jenom velkém souboru. Přehlednost s rostoucí složitostí vzala rychle za své. Časem jsem vypracoval systém podobný systému popsanému v tomto článku, jeho nevýhodou však byla filosofie "Jedno pravidlo - jeden soubor". Protože například transparentní přístup na IMAP server je potřeba nastavovat v NAT (dvakrát - jednou pro vnitřní síť a jednou pro internet) a ve FORWARD pravidlech taky dvakrát (zvenku dovnitř a zevnitř dovnitř), každá podobná služba se i v případě jednoduchého firewallu se dvěma síťovými kartami nastavovala ve čtyřech souborech. Pokud se k tomu přidala ještě demilitarizovaná zóna, pravidel a souborů ještě přibylo.

    Přepracovaný systém pro tvorbu pravidel firewallu změnil filosofii na "jedna služba - jeden soubor". Transparentní přístup na IMAP v přepracované verzi se tak nastavuje v jediném souboru (zapisuje se do více pravidel najednou).

    Jednoduchou verzi pro dvě síťové karty vám nyní nabízím.

    Download: http://bravenec.org/cs/howto/firewall/FW-1.0.tgz

    Popis skriptů pro tvorbu pravidel firewallu

    V hlavním adresáři FW je několik souborů:

    firewall - spustitelná dávka, která projde a nastaví všechna pravidla přímo do kernelu. Na konci se volá uložení pravidel do systému (určeno pro Gentoo Linux).

    nastaveni - textový soubor s nastavením. Zde musíte zadat IP adresy svých síťových karet. Také zde máte možnost povolit a přesměrovat některé služby přístupné z internetu (například poštu) a vyřizované v počítači někde ve vnitřní síti (ideálně v demilitarizované zóně, ale to se v tomto jednoduchém příkladě neřeší).

    rules - podadresář se samotnými pravidly. V tomto adresáři jsou další podadresáře uvedené čísly (podle čísel se řídí pořadí volání).

    Podadresář rules

    V adresáři jsou další podadresáře. Každý podadresář shromažďuje příbuzná pravidla:

    000.common - pravidla jako defaultní policy, antispoofing, synflood, icmp a podobně. Tato pravidla jsou vždy volaná z jiných pravidel.

    100.pravidla - základní rozdělení do pravidel. Pravidla jsou pojmenovaná podle směru:

    Pravidla jsou minimalistická, obsahují jen nezbytná nebo obvyklá nastavení. Počítá se s tím, že další pravidla se budou přidávat v následujících souborech.

    300.zevnitr - soubory s pravidly pro přístupy z vnitřní sítě. Namátkou:

    400.zvenku - soubory s pravidly pro přístupy z vnější sítě. Namátkou:

    500.sluzby - Soubory pro zpřístupnění služeb. Služby zde uvedené mají dvě věci společné - server obsluhující službu je umístěný ve vnitřní síti a přístup na tuto službu musí být stejný jak z vnitřní sítě, tak z vnější sítě. Typickým příkladem je například http server. Ten může běžet ve vnitřní síti (počítač je z internetu nedostupný), ale stránky musejí být přístupné svou url adresou (například http://bravenec.org/) jak z vnitřní sítě, tak z internetu. Stejným způsobem je nutné přitsupovat typicky k poště (imap.bravenec.org a smtp.bravenec.org).

    999.konec - ukončení pravidel vytvořených v adresáři 100.pravidla. Obvykle je zde pouze logování a drop paketů, které prošly až sem.

    Struktura souborů s pravidly

    Pravidla mohou být velmi jednoduchá. Takto se například povoluje přístup přes ssh na firewall z vnitřní sítě:

    IPTABLES -A in-loc -p tcp --dport ssh -j ACCEPT
    

    IPTABLES je skutečně zapsané velkými písmeny - jde o wrapper kolem volání iptables (kvůli výpisům). Syntaxe je jinak stejná.

    Složitější pravidla (obvykle služby) mohou být košatější:

    if [ "$IMAPS" != "" ]; then
    
        ###########
        # zvnějšku
        IPTABLES -t nat -A pre-out -p tcp --dport imaps -d $OUTER -j DNAT --to $IMAPS
        IPTABLES        -A out-in  -p tcp --dport imaps -d $IMAPS -j ACCEPT
    
        ###########
        # zevnitř
        IPTABLES -t nat -A pre-in  -p tcp --dport imaps -d $OUTER  -j DNAT --to $IMAPS
        IPTABLES        -A in-in   -p tcp --dport imaps -d $IMAPS  -j ACCEPT
    
        IPTABLES -t nat -A in-post \
            -p tcp --dport imaps -d $IMAPS  \
            -j SNAT --to $INNER
    
        fi
    

    Pro vytvoření dalších pravidel stačí zkopírovat podobný soubor a upravit adresy a porty.

    Možnost dalšího rozšíření

    Pravidla jsou určená pro jednoduchý firewall se dvěma síťovými kartami. Pokud byste potřebovali oddělit demilitarizovanou zónu od vnitřní sítě (typicky http server nebo poštovní server), můžete firewall rozšířit o další síťovou kartu a o další pravidla (dmz-in, dmz-out, out-dmz, in-dmz, dmz-dmz). Pravidlo pro IMAPS by pak mohlo vypadat například takto:

    if [ "$IMAPS" != "" ]; then
    
        ###########
        # zvnějšku
        IPTABLES -t nat -A pre-out -p tcp --dport imaps -d $OUTER -j DNAT --to $IMAPS
        IPTABLES        -A out-dmz -p tcp --dport imaps -d $IMAPS -j ACCEPT
    
        ###########
        # zevnitř
        IPTABLES -t nat -A pre-in  -p tcp --dport imaps -d $OUTER  -j DNAT --to $IMAPS
        IPTABLES        -A in-dmz  -p tcp --dport imaps -d $IMAPS  -j ACCEPT
    
        ###########
        # z dmz (kvůli webmailu)
        IPTABLES -t nat -A pre-dmz -p tcp --dport imaps -d $OUTER  -j DNAT --to $IMAPS
        IPTABLES        -A dmz-dmz -p tcp --dport imaps -d $IMAPS  -j ACCEPT
    
        IPTABLES -t nat -A dmz-post \
            -p tcp --dport imaps -d $IMAPS  \
            -j SNAT --to $INNER
    
        fi
    
           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    Shadow avatar 9.6.2010 08:33 Shadow | skóre: 25 | blog: Brainstorm
    Rozbalit Rozbalit vše Re: Skripty pro firewall
    Shorewall nevyhovuje?
    If we do not believe in freedom of speech for those we despise we do not believe in it at all.
    Petr Bravenec avatar 9.6.2010 08:42 Petr Bravenec | skóre: 43 | blog: Bravenec
    Rozbalit Rozbalit vše Re: Skripty pro firewall
    Nevím. Už jsem na to narazil, takže si to asi stejně budu muset nastudovat.
    Petr Bravenec - Hobrasoft s.r.o.
    houska avatar 9.6.2010 08:46 houska | skóre: 41 | blog: HW
    Rozbalit Rozbalit vše Re: Skripty pro firewall
    znas shorewall?
    Petr Bravenec avatar 9.6.2010 08:56 Petr Bravenec | skóre: 43 | blog: Bravenec
    Rozbalit Rozbalit vše Re: Skripty pro firewall
    Vím o něm, neznám. Díky za pošťouchnutí. Nastuduju si to.
    Petr Bravenec - Hobrasoft s.r.o.
    Petr Bravenec avatar 9.6.2010 12:56 Petr Bravenec | skóre: 43 | blog: Bravenec
    Rozbalit Rozbalit vše Re: Skripty pro firewall

    Tak si hraji se shorewall... je to docela ulehčení, ale člověk aby stejně znal iptables a navíc k tomu shorewall. Nakonec jsem stejně skončil u pravidel jako:

    SSH/DNAT  net   loc:10.10.1.106
    SSH/DNAT  loc   loc:10.10.1.106
    

    Když takhle přesměruji zvenku dovnitř a zevnitř dovnitř port, návod mi vůbec nepomůže a shorewall vyrobí paskvil, který mě nepustí ven, vždy mě přesměruje dovnitř.

    Nutné je vyrábět pravidla takto:

    SSH/DNAT  net   loc:10.10.1.106
    DNAT      loc   loc:10.10.1.106 tcp  22  22  83.214.293.13
    

    A už zase dělám stejnou věc dvěma různými způsoby. Pokud teď ještě zjistím, že IP adresu nelze nahradit nějakou symbolickou hodnotou, budu shorewallem poněkud zklamaný. Znamenalo by to totiž, že každý počítač bych musel konfigurovat víceméně ručně.

    Petr Bravenec - Hobrasoft s.r.o.
    jahor avatar 9.6.2010 20:11 jahor | skóre: 3
    Rozbalit Rozbalit vše Re: Skripty pro firewall
    /etc/shorewall/params je co hledas ... tam presne nadefinujes symbolicka jmena pro ip, zaroven je muzes ruzne seskupit a tak si vytvori promennou ktera obsahuje napriklad vice serveru zaroven.
    Petr Bravenec avatar 9.6.2010 21:46 Petr Bravenec | skóre: 43 | blog: Bravenec
    Rozbalit Rozbalit vše Re: Skripty pro firewall
    Díky.
    Petr Bravenec - Hobrasoft s.r.o.
    9.6.2010 11:43 CEST
    Rozbalit Rozbalit vše Re: Skripty pro firewall
    Nema nejaky takovyhle dynamicky IP fwbuilder 4? Zatim jsem se v nim vic nehrabal, ale ma krome firewallu uz i cluster.
    Petr Bravenec avatar 9.6.2010 22:25 Petr Bravenec | skóre: 43 | blog: Bravenec
    Rozbalit Rozbalit vše Re: Skripty pro firewall

    Zabrousil jsem na web http://www.fwbuilder.org/ - chápu dobře, že to je klikací? To by ovšem dost významně snižovalo použitelnost takového udělátka...

    Petr Bravenec - Hobrasoft s.r.o.
    10.6.2010 00:15 Non_E | skóre: 24 | blog: hic_sunt_leones | Pardubice
    Rozbalit Rozbalit vše Re: Skripty pro firewall
    Ano, je to klikací. Vygenerovaný skript se nahrává přes ssh na server. Ozkoušel jsem to v domácí síti a jsem spokojen.
    Only Sith deals in absolutes.

    Založit nové vláknoNahoru

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