Základy bezpečného chování uživatelů

Toto téma je u uživatelů oblíbené jako bodlák v řiti, napříč operačními systémy, včetně těch mobilních. Vlastně mám pocit, že vyvolává stejné emoce, jako když dojde řeč na zálohování.

Ať chceme nebo ne, musíme se chovat trochu zodpovědně a nebát se použít hlavu.

Na této stránce bude shromažďováno to, nač si dát pozor z pohledu chování uživatele.

Repozitáře

Byla řeč o uživatelských repozitářích. Těch je několik druhů a je dobré se naučit dávat si na to pozor. Komunitní repozitáře, o kterých jsem doposud psal, jsou oficiální komunitní repozitáře. Tzn., že se o ně stará někdo z komunity, tedy spadá do vývojového týmu distribuce. Takový repozitář považujeme za bezpečný.

Zabezpečení repozitáře je věcí vývojářů distribucí. Používají k tomu klíče, což si můžeme představit, jako klíče od domu. Pokud chceme něco z repozitáře nainstalovat/aktualizovat, tak potřebujeme klíče, abychom si mohli otevřít dveře nebo naopak, pokud se nám něco cpe do systému, musí mít ty správné klíče. Tohle za nás samozřejmě dělá správce balíčků a uživatel se s tím nesetká, pokud se něco nerozbije a nebo, pokud dlouhodobě nekašle na aktualizaci systému – o tom níže. Dalším dílkem skládačky jsou tzv. podpisy balíčků, tedy opět si můžeme představit, že někdo vytvoří balíček a v rámci jeho identity a autorizace je balíček automaticky podepsán (jako když napíšete dopis a podepíšete jej – promiňte, zprávu do komunikátoru a příjemce na základě nějaké identifikace vidí, že to napsal Honza). Princip je stejný, jen trochu složitější a do toho se nebudeme pouštět, to podrobně vědět nepotřebujeme. Jen je dobré vědět, že něco takového je.

Oficiální repozitář je tedy chráněn a tak není možné jednoduše podstrčit někomu balíček, který obsahuje třeba nějaký škodlivý kód. Stejně tomu je i oficiálním komunitním repozitářem.

Pak ale existuje celá řada neoficiálních komunitních repozitářů. Zde je velmi na místě říci, že naprostá většina z nich je bezpečná. Jde mi o to, že nový uživatel nebude absolutně tušit, které to jsou, v některých případech se uživatel rozhoduje na základě jména tvůrce toho repozitáře. Také nebudete na začátku tušit, kdo je kdo. K čemu se chci dostat je, abyste nepřidávali repozitáře bezhlavě, protože je to potenciálně velmi nebezpečné. Pokud hypoteticky přidáte repozitář obsahující škodlivý kód, můžete někomu otevřít vrátka, příměr k domu je, že necháte odemčené dveře a pro jistotu ještě otevřete okno v přízemí.

Příklad – ve větvi SUSE Linuxu, v našem případě tedy distribuce openSUSE Leap a Tumbleweed, si můžete přidat oficiální komunitní repozitář s názvem Pacman, dalším je třeba repozitář společnosti Nvidia s ovladači. A pak můžete přidat také nepřeberné množství repozitářů, které vytvářejí mimo jiné i samotní uživatelé (OBS – k tomu se okrajově dostaneme později, při představení distribucí). A zde na začátku nebudete tušit, jestli za prvé ten konkrétní uživatel „umí napsat správný recept na sestavení balíčku“ ani to, jestli je důvěryhodný. Stejně velké množství je uživatelských repozitářů pro větev Debianu, (nejen) tam se konkrétně používá PPA (Personal Package Archive).

Pokud vás navede k takovému repozitáři nějaký návod ve wiki distribuce nebo na fóru, je pravděpodobné, že bude vše v pořádku. Pokud ale budete vytahovat informace z útrob dalších webů, raději se informujte. Až se rozkoukáte, zorientujete se, budete vědět, že Pepa nebo Hanz nebo John nebo Jose se můžou přetrhnout pro komunitu a že o Jeníčkovi jste nikdy neslyšeli, tak se podíváte co je zač. Na začátku to vědět ale nebudete. Myslete na to.

Instalace aplikací

S tím souvisí i samotné instalování aplikací. Aplikace instalujte primárně z oficiálních zdrojů. Tzn. skrze správce balíčků, ve kterém je oficiální repozitář, popř. oficiální komunitní repozitář. Pokud budete mít potřebu si přidat nějaký repozitář kvůli nějaké aplikaci, nebojte se poradit na fóru distribuce. Zdůrazňuji na fóru distribuce. Ptát se na sociálních sítích atd. na místě není. Oficiální zdroje, oficiální kanály a oficiální podpora. Pokud se tímto pravidlem budete řídit, vyhnete se pochybení na straně uživatele, což bývá procentuálně nejpoužívanějším způsobem k napadení systému – je i nejjednodušší.

Blbé vtípky až potenciální nebezpečí

Nikdy, za žádných okolností nevkládejte příkazy do terminálu, pokud nejsou z nějakého oficiálního návodu = wiki, nebo od člověka důvěryhodného.

Pokud se předčasně budete chtít seznámit s terminálem nebo vás nějaký návod do něj dovede, nedělejte tu chybu, kterou udělá drtivá většina nováčků = copy & paste, tedy kopírovat a vkládat příkazy, o kterých netušíte co dělají. Jistě, pokud půjdete podle návodu ve wiki distribuce či jiného oficiálního zdroje, je vše v pořádku. V případě dalších zdrojů buďte velmi opatrní a není od věci si přes vyhledávač najít, co který příkaz dělá a nebo – ideálně, najít postup jinde a porovnat. Většinu návodů datluje řada lidí na své blogy/weby bez ohledu na to, že to už někdo jiný napsal 10x.

Jeden z důvodů, proč to zdůrazňuji je jeden vtípek, který se vymkl. Nějaký uživatel se ptal na nějakou radu a jednoho jinak velmi hodného chlapíka napadlo poradit

sudo rm -rf /* 

v domnění, že přeci každý chápe, že je to fór. Jenže on to začátečník úplně nechápe a ten uživatel to důvěřivě do terminálu zadal. Pokud vám to nic neříká, tak již víte, že sudo je „přechod na práva roota“, rm je příkaz pro odstranění, parametry r znamenají včetně (sub)adresářů a f je force, tedy „už se neptej a udělej to“, lomítkem víte, že se označuje kořenový adresář v linuxové adresářové struktuře a hvězdička znamená, stejně jako v jiných operačních systémech, „všechno“. Asi to nepotřebujete překládat, ale pro ostatní → smaž všechno, co je připojeno do adresářové struktury systému, tedy i /home a nechtěj potvrzení. Sranda to byla do doby, než uživatel stiskl enter… naštěstí měl úplnou zálohu.

Tohle byl vtípek, který se zvrhl, ale jaký příkaz kopírujete a vkládáte do terminálu bezhlavě vy? Proto znovu – velmi opatrně.

Tím nechci ani naznačit, že návody na internetu jsou nebezpečné. Pravdou je, že jsou v pořádku. Jen apeluji na to, abyste se drželi oficiálních zdrojů, oficiálních wiki, oficiálních návodů a případné další zdroje se naučili ověřovat. Neublíží vám to v žádném systému a pak se nestanete obětí nejapného vtípku či nějakého reálného útoku.

Aktualizace systému

Další téma, které uživatele baví. V Linuxu aktualizace systému zdlouhavým procesem není, byť se aktualizuje úplně vše. Přesto po vás může systém chtít po dokončení aktualizace restart a chápu, že ne úplně vždy se to hodí – a nemusíte tak činit hned, změny se projeví až po restartu. Přesto nezapomínejte, že aktualizace přináší i bezpečností opravy a vůbec není na místě to dlouho odkládat.

Pokud je budete odkládat velmi dlouho třeba v rolující distribuci, můžete dojít tak daleko, že vyprší platnost klíčů, o kterých jsme se bavili výše. A už si zaděláte na další sebevzdělávání, protože budete muset klíče nechat obnovit atd. Nikomu neublíží jednou za týden nechat aktualizaci systému proběhnout. Je to pár minut i v rolující distribuci (o tom později v rámci předvádění distribucí).