Product SiteDocumentation Site

6.5. Sprawdzanie Autentyczności Pakietów

Dla administratorów Falcot Corp bezpieczeństwo jest bardzo ważne. Zgodnie z tym założeniem, muszą być pewni, że instalują tylko pakiety, których pochodzenie od Debiana jest gwarantowane, które nie były zmieniane przez osoby trzecie. Włamywacz komputerowy mógłby bowiem próbować dodać szkodliwy kod do wiarygodnego pakietu. Po zainstalowaniu, taki pakiet mógłby robić cokolwiek, do czego włamywacz go zaprojektował, włączając w to na przykład kradzież haseł lub poufnych informacji. W celu przeciwdziałania takim zagrożeniom, Debian stosuje pieczęci zabezpieczające, aby zagwarantować — w czasie instalacji — że pakiet naprawdę pochodzi od jego opiekuna i nie był modyfikowany przez osoby trzecie.
Wspomniana pieczęć składa się z łańcucha kryptograficznych funkcji skrótu i podpisu. Podpisanym plikiem jest plik Release, dostarczany przez serwery lustrzane Debiana. Zawiera on listę plików Packages (włączając ich skompresowane wersje, Packages.gz i Packages.bz2 oraz wersje przyrostowe) razem z ich skrótami MD5, SHA1 i SHA256, które zapewniają, że pliki nie zostały zmodyfikowane. Pliki Packages zawierają listę pakietów Debiana dostępnych na serwerze lustrzanym razem z ich skrótami, które to z kolei zapewniają, że zawartość samych pakietów również nie była zmieniana.
Zarządzanie zaufanymi kluczami odbywa się przez użycie komendy apt-key z pakietu apt. Program ten zarządza bazą kluczy publicznych GnuPG, które są używane do sprawdzania podpisów w plikach Release.gpg dostępnych na serwerach lustrzanych. Może zostać użyty do ręcznego dodania nowych kluczy (kiedy wymagane są nieoficjalne serwery lustrzane). Jednakże zazwyczaj wymagane są tylko oficjalne klucze Debiana. Wspomniane klucze są automatycznie aktualizowane przez pakiet debian-archive-keyring (przechowuje on bazę kluczy w /etc/apt/trusted.gpg.d). Jednakże pierwsza instalacja tego pakietu wymaga zachowania ostrożności: nawet jeżeli pakiet jest podpisany tak jak pozostałe, jego podpis nie może być zweryfikowany zewnętrznie. Z tego powodu ostrożni administratorzy powinni sprawdzić skróty zaimportowanych kluczy przed zaufaniu im do instalacji nowych pakietów.
# apt-key fingerprint
/etc/apt/trusted.gpg.d//debian-archive-squeeze-automatic.gpg
------------------------------------------------------------
pub   4096R/473041FA 2010-08-27 [expires: 2018-03-05]
      Key fingerprint = 9FED 2BCB DCD2 9CDF 7626  78CB AED4 B06F 4730 41FA
uid                  Debian Archive Automatic Signing Key (6.0/squeeze) <ftpmaster@debian.org>

/etc/apt/trusted.gpg.d//debian-archive-squeeze-stable.gpg
---------------------------------------------------------
pub   4096R/B98321F9 2010-08-07 [expires: 2017-08-05]
      Key fingerprint = 0E4E DE2C 7F3E 1FC0 D033  800E 6448 1591 B983 21F9
uid                  Squeeze Stable Release Key <debian-release@lists.debian.org>

/etc/apt/trusted.gpg.d//debian-archive-wheezy-automatic.gpg
-----------------------------------------------------------
pub   4096R/46925553 2012-04-27 [expires: 2020-04-25]
      Key fingerprint = A1BD 8E9D 78F7 FE5C 3E65  D8AF 8B48 AD62 4692 5553
uid                  Debian Archive Automatic Signing Key (7.0/wheezy) <ftpmaster@debian.org>

/etc/apt/trusted.gpg.d//debian-archive-wheezy-stable.gpg
--------------------------------------------------------
pub   4096R/65FFB764 2012-05-08 [expires: 2019-05-07]
      Key fingerprint = ED6D 6527 1AAC F0FF 15D1  2303 6FB2 A1C2 65FF B764
uid                  Wheezy Stable Release Key <debian-release@lists.debian.org>
Kiedy już odpowiednie klucze znajdą się w bazie, APT będzie sprawdzał ich podpisy przed każdą ryzykowną operacją, dzięki temu interfejsy wyświetlą ostrzeżenie w przypadku gdy zażądano instalacji pakietu, którego wiarygodność nie może zostać ustalona.