Potrzebuję określonych pakietów (źródłowych lub binarnych) z Debiana.
Czy mogę pobrać pakiet za pomocą apt-get?
Jak mogę dodać repozytorium Debian do mojej strony sources.list, aby można było z niego korzystać tylko na podstawie poszczególnych przypadków? Bez zepsucia mojego systemu przy użyciu całego repozytorium Debiana?
Jak mogę uzyskać klucz gpg do repozytorium Debiana, aby mieć pewność, że pakiet został podpisany przez archiwum Debiana?
(Nie mów mi, że system może się zepsuć. Jestem tego świadomy i nie obchodzi mnie to, ponieważ mogę łatwo przywrócić migawkę maszyny wirtualnej.)
apt
software-sources
debian
gnupg
James Mitch
źródło
źródło
Odpowiedzi:
Na kilka pytań odpowiem indywidualnie:
Jak pobrać (a nie zainstalować) indywidualny pakiet binarny?
apt-get
ma opcję pobrania tylko pakietu:Pobrany pakiet znajdziesz w
/var/cache/apt/archives/
. W takim przypadku będziesz musiał dodać nową konfigurację listy źródeł do apt.Jak pobrać indywidualny pakiet źródłowy?
lub gdy znasz lokalizację pliku .dsc:
Oba podejścia weryfikują podpis na plikach
Jak przypiąć source.list aka, jak nie zepsuć mojej instalacji?
Wskazałeś już na stronę podstawowego opisu przypinania APT , a chciałbym tylko dodać, że prawdopodobnie chcesz przeczytać stronę apt_preferences, która zawiera również ładne przykłady do osiągnięcia potrzebnych rzeczy. Szczególnie zobacz sekcję „Śledzenie stabilne” w PRZYKŁADACH, ponieważ opisuje ona coś bardzo zbliżonego do twoich potrzeb:
Przy odtwarzaniu z wieloma źródłami i przypinaniu APT przydatne jest przydatne polecenie:
To pokazuje, że zainstalowana wersja to 1.1.3-1 ~ bpo60 + 1, a kandydat to 1.2.0 ~ rc3-1 ~ bpo60 + 1, która zostanie zainstalowana w następnym
apt-get upgrade
. Dostępna jest także starsza wersja z innego repozytorium.Jak pobrać klucz archiwum Debiana?
Klucz archiwum Debiana jest opublikowany na ftp-master . Musisz zaimportować klucz do breloka gpg:
Następnie będziesz musiał sprawdzić jego podpisy:
Śledź poszczególne klucze GPG deweloperom Debiana, śledząc je ręcznie lub sprawdzając np . W projekcie PGP Key Statistics . I dopóki nie będzie łańcucha od twojego klucza PGP / GPG do archiwum kluczy Debiana, w pewnym momencie będziesz musiał dokonać skoku wiary.
Jak ręcznie pobierać i weryfikować poszczególne pakiety
Zatem drugie podejście jest bardziej skomplikowane, ponieważ pakiety deb nie są podpisywane indywidualnie, ale
Release
podpisywany jest tylko plik. Dlatego musisz pobrać i zweryfikować podpisRelease
iPackages
pliki wraz z indywidualnym pakietem.Dodam przykład, który będzie jaśniejszy.
Wyobraź sobie, że chcesz pobrać pakiet Debian dla Knot DNS z oficjalnego PPA dla Ubuntu precyzyjnie na architekturze amd64.
Będziesz musiał kliknąć katalogi i znaleźć te pliki:
Następnym krokiem byłoby zweryfikowanie podpisu w
Release
pliku:Oczywiście musisz zweryfikować klucz w inny sposób (np. Klucz opiekunów Debiana / Ubuntu, sprawdzanie go ze startera itp.)
Po zweryfikowaniu poprawnego podpisu w
Release
pliku możesz przejść do następnego kroku - weryfikacja pliku Packages.Jak widać, podpis można znaleźć w podpisanym
Release
pliku, dlatego zweryfikowaliśmy integralnośćPackages
pliku, obliczając i porównując jego odcisk palca SHA-256.Ostatni krok jest podobny. Musisz obliczyć i porównać odcisk palca pojedynczego opakowania:
W tym momencie bezpiecznie przywiązaliśmy pakiet do podpisanego
Release
pliku. Więc jeśli uważasz, że podpis wRelease
pliku, możesz być pewien, że pakiet został pobrany w nienaruszonym stanie.Możesz przeczytać więcej w artykule Bezpieczny APT na Debian Wiki.
źródło
gpg
polecenie nie powinno wymagać uprawnień roota? Ma to być narzędzie administracyjne.