APT-SECURE(8) | APT | APT-SECURE(8) |
NAME¶
apt-secure - Ondersteuning in APT voor de authenticatie van archieven
OMSCHRIJVING¶
Met ingang van versie 0.6 bevat APT code die voor alle pakketbronnen de ondertekening controleert van het bestand Release. Dit geeft de garantie dat gegevens uit het archief, zoals pakketten, niet gewijzigd kunnen worden door mensen die geen toegang hebben tot de sleutel waarmee het bestand Release ondertekend wordt. Met ingang van versie 1.1 vereist APT dat pakketbronnen recente authenticatie-informatie verstrekken om die pakketbron ongehinderd te kunnen gebruiken. Met ingang van versie 1.5 moet gewijzigde informatie over de pakketbron in het bestand Release bevestigd worden, vooraleer APT voortgaat met het toepassen van updates die uit die pakketbron afkomstig zijn.
Opmerking: Alle op APT gebaseerde front-ends voor pakketbeheer, zoals apt-get(8), aptitude(8) en synaptic(8), ondersteunen deze authenticatiefunctionaliteit. Het is enkel om het eenvoudig te houden dat deze man-pagina van APT gebruikt wordt om die functionaliteit aan ze allemaal toe te schrijven.
CONFIGURATIE OP GEBRUIKERSNIVEAU¶
Sleutels moeten doorgaans worden opgenomen in hun corresponderende .sources door de ASCII-gepantserde sleutel in de optie Signed-By op te nemen. Vervang hiervoor de lege regel door een punt en laat vervolgens alle regels met twee spaties inspringen. Zie sources.list(5) voor meer informatie.
Als alternatief kunnen sleutels worden geplaatst in /etc/apt/keyrings voor lokale sleutels, of /usr/share/keyrings voor sleutels die worden beheerd door pakketten, en vervolgens kan er naar worden verwezen via de optie Signed-By: /etc/apt/keyrings/example-archive-keyring.asc in een .sources-bestand of via deb [signed-by=/etc/apt/keyrings/example-archive-keyring.asc] ... te gebruiken in de oude .list-indeling. Dit kan handig zijn voor vroegere APT-versies dan 2.4, die geen ingesloten sleutels ondersteunen. ASCII-gepantserde sleutels moeten een extensie .asc gebruiken, en niet-gepantserde sleutels een extensie .gpg.
Om sleutels te genereren die geschikt zijn voor gebruik in APT met GnuPG, moet u de opdracht gpg --export-options export-minimal [--armor] --export gebruiken. Eerdere oplossingen met --keyring file --import werken niet meer met recente GnuPG-versies, omdat deze een nieuwe interne indeling ("GPG keybox database") gebruiken.
Merk op dat een standaardinstallatie reeds alle nodige sleutels bevat om op een veilige manier pakketten op te halen uit de standaard pakketbronnen. Het beheren van sleutels is dus alleen nodig als er externe pakketbronnen worden toegevoegd. Het pakket extrepo kan worden gebruikt om meerdere externe pakketbronnen eenvoudig te beheren.
NIET-ONDERTEKENDE PAKKETBRONNEN¶
Indien een archief een niet-ondertekend Release-bestand of helemaal geen Release-bestand heeft, zullen alle hedendaagse versies van APT bij update-operaties standaard weigeren om er gegevens van op te halen. En zelfs als ze tot ophalen verplicht worden, zullen frontends, zoals apt-get(8), om een expliciete bevestiging vragen als bij een installatieverzoek een pakket uit een dergelijk niet-geauthenticeerd archief betrokken is.
U kunt alle APT-clients verplichten om enkel waarschuwingen te geven door de configuratie-optie Acquire::AllowInsecureRepositories op true in te stellen. U kunt ook individuele pakketbronnen toelaten om onveilig te zijn via de optie allow-insecure=yes in sources.list(5). Merk op dat onveilige pakketbronnen ten stelligste afgeraden worden en dat alle opties die apt verplichten om deze te blijven ondersteunen, uiteindelijk verwijderd zullen worden. Gebruikers beschikken ook over de optie Trusted, waardoor zelfs de waarschuwingen onderdrukt worden, maar u moet zeker zijn dat u de implicaties ervan begrijpt die uitgelegd worden in sources.list(5).
Een pakketbron die zijn eerdere authenticatie-status zou kwijt spelen zal in geval van een update-operatie bij alle APT-clients een foutmelding opleveren, ongeacht het feit of een optie het gebruik van onveilige pakketbronnen toestaat of verbiedt. Een dergelijke fout kan voorkomen worden door bijkomend de optie Acquire::AllowDowngradeToInsecureRepositories op true in te stellen of voor individuele pakketbronnen door de optie allow-downgrade-to-insecure=yes te gebruiken in sources.list(5).
ONDERTEKENDE PAKKETBRONNEN¶
De vertrouwensketen vanaf een APT-archief tot de eindgebruiker, bestaat uit verschillende schakels. apt-secure is de laatste schakel in die keten. Een archief vertrouwen betekent niet dat u er op vertrouwt dat zijn pakketten geen kwaadwillige code bevatten, maar betekent wel dat u de beheerder van het archief vertrouwt. Het behoort tot de verantwoordelijkheid van de archiefbeheerder om er voor te zorgen dat de integriteit van het archief gevrijwaard blijft.
apt-secure controleert geen handtekeningen op pakketniveau. Indien u gereedschap nodig heeft om dit te doen, moet u uitkijken naar debsig-verify en debsign (die respectievelijk in de pakketten debsig-verify en devscripts te vinden zijn).
De vertrouwensketen in Debian begint (bijvoorbeeld) wanneer een pakketonderhouder een nieuw pakket of een nieuwe versie ervan naar het Debian archief uploadt. Om effectief te worden moet deze upload ondertekend worden met een sleutel uit de sleutelbos van de pakketonderhouders van Debian (te vinden in het pakket debian-keyring). De sleutels van onderhouders worden door andere onderhouders ondertekend. Daarbij worden vaststaande procedures gevolgd om de identiteit van de sleuteleigenaar te kunnen garanderen. Vergelijkbare procedures worden in alle op Debian gebaseerde distributies gehanteerd.
Nadat het geüpload pakket geverifieerd werd en toegevoegd aan het archief, wordt de handtekening van de onderhouder verwijderd en wordt de controlesom voor dat pakket berekend en in het bestand Packages opgeslagen. Daarna wordt voor alle Packages-bestanden de controlesom berekend en opgeslagen in het bestand Release. Daarna wordt het bestand Release ondertekend door de archiefsleutel voor deze Debian release en verdeeld met de pakketten en de Packages-bestanden naar de Debian-spiegelservers. De sleutels bevinden zich in de sleutelbos van het Debian-archief die te vinden is in het pakket debian-archive-keyring.
Eindgebruikers kunnen de ondertekening van het bestand Release controleren, er de controlesom voor een pakket uithalen en die vergelijken met de controlesom van het pakket dat ze handmatig gedownload hebben - of vertrouwen op APT die dit automatisch doet.
Merk op dat dit niet hetzelfde is als een controle van handtekeningen op het niveau van individuele pakketten. Deze werkwijze is ontworpen om twee mogelijke aanvallen te voorkomen:
Ze biedt evenwel geen bescherming tegen een aanval gericht tegen de hoofdserver van Debian (die de pakketten ondertekent) of tegen een aanval gericht tegen de sleutel die gebruikt wordt om de Release-bestanden te ondertekenen. In elk geval biedt dit mechanisme wel een aanvulling op een ondertekening op pakketniveau.
INFORMATIEWIJZIGINGEN¶
Het bestand Release bevat behalve de checksums voor de bestanden uit de pakketbron, ook algemene informatie over de pakketbron, zoals origine, codenaam en versienummer van de release.
Deze informatie wordt op verschillende plaatsen weergegeven en dus zou de eigenaar van een pakketbron altijd de juistheid ervan moeten garanderen. Daarenboven kan gebruikersconfiguratie, zoals apt_preferences(5), van deze informatie gebruik maken en er afhankelijk van zijn. Daarom moet de gebruiker met ingang van versie 1.5 wijzigingen expliciet bevestigen, om te signaleren dat deze voldoende voorbereid is op bijvoorbeeld de nieuwe hoofdrelease van de distributie (bijvoorbeeld aangeduid met de codenaam) die door de pakketbron verdeeld wordt.
CONFIGURATIE VAN DE PAKKETBRON¶
Indien u voor een door u onderhouden archief in een ondertekening van het archief wilt voorzien, moet u het volgende doen:
Telkens de inhoud van het archief wijzigt (als nieuwe pakketten toegevoegd of verwijderd worden) moet de archiefverantwoordelijke de hierboven beschreven eerste twee stappen hernemen.
ZIE OOK¶
apt.conf(5), apt-get(8), sources.list(5), apt-ftparchive(1), debsign(1), debsig-verify(1), gpg(1)
Voor bijkomende achtergrondinformatie kunt u het hoofdstuk raadplegen over de beveiligingsinfrastructuur van Debian, Debian Security Infrastructure[1], uit de Securing Debian Manual (ook te vinden in het pakket harden-doc), alsook de Strong Distribution HOWTO[2] door V. Alex Brennen.
BUGS¶
APT bugpagina[3]. Indien u een bug in APT wilt rapporteren, raadpleeg dan /usr/share/doc/debian/bug-reporting.txt of het reportbug(1) commando.
AUTEUR¶
APT werd geschreven door het APT-team <apt@packages.debian.org>.
AUTEURS VAN DE MAN-PAGINA¶
Deze man-pagina is gebaseerd op het werk van Javier Fernández-Sanguino Peña, Isaac Jones, Colin Walters, Florian Weimer en Michael Vogt.
VERTALING¶
De Nederlandse vertaling werd in 2015 gemaakt door Frans Spiesschaert <Frans.Spiesschaert@yucom.be>, in samenwerking met het Debian Dutch l10n Team <debian-l10n-dutch@lists.debian.org>.
Merk op dat de vertaling van dit document nog onvertaalde delen kan bevatten. Dit is intentioneel om te vermijden dat inhoud verloren zou gaan door een vertaling die achterop loopt op het origineel.
AUTEURS¶
Jason Gunthorpe
APT-team
OPMERKINGEN¶
- 1.
- Debian Security Infrastructure
- 2.
- Strong Distribution HOWTO
- 3.
- APT bugpagina
23 november 2024 | APT 2.9.30 |