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í
×
    včera 22:33 | Nová verze

    Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.

    Ladislav Hagara | Komentářů: 0
    včera 17:44 | Zajímavý článek

    Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.

    karkar | Komentářů: 0
    včera 12:11 | Humor

    Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).

    Ladislav Hagara | Komentářů: 2
    včera 10:44 | IT novinky

    Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.

    Ladislav Hagara | Komentářů: 22
    včera 09:55 | IT novinky

    Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.

    Ladislav Hagara | Komentářů: 2
    včera 09:33 | IT novinky

    Poslední aktualizací začal model GPT-4o uživatelům příliš podlézat. OpenAI jej tak vrátila k předchozí verzi.

    Ladislav Hagara | Komentářů: 0
    včera 08:11 | Nová verze

    Google Chrome 136 byl prohlášen za stabilní. Nejnovější stabilní verze 136.0.7103.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 8 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    29.4. 20:55 | Nová verze

    Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.

    Ladislav Hagara | Komentářů: 0
    29.4. 16:22 | Nová verze

    Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    29.4. 15:55 | Pozvánky

    Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových

    … více »
    Zdenek H. | Komentářů: 2
    Jaký filesystém primárně používáte?
     (58%)
     (1%)
     (9%)
     (22%)
     (4%)
     (1%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 493 hlasů
     Komentářů: 19, poslední včera 11:32
    Rozcestník

    Firehol

    7.7.2007 17:39 | Přečteno: 3928× | Výběrový blog

    Firehol je jeden z mnoha skriptů usnadňující vytváření pravidel pro iptables na linuxu. Nutno říci, že je jedním z nejsnadněji použitelným (můj subjektivní názor), což ale neznamená, že by ztrácel na kvalitě. Právě naopak. Předem upozorňuji, že tento článek si neklade za cíl vysvětlit kompletní možnosti fireholu, ale chce poskytnout dobrý začátek lidem, kteří si chtějí nastavit jednoduchý a bezpečný firewall. Pro kompletní dokumentaci navštivte domácí stránku fireholu.

    Instalace

    Nejprve je nutné stáhnout rpm ze stránek projektu. Po instalaci balíčku příkazem
    rpm -Uhv firehol*.rpm
    
    jej přidáme mezi služby tak, aby se spouštěl automaticky při startu:
    chkconfig --add firehol
    chkconfig firehol on
    
    Nyní přistoupíme k vlastní konfiguraci. V oblíbeném editoru otevřeme soubor /etc/firehol/firehol.conf. Soubor začíná verzí konfigurační souboru:
    version 5
    

    Konfigurace rozhraní

    Dále si definujeme několik sekcí interface, pro každé síťové rozhraní jednu:
    interface eth0 NET
            policy drop
            protection strong
            server ident reject with tcp-reset
            server http accept
            server icmp accept
            server ssh accept src 1.2.3.4
            server vnc accept src 1.2.3.4
            client all accept
    

    interface

    V prvním řádku definujeme síťové rozhraní eth0 a naše pojmenování NET, které bude použito pro generování iptables řetězců (chains) a v logu (který po odladění fireholu doporučuji vypnout).

    policy

    Udává výchozí politiku zacházení s packety pro které nejsou definována pravidla server. Hodnoty mohou být drop - zahození packetu bez upozornění nebo reject - zahodí packet a pošle ICMP upozornění klientovi, že tu cesta nevede.

    protection strong

    Zabezpečení proti všem známým technikám útoků.

    server

    Několik řádků s definicemi pravidel pro služby. Za slovem server následuje jméno služby (buď známé nebo ručně definované) služby a její povolení parametrem accept nebo zakázání parametrem reject nebo drop. Obvykle si vystačíme s jednoduchou definicí:
    server http accept
    
    kterou povolujeme připojení z venčí na náš webový server. Dále je možné pomocí parametru src definovat IP, ze kterých povolíme, nebo naopak zakážeme připojení. Např:
    server ssh accept src 1.2.3.4
    
    povoluje připojení na šifrovaný terminál pouze pro vybranou IP

    client

    Definici podobnou službám mohou mít i klienti, kteří se snaží připojit z našeho PC ven. V drtivé většině případů si vystačíme s pouhým:
    client all accept
    
    Tím by měla být definice rozhraní hotová. Pokud má náš stroj s více síťovými rozhraními sloužit také jako router, je nutné definovat sekce router

    Nastavení sekcí router

    Pro každou routovací cestu (tj pro každou kombinaci síťových rozhraní, přes které mohou putovat data k dalším počítačů v sítích) je nutné vytvořit sekci router:
    router LAN2NET inface eth1 outface eth0
            route all accept src 192.168.5.3
            route all accept src 192.168.5.4
            route all accept src 192.168.5.10
            route all drop
    
    Za definicí router následuje pojmenování a definice síťových rozhraní pro vstup a výstup packetů. Opět si ve většině případů vystačíme s
    route all accept
    
    ale zde je vhodné vyjmenovat jednotlivé IP, které mají mít přístup (v tomto případě) na Internet. Opět můžeme definovat jednotlivé služby, které dané stroje mohou na Internetu využívat. V předchozím výpisu sekce router je směr ven, který obvykle neomezujeme. Naopak je potřeba si dávat pozor na směr dovnitř:
    router NET2LAN inface eth0 outface eth1
            route torent accept dst 192.168.5.3
            route all drop
    
    kde je velice vhodné vyjmenovat jednotlivé služby, které mohou jít dovnitř. Zde je ukázka nastavení sekce router pro přesměrování portu pro použití bittorrent klienta na jednom PC uvnitř sítě.

    Přesměrování portů a NAT

    Po routeru často také požadujeme překlad sítových adres (NAT) a s tím související přesměrování portů na PC v síti za routerem. NAT celé sítě můžeme definovat v sekci interface nebo router (pak se uvažuje outface rozhraní) příkazem masquerade, ale osobně doporučuji provádět NAT pro jednotivé PC zvlášť pomocí příkazu snat:
    snat to 1.2.3.4 src 192.168.5.3
    snat to 1.2.3.4 src 192.168.5.4
    snat to 1.2.3.4 src 192.168.5.10
    
    kde IP 1.2.3.4 je venkovní IP adresa routeru. Přesměrování portů pak zařídí příkaz nat to-destination:
    nat to-destination 192.168.5.3 proto tcp dport 6881 dst 1.2.3.4
    

    Známé služby

    Abecední seznam fireholu známých služeb: AH, all, amanda, any, anystateless, apcupsd, apcupsdnis, aptproxy, asterisk, cups, custom, cvspserver, darkstat, daytime, dcc, dcpp, dhcp, dhcprelay, dict, distcc, dns, echo, emule, eserver, ESP, finger, ftp, gift, giftui, gkrellmd, GRE, h323, heartbeat, http, https, hylafax, iax, iax2, icmp, ICMP, icp, ident, imap, imaps, irc, isakmp, jabber, jabberd, ldap, ldaps, lpd, microsoft_ds, mms, ms_ds, msn, multicast, mysql, netbackup, netbios_dgm, netbios_ns, netbios_ssn, nfs, nis, nntp, nntps, ntp, nut, nxserver, oracle, OSPF, p2p, ping, pop3, pop3s, ortmap, postgres, pptp, privoxy, radius, radiusold, radiusoldproxy, radiusproxy, rdp, rndc, rsync, rtp, samba, sip, smtp, smtps, snmp, snmptrap, socks, squid, ssh, stun, submission, sunrpc, swat, syslog, telnet, tftp, time, timestamp, upnp, uucp, vmware, vmwareauth, vmwareweb, vnc, webcache, webmin, whois, xdmcp

    Definice vlastních služeb

    Na začátku konfiguračního souboru je možné definovat další služby pomocí proměnných server_servicename_ports a client_servicename_ports jak ukazuje následující příklad:
    server_svn_ports="tcp/3690"
    client_svn_ports="default"
    
    server_torrent_ports="tcp/6881 udp/6881"
    client_torrent_ports="default"
    
    Parametr default u klientských portů znamená rozsah 1024-65535, tedy běžný rozsah využitelný aplikacemi bez nutnosti běžet s právy roota, které bychom potřebovali pro použití portů nižších než 1024.

    Omezení logování

    V původním nastavení firehol zapisuje do logu mnoho informací, které běžně nepotřebujeme. Umravníme jej nastavením proměnné
    FIREHOL_LOG_LEVEL="7"
    
    v konfiguračním souboru.

    Ukázka konfiguračního souboru

    Ukázka malého konfiguračního souboru pro router s web serverem, několika vlastními službami, natem a přesměrováním portů pro bittorrent:
    version 5
    
    FIREHOL_LOG_LEVEL="7"
    
    server_svn_ports="tcp/3690"
    client_svn_ports="default"
    
    server_torrent_ports="tcp/6881 udp/6881"
    client_torrent_ports="default"
    
    server_vnc_ports="tcp/5902 udp/5902"
    client_vnc_ports="default"
    
    
    snat to 1.2.3.4 src 192.168.5.3
    snat to 1.2.3.4 src 192.168.5.4
    snat to 1.2.3.4 src 192.168.5.10
    
    nat to-destination 192.168.5.3 proto tcp dport 6881 dst 1.2.3.4
    nat to-destination 192.168.5.3 proto udp dport 6881 dst 1.2.3.4
    
    interface eth0 NET
            policy drop
            protection strong
            server ident reject with tcp-reset
            server http accept
            server icmp accept
            server ssh accept src 4.5.6.7
            server vnc accept src 5.6.7.8
            server svn accept
            client all accept
    
    interface eth1 LAN
            policy reject
            server all accept
            client all accept
    
    router LAN2NET inface eth1 outface eth0
            route all accept src 192.168.5.3
            route all accept src 192.168.5.4
            route all accept src 192.168.5.10
            route all drop
    
    router NET2LAN inface eth0 outface eth1
            route torrent accept dst 192.168.5.3
            route all drop
    
           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    7.7.2007 18:16 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Firehol
    Hmmm, nabouchat rovnou pravidla pro iptables mi přijde stejně složité jako učit se firehol...
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    cezz avatar 7.7.2007 18:48 cezz | skóre: 24 | blog: dm6
    Rozbalit Rozbalit vše Re: Firehol
    Zalezi ako rychlo vies pisat ;) Firehol s jednoduchym konfigurakom zgeneruje pomerne dlhy a dost kvalitny iptables skript.. Navyse ta jednoduchost.. Dobre ak viac ludi spravuje ten isty stroj, neni potom problem vyznat sa v cudzich pravidlach..

    Ale to len tak IMHO.. ;-)
    Computers are not intelligent. They only think they are.
    7.7.2007 19:14 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Firehol
    Víc adminů se může starat i o pravidla v iptables :-) stačí je jen správně a přehledně zapisovat...
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    cezz avatar 8.7.2007 12:11 cezz | skóre: 24 | blog: dm6
    Rozbalit Rozbalit vše Re: Firehol

    stačí je jen správně a přehledně zapisovat...
    a presne toto ma ulahcit firehol.. ;-)

    Computers are not intelligent. They only think they are.
    Heron avatar 7.7.2007 19:37 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Firehol
    V podstatě platí, to co již napsal cezz. Dřív jsem si psal iptables pravidla také sám, ale po přečtení výstupu z fireholu, především pak to, co generuje ten příkaz "protection strong", jsem to vzdal. Firehol toho umí hodně a v konfiguráku je to velmi přehledné. Psát několik desítek chainů ručně je náročnější a náchylnější na chyby.

    Jako článek to klidně vyjít může, bude-li zájem.
    7.7.2007 22:06 anicka | blog: ze_zivota
    Rozbalit Rozbalit vše Re: Firehol
    Firehol toho umí hodně a v konfiguráku je to velmi přehledné. Psát několik desítek chainů ručně je náročnější a náchylnější na chyby.

    Bohuzel mam taky praktickou zkusenost s pouzivanim fireholu: Zatimco kdybych psala seznam pravidel pro jisty firewall rucne, byly by jich radove desitky, firehol navzdory krase sveho konfiguraku vyrobil tech pravidel neco pres tisic - muzu verit tomu, ze jsou v poradku? :( Neni lepsi napsat tech nekolik desitek pravidel rucne a poradne je zkontrolovat?

    Mimochodem, kdyz jsem ho potkala naposledy, byl bez silenych hacku pro distrbicu nasledujici FHS takrka neubalitelny (a to, jak, byl IMHO dalsi duvod odrazujici od pouzivani - muzu jeho autorum verit, ze funguje dobre, kdyz vypada tak, jak vypadal?) - je to uz dneska lepsi?
    ^D
    Heron avatar 8.7.2007 09:12 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Firehol
    Pravidel je hodně a je to dáno tím, že pro každý řádek server, client nebo route a nějaké další FH vytváří vlastní chainy.

    Co se týče vytváření balíku, tak s tím zkušenosti nemám.
    8.7.2007 13:21 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Firehol
    Jen doufám, že to taky automaticky nezapíná RP filtr, to je šílený zlozvyk…
    Heron avatar 8.7.2007 17:22 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Firehol
    Ne nezapíná. Jen forward pro routování.
    8.7.2007 13:23 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Firehol
    Jako článek to klidně vyjít může, bude-li zájem.
    Já myslím, že zájem by byl :-)
    When your hammer is C++, everything begins to look like a thumb.
    7.7.2007 19:14 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Firehol
    Nechceš to vydat jako klasický článek?
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    Josef Kufner avatar 7.7.2007 21:45 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Firehol
    Ad známé služby: Nebere to náhodou z /etc/services?
    Hello world ! Segmentation fault (core dumped)
    Heron avatar 8.7.2007 09:15 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Firehol
    Nebere. Jsou definovány přímo ve skriptu firehol.
    8.7.2007 02:43 Ivanhoej | skóre: 26 | blog: ss2_Debian | Bratislava
    Rozbalit Rozbalit vše Re: Firehol
    Tie komentare sa az nezdravo opakuju.
    8.7.2007 03:24 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Firehol
    Musíš počkat, než LtCmdr. Literák stihne zasunout nádobu s antihmotou do javoprostorového okna a uzavře tak tuhle anomálii. ;-)
    8.7.2007 03:49 thingie
    Rozbalit Rozbalit vše Re: Firehol
    Nebo než to někdo prostě spraví.
    8.7.2007 03:55 MyDahoo_ | blog: Great_Ideas
    Rozbalit Rozbalit vše Re: Firehol
    Ne, to jen vidíte vícekrát, než je třeba... :)
    Tak ale okamžitě dolů!
    8.7.2007 04:09 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Firehol
    Viděl jsi tu epizodu? ;-)
    8.7.2007 04:21 MyDahoo_ | blog: Great_Ideas
    Rozbalit Rozbalit vše Re: Firehol
    Co? Kde? Kdy? Jak? :) Nic nevím, nejsem za to zodpovědný... :)
    Tak ale okamžitě dolů!
    15.3.2009 12:55 verca
    Rozbalit Rozbalit vše Re: Firehol

    To je vsechno potreba pro linux?
    Linux je prece bez viru, ne? https://www.abclinuxu.cz/software/bezpecnost/antiviry

    Založit nové vláknoNahoru

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