Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.
Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.
Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.
V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.
Oficiální ceny Raspberry Pi Compute Modulů 4 klesly o 5 dolarů (4 GB varianty), respektive o 10 dolarů (8 GB varianty).
Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
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.
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).
Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.
Jedna síťová karta (eth0) je zapojena do Internetu a druhá (eth1) do naší lokální sítě. Dejme tomu, že tyto sítě jsou již plně funkční, kabely jsou připojeny a pomyslná síť je následující:
V tomto článku se pokusím podrobně rozepsat postup, jak kompletně nainstalovat a nastavit směrovač s firewallem včetně nejpoužívanějších proxy serverů. Používám distribuci SUSE, ale budu se snažit vše popsat také pomocí ruční konfigurace. Pojďme rovnou na to!
Vložte zaváděcí CD se systémem, zaveďte jej a zvolte instalaci. Pokud má počítač atypickou grafickou kartu, málo paměti nebo je celkově příliš starý (pro firewall však stačí pomalé pentium), použijte textovou instalaci z druhého CD.
Instalace se nikterak neliší od stanice. Asi nejdůležitější je rozdělení disku. Na serveru není vhodné vytvářet jeden oddíl pro celý disk. Pokud by se totiž disk zaplnil (což se může reálně stát - mám s tím zkušenosti z praxe), pak by nebyl do zásahu administrátora systém schopen provozu. Proto je vhodné vytvořit několik diskových oddílů, ale toto pravidlo může být porušeno v jednom případě: máte příliš malý disk. Pokud máte pro Linux celý disk, vytvářejte zásadně primární oblasti.
Za rozumné považuji vytvořit pro adresář /var
(kam se ukládají často se měnící data - například cache HTTP proxy serveru) samostatný oddíl. Budou-li se na server přihlašovat pomocí ssh také uživatelé (což je ale v případě firewallu krajně nevhodné - z hlediska bezpečnosti), pak bych doporučil samostatný oddíl i pro adresář /home
. Ve speciálních případech (samba, ftp, www) je to podobné. Naopak vytvářet oddíl pro adresář /boot
nedoporučuji a nevidím v tom nějakou velkou výhodu (těžko disk zaplníte programy - na firewallu se příliš neinstalují).
Dalším krokem je nastavení klávesnice na anglickou. Počítač nebude využit ani tak k práci, jako k nastavování. A tam je nutno pracně klávesnici přepínat. Pro toho, kdo není zvyklý na českou, je vhodné takto distribuci nastavit. Posledním a asi nejdůležitějším procesem je výběr balíčků. Na server volte vždy přednastavení: minimální systém (což je asi 300 MB balíčků). V žádném případě neinstalujte ani KDE, ani GNOME. Opravdu to nemá smysl, instalace se tím jen protáhne a bude zabrán zbytečně veliký prostor na disku. Toto doporučení bylo platné pro SUSE, u jiných distribucí se výběr balíčků může lišit, ale v zásadě vždy najdete volbu minimální systém.
V detailním výběru pak doporučuji volit oblíbené programy a také servery, které hodláte provozovat. Ačkoliv se doporučuje, aby na firewall serveru, který slouží jako bezpečnostní prvek, nebylo kromě vlastního NAT překladu adres a firewallu nic jiného, praxe je obvykle jiná. Finance jsou omezené a pro pár počítačů (domácí síť) nemá smysl pořizovat servery dva. Ve svém případě jsem dodatečně zaškrtl ještě: mc (používám k rychlejšímu pohybu po adresářích a příležitostně i ke konfiguraci), wget (stahování balíčků), bind (jmenný server), squid (www cache), privoxy (odstraňovač reklam z www), samba (sdílení disků pro stanice s Windows) a dante (Socks server vhodný např. pro ICQ/Jabber).
Nastavte ještě heslo pro superuživatele. Nedoporučuji používat jednoduché heslo s tím, že se to pak změní. Je to nebezpečné! Nezapomeňte, že mezi prvním spuštěním sítě a prvním spuštěním firewallu může být několik (desítek) minut. Útočník by toho mohl využít a získat práva ještě před aktivací firewallu. V posledním kroku se nás instalátor bude ptát na konfiguraci sítě.
Nejdříve musíme rozchodit vlastní síť. Je důležité si uvědomit, která síťová karta je připojena ven (modem, venkovní router a podobně) a která do vnitřní sítě (hub, switch). Pokud kupujete pro účely směrování nový počítač, obvykle se do něj zakoupí i dva stejné typy karet, to se pak těžko pozná. Takže si dejte pozor, dobrá technika je vložit první kartu, nastavit síť a pak vložit druhou kartu. Nebo to risknout a když to nepůjde, tak víte, že je to obráceně. Murphyho zákony ale platí všude a ve světě IT dvojnásob, takový špatně zasunutý kabel může pak instalaci pěkně protáhnout. V poslední době však mají všechny desky integrované síťové karty (některé i dvě!), ale pozor při koupi. Vždy si ověřte, zda je taková karta Linuxem detekována. Například server AbcLinuxu poskytuje cennou studnu informací tohoto typu.
Ideální je tedy začít s vnitřní sítí. Připojte vnitřní kartu (v mém případě eth1) do sítě a pomocí instalátoru (pokud jsme konfiguraci sítě při instalaci přeskočili, stačí spustit YaST - Síťová zařízení - Síťová karta) tuto kartu zvolit. Jak vidíte na obrázku (pořizuji ho pomocí grafického YaSTu, textově orientovaná verze, která se používá na serverech bez X Window, je naprosto stejná), konfigurace rozhraní je snadná. Stačí zadat přidělenou adresu. V naší vnitřní síti jsme si ji zvolili sami: 192.168.1.1, maska je 255.255.255.0. Poté klepněte na Jméno počítače a zadejte gate, jako doménu můžete ponechat local. Ostatních voleb si nevšímejte.
Obrázek 1: Konfigurace vnější karty
Podobné je to i s vnější kartou eth1. Na obrázku 1 je vidět konfigurace pro našeho pomyslného poskytovatele. Za zmínku stojí síťová maska (netmask), kterou dostanete s informací o IP adrese (v mém případě je pro názornost 255.255.255.0). U názvu zadejte opět gate, do domény však vepište doménu poskytovatele, v tomto případě foobar.cz. Konfiguraci uložte a dokončete instalaci (pokud jste spouštěli YaST, tak jej můžete opustit, nebo použít další konzoli).
Obrázek 2: Jméno počítače
Nyní vyzkoušíme funkčnost vnitřní sítě. Zadejte příkaz
ping 192.168.1.99
|
pomocí kterého se pokusíte speciálním protokolem ICMP určeným pro ladění sítí zjistit, zda je počítač 192.168.1.99 aktivní. Nutno poznamenat, že ve vnitřní síti musí být počítač s touto adresou přítomný a zapnutý. Postačí jakákoliv stanice (i s Windows). Pokud se začne opakovat tato hláška:
PING 192.168.1.99 (192.168.1.99) 56(84) bytes of data.
|
víte, že síť je aktivní a funguje (udávané časy se mohou lišit). Stiskněte tedy Ctrl+C pro přerušení testovací smyčky. V opačném případě zkuste přehodit kabely či karty v počítači. Pokud ani to nepomůže, musí být zrada jinde. To přesahuje rámec tohoto textu. Zkoumejte, zda karta svítí, zda svítí aktivní prvek, případně volejte zkušenějšímu kolegovi.
Obrázek 3: Konfigurace směrování
Dokončeme nastavení TCP/IP. Znovu spusťme YaST - Síťové služby - Směrování a podle obrázku číslo 3 nastavme výchozí bránu na 123.45.67.1. Poté ze stejného místa ještě v modulu DNS a jméno počítače nastavme DNS server (může jich být i více). Nastavení pro našeho pomyslného poskytovatele je na obrázku 4. Reálné adresy musíme obstarat od poskytovatele (v případě vytáčeného připojení se dá nastavovat automaticky).
Obrázek 4: DNS
Výše uvedeným postupem (program ping) vyzkoušejme také spojení na počítač poskytovatele: 123.45.67.1. Jakmile funguje ping přes obě síťové karty, máme vyhráno.
Nyní se budu věnovat ruční konfiguraci, aby z textu měli užitek i uživatelé jiných distribucí, než je SUSE. Některé konfigurační soubory se mohou v další části textu mírně lišit, ale najdete je na stejných místech, jako je má distribuce SUSE.
Konfigurace síťových rozhraní se provádí pomocí příkazu ifconfig
(neplést s ipconfig z Windows, ifconfig nemá nic společného se slovem jestli, if od slova interface). Nejdříve zjistíme, s kým máme tu čest:
dmesg | grep eth
|
Na výpisu vidíme dvě karty, vestavěnou kartu na desce s chipsetem VIA a hojně používanou kartu s chipsetem Intel (typ jsem si vymyslel). Kabel k vnitřní síti tedy připojíme na Intel (eth1) a vnější na kartu VIA (eth0).
Síť aktivujeme pomocí příkazů
ifconfig eth0 up 123.45.67.89 netmask 255.255.255.0
|
a otestujeme pomocí příkazu ping, jak bylo vysvětleno výše. Problém je, kam IP adresy uložit (tyto dva příkazy musejí být vykonány při startu). Každá distribuce používá jiný soubor, nejlépe uděláte, když prohledáte adresář /etc
. Pokuste se najít soubory net.rc
, netstart
, SXXnetwork
a podobné a v nich lokalizovat volání programu ifconfig
. Tam také vyčtete, kde má vaše distribuce IP adresy uložené. U distribuce SUSE je to adresář /etc/sysconfig/network
.
Zbývá nastavit směrování a DNS. U směrování je situace stejná jako u IP adresy, nastavení bude pravděpodobně ve stejném souboru. Pokud byste to nenašli, můžete si vytvořit vlastní skript a spouštět jej při startu. Nastavení provedeme takto:
route add default gw 123.45.67.1 netmask 255.255.255.0.
|
Kontrolu směrovací tabulky provedete pomocí příkazu route -n
. Měla by obsahovat námi dodaný záznam. Jméno DNS (jmenného) serveru poskytovatele uložíme do souboru /etc/resolv.conf
:
nameserver 123.45.67.2
|
Jméno našeho serveru pak stačí nastavit v souboru /etc/hosts
. Co řádek, to záznam, v našem případě by to bylo:
127.0.0.1 localhost
|
Pro úplnost jsem uvedl také jména pro počítače gw1 a dns1, což může zkrátit testování (můžeme nyní psát ping gw1
). Další soubory už nejsou tak užitečné, nicméně je vhodné je alespoň prohlédnout.
/etc/networks
-- podobné jako /etc/hosts
, ale pro sítě;/etc/host.conf
, /etc/nsswitch.conf
-- konfigurace resolveru knihovny libc (nsswitch pro novější verzi knihovny).Doufám, že jsem nic neopomněl. Síť máme funkční.
V tuto chvíli již máme linuxový box (počítač s Linuxem a přístupem na Internet) a po nainstalování příslušných programů (pine, links, emacs) bychom jej mohli používat pro brouzdání po síti, čtení pošty a podobně. To ale nejspíš není naše představa, chtěli bychom Internet používat z jakéhokoliv počítače z vnitřní sítě bez nutnosti hlásit se na bránu. K tomu slouží IP forwarding (neboli maškaráda, NAT). Spolu s firewallem tvoří základní stavební kámen bezpečného připojení více počítačů k Internetu.
Snad žádný operační systém nedisponuje v základním vybavení takovou paletou nástrojů pro práci se sítěmi TCP/IP jako právě Linux. Nová jádra 2.4 a 2.6 obsahují podporu pro překlad adres a nástroje pro jejich konfiguraci iptables (v dřívějších jádrech to byl nástroj ipchains). Tyto programy (a jaderné moduly) umějí nejen překlad adres (tedy to, aby mohlo více počítačů transparentně přistupovat k Internetu přes jednu IP adresu), ale také umožňují definovat bezpečnostní pravidla, tedy firewall (včetně různých pokročilejších technik odhalování a zamezování útoků).
V SUSE Linuxu máme k dispozici nástroj SuSEfirewall2, který usnadňuje používání iptables. V minimální instalaci je firewall nainstalován, stačí jej nastavit.
Obrázek 5: Konfigurace firewallu
To se provádí pomocí YaST - Bezpečnost a uživatelé - Firewall. Nejprve nastavíme, které rozhraní je venkovní a vnitřní, poté zaškrtneme služby, které budou moci používat uživatelé z Internetu, a nakonec ještě nastavíme dodatečné volby. Vše je vysvětleno v levé části konfiguračního nástroje. Po dokončení se firewall ihned aktivuje. Jak snadné.
Nyní několik zásad. Pro vnější síť (Internet) není bezpečné povolovat služby, a proto zaškrtněte pouze ty, které jsou naprosto nezbytné. Není pravda, že OpenSSH (bezpečný telnet) je bezpečný. Dost často slýchám míchat pojem bezpečný a zabezpečený. OpenSSH je zabezpečený (protokol), ale vlastní služba obsahuje (jako každé jiné programy) chyby a útočník by mohl například omezit funkci počítače či získat práva superuživatele, pokud by objevil chybu v serveru ssh. Nejlépe, když nepovolíte nic.
Někteří správci si také neuvědomují hrozbu vnitřní sítě. Výzkumy ukazují, že asi 80 % útoků hackerů pochází zevnitř. U naší domácí sítě to sice nemá smysl, ale u větších firem je záhodno uvažovat o zaškrtnutí také této volby. Pak je však nutno prostudovat dokumentaci k programu SuSEfirewall2, aby bylo možno detailněji nastavit možnosti uživatelů.
Ruční konfiguraci zde nemá smysl probírat, bylo by to na delší povídání a jistě se mu budeme věnovat někdy příště. Ve zkratce: překlad adres a filtry se nastavují pomocí příkazu, chce to trošku studia manuálu a nějaký ten cvik, ale během jednoho dne není co řešit. Je to velice modulární, prakticky nejste omezeni.
Pro pomalejší připojení je vhodné, aby si server zapamatovával?již prohledané DNS adresy. To nám umožní balíček BIND (server named), který je v distribuci obsažen. Nainstalujeme ho pomocí YaSTu (pokud již není nainstalován) a aktivujeme jej při spuštění. V SUSE je bind nastaven na cache-only, což zrovna potřebujeme. Stačí tedy editovat soubor /etc/named.conf
takto:
options { directory "/var/lib/named"; dump-file "/var/log/named_dump.db"; statistics-file "/var/log/named.stats"; forward only; forwarders { # zde 123.45.67.2; }; listen-on { 192.168.1.1; }; }; |
Díky tomu, že máme aktivní maškarádu, je vlastně pošta funkční. Uživatel se může připojit k libovolné schránce (POP3, IMAP) a k libovolnému poštovnímu (SMTP) serveru a poštu přijímat i odesílat. Pokud však chcete mít vlastní poštovní doménu a využít tak výhod filtrování spamu a antivirové kontroly, máte dvě možnosti:
První možnost realizujete pomocí programu fetchmail, ten pravidelně vybírá poštu všem uživatelům a ukládá je na serveru. Pro přístup ke schránkám musíte ještě nainstalovat nějaký POP3 server, nebo umožnit uživatelům přístup na server (což je u firewallu nevýhodné). Tento první přístup je výhodný pro vytáčené připojení (pokud chcete ušetřit).
Druhou možností je plnohodnotný poštovní server: Potřebujete k tomu ovšem u poskytovatele takzvaný MX záznam (což dnes za pár stovek ročně není problém - získáte tak vlastní poštovní doménu s nekonečně mnoha uživateli). Výhoda je jasná, nejen že máte vlastní doménu (cokoliv@mojedomena.cz), ale především si můžete nastavit již zmiňovanou antivirovou/antispamovou kontrolu, také odesílání pošty je rychlejší (nejprve je odeslána na náš server a teprve poté postupně distribuována do Internetu, zatímco stanice je už dávno vypnuta).
Pro tyto účely se perfektně hodí jakýkoliv poštovní server. Před mnoha lety dominoval server sendmail, ale kvůli mnoha bezpečnostním chybám a zbytečně složité konfiguraci přestal být populární. Dnes se používají nejvíce dvě alternativy: postfix a qmail. Na systému SUSE je předinstalován server postfix, stačí jej tedy nakonfigurovat pomocí YaSTu. Nastavením antivirů a antispamů se nebudeme zabývat, je to dnes ale velmi aktuální věc a pro některé firmy o deseti a více pracovnících je to prakticky nutnost.
Jako poslední bychom měli nainstalovat proxy servery. Překlad adres se nehodí pro všechny případy, některé protokoly jsou postavené tak, že server (druhá strana) někdy kontaktuje klienta (např. FTP v nepasivním režimu, ICQ - přenos souborů a podobně). V těchto případech nám překlad adres nemůže posloužit, neboť firewall obvykle všechny příchozí pakety z Internetu zahazuje (neví, co s nimi), a proto se zde používají tzv. proxy servery.
Nejznámějším proxy serverem je Squid. Ačkoliv WWW funguje přes NAT bez problémů, při větším počtu uživatelů se vyplácí instalovat www proxy server, protože umí zrychlit přístup na Internet pomocí diskové cache. Jeho instalace je snadná, v SUSE jej stačí pouze spustit (dodatečná konfigurace se provádí editací dobře dokumentovaného konfiguračního souboru, ale není nutná). Poté stačí na stanicích nastavit proxy server na gate (port 3128). Od této chvíle se budou navštívené stránky ukládat do adresáře /var
(pro který máme samostatný oddíl na disku). Přístup se tím jistě zrychlí (minimálně obrázky jsou načítány rychleji).
Velmi jsem si oblíbil odstraňovač reklam z www - program privoxy. Podobně jako u Squidu se jedná o www proxy, je tedy nutno opět nastavit v prohlížečích port (tentokrát 8118). Program se nastavuje pomocí web rozhraní, ale pokud jej chcete použít zároveň se Squidem, musíte upravit konfigurační soubor (viz manuál). Já jej obvykle nastavuji tak, aby veškerou svoji komunikaci postoupil serveru Squid. Získáme tím rychlý přístup na Internet a ještě k tomu bez reklam (opravdu to funguje a bez nastavování, jen se někdy Privoxy zmýlí a odstraní obrázek ze stránky, která reklamou není). Dále doporučuji Socks server dante, který pak může být použit v FTP a ICQ klientech pro přenos souborů. Pro instalaci privoxy a dante serverů prostudujte manuály, je to opravdu snadné.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Skratka postavit dobry firewall nie je vecou par kliknuti. Clovek co nevie ako to funguje nieco poklika a mysli si, ze je za vodou. Falosny pocit bezpecnosti je horsi ako nizka bezpecnost.
Pokud mam k netu samostatne pripojeny pocitac (server i workstation), pripadne pokud mam branu, ktera dela mezi dvema sitovkami jen preklad adres (a ne bezne routovani mezi dvema verejnymi IP prostory) a pokud na strane internetu nenecham otevrene zadne nepotrebne porty (vsechny sluzby muzu prece bindnout jen na vnitrni interface), tak se prece i bez slozite nastaveneho firewallu nemam prakticky ceho obavat.
Ja sam to tak delam uz drahne let. Odbinduju sluzby z vnejsiho interface a na ty, co tam mit chci, pripadne aplikuji nejake trivialni ipchains/iptables pravidlo. Zadne zbytecne komplikovane setupy.
A i kdyz mi na takoveto masine bezel treba IRC bot (coz je primo navnada), tak jsem nemel nikdy zadny problem.
Pokud neco prehlizim, rad se necham poucit.