Proč je Linux bezpečnější než Windows

Linux je z principiálních a historických důvodů bezpečnější než Windows. Tedy nejen Linux, ale mimo jiné Linux. Proč tomu tak je? Ne, nebude řeč o veřejně dostupných zdrojových kódech, o kvalitním návrhu a implementaci atd., nic takového. Ten důvod je zcela prozaický, triviální, ale přitom nesmírně důležitý.

Odpůrci systému Linux tvrdí, že bezpečnost tohoto systému (tedy především že se prakticky nevyskytují viry, spyware, dialery a další škodlivý software) je dána tím, že je tak málo rozšířený, že se nikomu nevyplatí pro něj nějakou havěť tvořit. To je sice částečně pravda (ještě posílená tím, že zatímco Windows se vyskytují běžně jen v několika málo verzích, kdežto Linux má mnoho distribucí, což komplikuje tvorbu škodlivého kódu), ale ten skutečný důvod je jinde.

Linux (resp. obě části základního systému, tedy samotný Linux i GNU) byl od svého vzniku vytvářen jako víceuživatelský systém, podobně jako většina unixových systémů. Víceuživatelský nejen v tom smyslu, že se na jednom počítači může střídat více lidí, ale že jich může také více pracovat ve stejný okamžik, aniž by si vzájemně překáželi (jen sdílejí procesory, paměť atd.). Proto také bylo od počátku jasně určeno, kam má uživatel přístup, kam může zapisovat. Vypadá to tak, že má každý uživatel svůj domovský adresář a kromě něj (a případně kromě místa pro dočasné soubory apod.) nesmí zapisovat nikam. Tento koncept dodržovali a dodržují tvůrci téměř všech programů.

Každý uživatel pracuje pod svým vlastním uživatelským účtem. Co to ve výsledku znamená? Že ať program dělá cokoliv, pokud není v systému nějaká díra, nemůže ohrozit data jiných uživatelů, nemůže ohrozit nebo infikovat nainstalované programy ani systém jako takový. Pokud se něco stane, pak výhradně na souborech toho uživatele, který spustil příslušný škodlivý kód.

Naopak Windows jsou od počátku výrazně jednouživatelské systémy - ve své řadě jdoucí přes verze 95, 98 a ME dokonce v tom smyslu, že něco jako domovské adresáře vůbec neexistuje. Sice řada Windows NT a 2000 už šla jinou cestou, domácí uživatelé (i mnoho firemních) ale měli ty vysloveně jednouživatelské systémy.

Tvůrci programů proto řešili, kam zapisovat data, se kterými program pracuje. Řešili to různě, velmi často ale tak, že zapisovali přímo do adresáře, kde byl program nainstalován. Bylo to nejjednodušší. Když se pak Microsoft v zájmu bezpečnosti snažil přejít plně na koncept oddělených uživatelů s omezeným přístupem, tvrdě narazil. Dokonce z tohoto i dalších důvodů vznikl systém Windows ME, kde bylo zabezpečení oproti Windows 2000 výrazně slabší.

Ještě u systému Windows XP je standardní stav takový, že uživatel pracuje s plnými (administrátorskými) právy a může zapisovat kamkoliv. Tedy nejen on, ale i veškerá havěť, která se může na počítači vyskytnout. Problematických programů, jejichž tvůrci dosud nevzali na vědomí existenci domovských adresářů a zapisují i leckam jinam, je stále ještě dost - proto ani Windows Vista není z tohoto pohledu zcela bez problémů. Sice už si program nemůže dělat, co se mu zlíbí (pro některé má Vista dokonce zvláštní prostředí - aby program nepoznal, že mu není dovoleno všechno), ale časté vyskakování potvrzovacích dialogů vede k tomu, že uživatel už brzy ani nevnímá, co to vlastně potvrzuje.

Čili hlavní důvod, proč je Linux bezpečnější, tkví právě v tom, že práce v prostředí s omezenými právy je u něj nesrovnatelně přirozenější než u Windows. Tam to bude trvat ještě hodně dlouho, než se situace "normalizuje" a kdy si aplikace zcela přestanou dělat nároky na přístup tam, kam by ho mít neměly.

Autor: Lukáš Jelínek | středa 10.9.2008 15:46 | karma článku: 24,77 | přečteno: 2073x