Pochopení a správa důvěryhodnosti balíků

Chápání důvěry
Rozšíření důvěry na další klíče

Schopnost aptu instalovat balíky z nejrůznějších zdrojů může vést k potenciální zranitelnosti. Představte si, že do svého seznamu zdrojů (sources.list) přidáte archiv balíků jistého Franty Záškodníka, protože si chcete nainstalovat jeho balík tajemstvizivota. Frantův archiv balíků však může -- aniž byste to tušili -- obsahovat jeho upravené verze balíků jako libc6 nebo ssh. Verze, které z vašeho systému odesílají důvěrné informace, nebo které otevírají zadní vrátka pro záškodníky! Pokud mají tyto balíky vyšší číslo verze, než balíky, které máte instalované v systému, apt je při příští aktualizaci radostně nainstaluje, což znamená, že Franta Záškodník pak může s vaším systémem provádět své nekalé plány. Jiná možnost je, že by se Franta naboural do vašeho zrcadla s archivy Debianu a nahradil původní software za své poupravené verze.

Naštěstí mají novější verze aptu a aptitude zabudovanou ochranu proti útokům tohoto typu. apt využívá silné bezpečnostní mechanismy založené na populárním šifrovacím softwaru GnuPG, díky kterým může ověřit, že balíky distribuované ze zrcadel Debianu jsou shodné s těmi, které na hlavní server nahráli vývojáři Debianu. aptitude vás bude varovat pokaždé, když se pokusíte o instalaci balíku ze zdroje nepocházejícího z projektu Debian. Varování se dočkáte i v případě, že byste chtěli aktualizovat stávající balík na verzi, která opět nepochází z Debianu.

[Varování]Varování

Bezpečnostní mechanizmus systému apt poskytuje téměř stoprocentní záruku na to, že obsah vašeho oblíbeného zrcadla je shodný s hlavním archivem Debianu. Není to samozřejmě všelék, protože zde stále existují teoretické způsoby, kterými by se podvržený balík mohl dostat přímo do hlavního archivu Debianu.

Ověření, že instalujete balíky pouze z důvěryhodného zdroje, vám přinese jistý stupeň bezpečí proti zlomyslným balíkům, ale nemůže eliminovat všechna rizika spojená s instalací softwaru.

Chápání důvěry

apt umožňuje administrátorovi archivu digitálně podepsat seznam balíků v archivu. Tento podpis (jež nemůže být v rozumném čase podvržen) zajišťuje kontrolu, že soubory balíků uvedené v seznamu jsou stejné s těmi, které správce do archivu opravdu umístil. Jinými slovy víte, že se obsah archivu od svého vytvoření nezměnil.[9] Pravost podpisu můžete ověřit vůči veřejnému klíči administrátora. Tento klíč je šířen spolu se systémem apt a obvykle jej naleznete na svých DVD s Debianem.

Když si aptitude stáhne seznam balíků na daném archivu, zkontroluje, zda je seznam podepsán správným klíčem. Pokud podepsán není, aptitude nebude balíkům z tohoto archivu důvěřovat. (Co to znamená prakticky se dozvíte dále.) Jestliže sice seznam podepsaný je, ale podpis je buď poškozen, nebo se nedá ověřit, bude zobrazeno varování a aptitude opět odmítne těmto balíkům důvěřovat.

Později, až spustíte instalaci nových balíků, se aptitude podívá na jednotlivé balíky podrobněji a zjistí, zda pochází z důvěryhodného zdroje či nikoliv. Jestliže by se měl nainstalovat nedůvěryhodný balík (nebo nedůvěryhodná verze důvěryhodného balíku), tak se zobrazí důrazné varování, kde dostanete poslední příležitost si vše rozmyslet a stahování přerušit:

Rozšíření důvěry na další klíče

Někdy se může stát, že byste chtěli, aby apt nedůvěřoval jen hlavnímu archivu Debianu, ale i některým dalším archivům. Pro každý takový archiv si budete muset obstarat veřejnou část klíče, kterým byl podepsán obsah daného archivu. Obvykle se jedná o textový soubor, jehož jméno končí na .asc. Buď jej můžete získat od administrátora archivu, nebo stáhnout z veřejného serveru s klíči. O tom, co jsou to veřejné klíče, jak je získat a následně s nimi pracovat, se dozvíte na stránkách projektu GnuPG.

Seznam klíčů, kterým bude apt důvěřovat, se nachází na takzvané klíčence v souboru /etc/apt/trusted.gpg. Až získáte příslušný GPG klíč, můžete jej přidat na klíčenku příkazem gpg --no-default-keyring --keyring /etc/apt/trusted.gpg --import novyklic.asc. aptitude pak bude důvěřovat libovolnému archivu, který je podepsán klíčem obsaženým v souboru novyklic.asc. (Soubor samotný již není potřeba, protože se stal součástí klíčenky.)

[Varování]Varování

S přidáváním klíčů buďte velmi opatrní, protože po přidání nového klíče na klíčenku APTu mu bude balíčkovací systém důvěřovat stejně, jako důvěřuje samotným archivům Debianu! Klíč byste proto měli přidávat pouze pokud jste si naprosto jisti tím, že přidáváte správný klíč a že osoba, které klíč patří, je důvěryhodná a kompetentní. (Kde slovo kompetentní myslíme hlavně ve vztahu ke správě klíčů.)



[9] Jak je zmíněno výše, tímto nezjistíte, zda jsou balíky v archivu bezpečné nebo dokonce neškodlivé. Popsaným mechanismem pouze zjistíte, zda jsou pravé nebo ne.