LINUXSOFT.cz Přeskoč levou lištu

ARCHIV



   

> Linuxová bezpečnost z pohledu uživatele (1)

Dnes si uděláme malou odbočku od internetového bankovnictví, protože to nemá s nezabezpečeným počitačem smysl ...

27.4.2004 08:00 | Ondřej Čečák | Články autora | přečteno 18985×

Bezpečnost je tak důležitá, jak jsou pro vás důležitá vaše data a vše, co souvisí s počítačem, se kterým pracujete. Pokud je váš počítač připojen k internetu, máte velice dobrý důvod se o bezpečnost zajímat, protože rizika jsou opravdu podstatná.

I. Úvod

GNU/Linux může být bezpečný systém

Ačkoli původní Unix nebyl přímo navržen s ohledem na bezpečnost, lze dnes unixové systémy včetně Linuxu zabezpečit poměrně dobře. Díky otevřenosti zdrojových kódu jádra a programů lze poměrně snadno prozkoumávat výhody a slabiny programů na té nejnižší úrovni a díky licenci GNU GPL tyto slabiny opravit nebo možnost jejich výskytu omezit. Nicméně, používání bezpečných programů je jen část úkolu – neméně důležité je služby také správně nakonfigurovat.

Uživatelé a jejich skupiny

Linux je víceuživatelský systém, jednotlivé uživatele lze navíc sdružovat do skupin. Obvyklé je, že určitá skupina má nějaké oprávnění (přístup k adresáři s důvěrnými dokumenty, možnost pracovat se zvukovou kartou atp.).

Od obyčejných uživatelů se trochu liší superuživatelský účet root, který obvykle má téměř absolutní vládu nad systémem (obvykle proto, že dnes již existují možnosti, jak moc roota omezit nebo rozdělit). Proto je velice důležité, aby byl tento účet používán pouze na věci, na které je nezbytné ho používat. Pokud existuje činnost, kterou může vykonávat obyčejný (nebo k tomu určený) uživatel a přesto ji dělá root, jde o čistou ignoraci bezpečnostních pravidel (extrémem může být např. spouštění KDE jako root). Všechny programy můžou obsahovat chyby (nebo úmyslné skryté funkce), které v případě spuštění uživatelem může ohrozit pouze data, ke kterým má právo zápisu, ale v případě spuštění rootem celý systém.

Práva souborů

Práva k souborům a adresářům umožňují určit, kdo bude mít k datům přístup a to na několik úrovních – čtení, zápis a spouštění a to pro různé uživatele nebo skupiny. Další možností jak omezovat možnosti práci se soubory jsou atributy (pouze na určitých filesystémech) nebo ACL (Advanced Control List, více článek na root.cz), které umožňují jemnější a komplexnější nastavení oproti klasickým unixovým právům (také to vyžaduje podporu filesystému, kterou ale většina moderních filesystémů už má).

I vy můžete být obětí útoku

Rozhodně není dobrý nápad myslet si, že jestli je moje internetové připojení pomalé, tak mi nehrozí žádné nebezpečí. Právě naopak, díky vašemu špatnému přístupu je nebezpečí naopak velké – existují automatické nástroje, které testují celý rozsah veřejných IP a zkouší bezpečnost – nejčastěji jednu určitou díru, přes kterou se pak zlý uživatel pohodlně a rychle dostane.

A k čemu mu takový systém bude? I když by ho teoreticky mohli zajímat vaše data, spíš se váš desktop stane satelitní základnou pro další útoky. Když už váš počítač nebude scanovat síť, může být použit k útoku tak, že případné stopy budou vést k vám. A nebo může dělat cokoli co ho napadne – pokud by vás bavilo sledovat, co by takový člověk dělal, nainstalujte si honeypot nebo něco podobného (honeypot je jeden nebo více virtuálních strojů, které mají za úkol nalákat potencionální crackery na nějakou bezpečnostní slabinu a následně toho nějak využít).

II. Základní věci

V této kapitole se pokouším vysvětlit alespoň pár dobrých (bezpečnostních) návyků.

Heslo a práce s ním

Několik věcí je opravdu zcela základních (a přitom zásadních), třeba heslo. Heslo by mělo být zvoleno optimálně – ani moc krátké (heslo tak chvíli odolá útoku, při kterém se zkoušejí všechny možnosti), ani moc jednoduché (další z možných útoků funguje tak, že zlý útočník vezme nějaký slovník a hesla jako křestní jména, existující slova apod. jsou rychle prolomena), ale také by nemělo být moc složité, protože pak není jednoduché si takové heslo zapamatovat – a pokud si ho napíšete na papírek, který následně umístíte na monitor nejlépe spolu s jménem a názvem služby, nemůžete pro někoho se zlými úmysly pohybující se fyzicky poblíž vašeho počítače udělat víc. Přesto se ale vyplatí dát do hesla sem tam nějaké to číslo nebo speciální znak, pokud je třeba jeden uprostřed hesla, není zas takový problém se zapamatováním. Také není špatný nápad heslo měnit v intervalu podle důležitosti služby.

Jak tedy volit heslo:

  • nemělo by být: krátké, jednoduché (existující slova, filmové postavy, ...)
  • pokud bude dlouhé, je důležité si ho pamatovat a ne někam psát (nebo si ho napsat, ale uložit na bezpečné a především počítačem nedosažitelné místo)
  • sem tam použít třeba číslo nebo speciální znak
  • heslo pravidelně měnit

Další věcí je, jak se správně s nějakým heslem chovat. První důležitou věcí je zvolit si různá hesla pro různé služby (nebo alespoň rozdělit služby do skupin podle toho, jak je daná věc důležitá, nebo podle toho, kdo bude heslo znát, protože v případe získání hesla u jedné stejně důležité služby by admin nebo cracker získal přístup k další stejně důležité službě). Pokud budete používat jedno heslo pro různé služby, útočníkovi stačí získat přístup k jediné službě a rázem má kontrolu téměř nad vším a vaše snaha vytvářet a pamatovat si bezpečná hesla je rázem zcela zbytečná.

Ke správné práci s heslem patří i správné zadávání hesla. Je dost nerozumné přihlašovat se na důležitou službu z internetové kavárny, kde se hodně lidí baví tím, že si zaznamenávají všechny stisknuté klávesy včetně vašich autentizačních údajů. To samé ale platí také pro všechny ostatní počítače, vždy byste měli přemýšlet, jestli počítač "známého" není pastí ...

Pokud už heslo zadávám do klávesnice, měl bych se také ujistit jestli mi zvědavý kolega (nebo vtipně umístěná kamera) nekouká přes rameno, případně jestli je bezdrátová klávesnice opravdu připojena ke správnému počítači :o).

Před každým zadáním hesla se opravdu vyplatí myslet. Vždy se vyplatí zvážit možná rizika odposlechu hesla (komunikace může být nešifrovaná nebo přes nedůvěryhodné počítače, ...) nebo jiné způsoby podvodu. A už vůbec by se vám nemělo stát, že se vám při zadávání hesla stane, že místo hesla pro relativně nedůležité služby zadáte to nejtajnější ...

Obecně není zadávání hesla moc bezpečné, protože obvykle vždy existují nějaká rizika odhalení. Existují také jiném možnosti autentizace, např. přihlašování pomocí certifikátů, jednorázových hesel, USB tokenů apod. Pokud se přihlašujete především díky certifikátům, také není špatný nápad zvolit si dlouhá a složitá hesla, která budou pro případ nutnosti uložena na rychle dostupném a bezpečném místě (v ideálním případě napsaná jinak než s použitím počítače a také uložena na místě, kam se použitím počítače nelze dostat).

Hesla také můžete ukládat v nějakém programu, který je bude všechny šifrovat a k přístupu ke všem heslům bude třeba hesla jednoho. Samozřejmě je jasné, že takový program musí běžet na co nejlépe zabezpečeném počítači a heslo, které slouží pro přístup k ostatním musí být logicky co nejbezpečnější – pokud tedy rovnou nebudete používat klíč, který budete nosit s sebou na nějakém médiu (nezapomínejte také na možnost ztráty apod.).

Hesla, která jsou uložené v konfiguračních souborech také nejsou dobrý nápad, pokuste se zkonfigurovat služby tak, aby takovéto soubory neexistovaly. Pokud to není dost dobře možné, nastavte práva tak, aby právo pro čtení pro soubor náleželo pouze vám (pozor, to že je váš home dostupný pouze pro vás nemusí znamenat bezpečí, protože může existovat program, který není bezpečný a útočníkovi umožní restriktivní práva na domovském adresáři obejít).

Software je obvykle děravý

Obvykle (existují nepatrné výjimky) je v každém větším programu spousta chyb. Nebudu rozebírat jak vznikají nebo jakých jsou typů – prostě jsou. A jejich nejjednodušší dělení je na objevené a neobjevené.

Pokud používáte programy, ve kterých jsou známé bezpečnostní chyby, tak je rozumné chybu nějakým způsobem odstranit – upgradovat na verzi programu, kde chyba už není nebo použít záplatu (patch), který chybu opraví. Každá "větší" linuxová distribuce má webové stránky (příp. emailové konference) o bezpečnosti a obvykle se zde oznamují nalezené chyby a jejich opravy. Vyplatí se tyto konference sledovat nebo systém pravidelně upgradovat tak, aby byl pokud možno bezpečný.

To, že jsou v programech chyby, které ještě nikdo neobjevil, není zas takové neštěstí, ale přesto je rozumné vhodně se bránit. Protože od doby, kdy je odhalena trochu důležitější bezpečností slabina do doby opravy je váš počítač potencionálně zranitelný. Proto se vyplatí stanovit nějakou bezpečnostní politiku, která podobným věcem zabrání (wrappery, firewall apod., těmto věcem se budu věnovat později).

III. Co chráníme

Proč se vůbec zabývat bezpečností? Jak jsem zmínil úplně v úvodu, bezpečnost je stejně důležitá jako vaše data a jako služby, na které se spoléháte. Kromě vlastního zabezpeční aplikací ale také musíte věnovat pozornost dalším věcem – (pokud je to nutné) zálohování zdroje el. energie, konektivity k síti (internetu). Zkuste si představit, co by se stalo v případě výpadku nebo selhání určité komponenty, zamyslete se nad tím a pokud to bude nutné, udělejte patřičná opatření.

Osobní bezpečnostní politika

Vaše chování by mělo být promyšlené, protože v bezpečnosti obvykle platí, že bezpečnost celku je stejně velká jako bezpečnost nejslabšího místa. A těchto slabých míst je několik, ať už slabá hesla, nebo děravý software.

Proto byste měli dodržovat několik následujících doporučení:

  • jak bylo zmíněno výše, správně se chovat s hesly a záplatovat software; neumožnit svým chováním lehký postup pro útočníka – nesmí se stát, že nějaký zlý uživatel najde jednu chybičku a rázem má přístup ke všemu.
  • dobře zabezpečit důvěrná data v počítači nebo je tam vůbec nezadávat (pokud chcete pracovat s opravdu důvěrnými daty, vyplatí se vyhradit zvláštní počítač, který nebude připojen k síti – tzn. všechna data přenášet ručně).
  • rozhodně se nepřihlašovat z nedůvěryhodných počítačů (počítače, u kterých si nemůžete být jisti bezpečností – může tam běžet keylogger, tj. program na zaznamenávání kláves, síťový provoz může být odposloucháván atp.). Existuje sice např. možnost přihlásit se jednorázovým heslem, ale útočník stále může ovládat nebo zcela unést vaší relaci (obvykle je ale vaše legitimní session relace ukončena, takže to je důvod k neklidu).
  • snažte se chovat tak, abyste nevytvářeli body, jejichž získáním získá útočník úplně vše – nebo takové body opravdu dobře zabezpečte.

Zabezpečení domácího počítače

Zabezpečení domácího počítače je poměrně jednoduché, zakažte všechny služby, které standardně běží a které nepotřebujete (třeba zakomentováním v /etc/inetd.conf a podobně), ty které potřebujete lokálně spusťte tak, aby nebyly dostupné po síti a u těch služeb, u kterých je potřeba, aby po síti běžely, omezte přístup (použijte iptables a/nebo tcpwrappers).

Firewall je přímo v linuxovém jádře a definuje, jak se jádro bude chovat k provozu přes síťová zařízení (filtruje pakety a rozhoduje, jestli je nechá projít, jestli je odmítne a nebo zahodí). Podrobný popis firewallu je ale mimo rámec tohoto článku. O firewallu si můžete přečíst v článku na tomto serveru nebo ve zdařilém seriálu na root.cz.

Tcpwrapper umožňuje rozhodnout, jestli bude služba s protějškem komunikovat. V Linuxu ho může mít nějaká služba buď vlastní a nebo používat standardní, který se konfiguruje editací souborů /etc/hosts.allow a /etc/hosts.deny.

Další informace o firewallech a tcpwrappers najdete třeba v security quickstart howto.

Jak už jsem poznamenal výše, vyplatí se pravidelně záplatovat software a používat silná hesla.

Zálohování

Ačkoli v porovnání s ostatním může být zálohování trošku nudnou záležitostí, v okamžiku, kdy o nějaká data nějak přijdete (selhání lidského faktoru, software, hardware; počítačový útok), si uvědomíte, jak důležité zálohování je. Ne nadarmo se říká, že data se dělí na dvě skupiny: data, která pravidelně zálohujeme a data, o která jsme ještě nepřišli.

Než se vrhnu na popis způsobů zálohování, další možnost je zajistit určitou redundanci dat na disku a do určité míry předejít potřebě odstavení systému a obnovování dat ze zálohy. Protože mluvím o discích, linuxové jádro umí tzv. RAID – jednotlivé disky můžou být zrcadleny, takže v případě selhání jednoho může systém běžet dál nebo alespoň nepřijdete o data apod. Více informací najdete v článku na root.cz.

Poměrně dost možností máte ve výběru, jak a kam zálohovat:

  • zálohovat můžete kompletně všechno
  • můžete dělat přírůstkové (inkrementální) zálohy, kdy zapisujete ta data, která se od minulé zálohy změnila (důležité je mít dostupnou a funkční poslední zálohu)
  • vypalovat data na optické disky, nebo ukládat na nějaké jiné externí zařízení
  • ukládat data po síti na nějaký další počítač

Pár doporučení:

  • jediná data, která se nevyplatí zálohovat jsou ta, která dokážete velice rychle a jednoduše obnovit (nebo jejich cena je nižší než cena zálohování a obnovy)
  • je dobré myslet také na ostatní faktory, je třeba počítat s krádeží nebo živelnou katastrofou – proto je vhodné umisťovat zálohy v bezpečné vzdálenosti od počítače, udělat více záloh a umístit je na jiném místě apod.
  • zálohy, které vytvoříte budete jednou možná potřebovat, takže by neměl být problém s hledáním nebo dostupností (jak jsem ale naznačil v předchozím bodu, položit zálohy na monitor není moc dobrý nápad)
  • vyplatí se zálohy vhodným způsobem popisovat, i když každé záloze můžete dát nějaký název elektronicky, můžete mít pak problém najít správné médium
  • mějte na vědomí, že CDčka a diskety nejsou moc spolehlivá média
  • zálohování by mělo být pravidelné

Zálohování v Linuxu

Kromě klasických programů, jakými jsou dump/restore a tar existuje řada sofistikovanějších nástrojů (počínaje např. amandou a konče Tivoli). Existují také věci, které je lepší zálohovat jinak, než prostým zkopírováním souborů   například dump databáze a podobně. Seznam programů můžete najít v adresáři Utility – zálohování.

To je prozatím vše, v druhé (a současně závěrečné) části se podíváme na možnosti útoku a to jak lokální, tak vzdálené.

Za konzultace bych chtěl poděkovat Honzovi Houšťkovi.

Verze pro tisk

pridej.cz

 

DISKUZE

Nejsou žádné diskuzní příspěvky u dané položky.



Příspívat do diskuze mohou pouze registrovaní uživatelé.
> Vyhledávání software
> Vyhledávání článků

28.11.2018 23:56 /František Kučera
Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.
Komentářů: 1

12.11.2018 21:28 /Redakce Linuxsoft.cz
22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář

6.11.2018 2:04 /František Kučera
Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

4.10.2018 21:30 /Ondřej Čečák
LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář

18.9.2018 23:30 /František Kučera
Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

9.9.2018 14:15 /Redakce Linuxsoft.cz
20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business. Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář

12.8.2018 16:58 /František Kučera
Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář

16.7.2018 1:05 /František Kučera
Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář

   Více ...   Přidat zprávičku

> Poslední diskuze

31.7.2023 14:13 / Linda Graham
iPhone Services

30.11.2022 9:32 / Kyle McDermott
Hosting download unavailable

13.12.2018 10:57 / Jan Mareš
Re: zavináč

2.12.2018 23:56 / František Kučera
Sraz

5.10.2018 17:12 / Jakub Kuljovsky
Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?

Více ...

ISSN 1801-3805 | Provozovatel: Pavel Kysilka, IČ: 72868490 (2003-2024) | mail at linuxsoft dot cz | Design: www.megadesign.cz | Textová verze