Product SiteDocumentation Site

6.6. Kiểm tra Tính xác thực Gói

Vấn đề an ninh rất quan trọng đối với các quản trị viên của Falcot Corp. Theo đó, họ cần đảm bảo rằng họ chỉ cài đặt các gói được bảo đảm đến từ Debian mà không bị giả mạo trên đường đi. Một máy tính cracker có thể cố gắng thêm mã nguy hiểm vào một gói hợp pháp khác. Một gói như vậy, nếu được cài đặt, có thể làm bất cứ điều gì mà nó được thiết kế để làm, bao gồm cả việc tiết lộ mật khẩu hoặc thông tin bí mật. Để phá vỡ nguy cơ này, Debian cung cấp một con dấu chứng minh giả mạo để đảm bảo - khi cài đặt - một gói thực sự đến từ người quản lý chính thức và không bị một bên thứ ba sửa đổi.
The seal works with a chain of cryptographic hashes and a signature and is explained in detail in apt-secure(8). Starting with Debian 10 Buster the signed file is the InRelease file, provided by the Debian mirrors. There is also a legacy file called Release. Both contain a list of the Packages files (including their compressed forms, Packages.gz and Packages.xz, and the incremental versions), along with their SHA256 hashes, which ensures that the files haven't been tampered with. These Packages files contain a list of the Debian packages available on the mirror, along with their hashes, which ensures in turn that the contents of the packages themselves haven't been altered either. The difference between InRelease and Release is that the former is cryptographically signed in-line, whereas the latter provides a detached signature in the form of the file Release.gpg.
APT needs a set of trusted GnuPG public keys to verify signatures in the InRelease and Release.gpg files available on the mirrors. It gets them from files in /etc/apt/trusted.gpg.d/ and from the /etc/apt/trusted.gpg keyring (managed by the apt-key command). The official Debian keys are provided and kept up-to-date by the debian-archive-keyring package which puts them in /etc/apt/trusted.gpg.d/:
# ls /etc/apt/trusted.gpg.d/
debian-archive-bullseye-automatic.gpg
debian-archive-bullseye-security-automatic.gpg
debian-archive-bullseye-stable.gpg
debian-archive-buster-automatic.gpg
debian-archive-buster-security-automatic.gpg
debian-archive-buster-stable.gpg
debian-archive-stretch-automatic.gpg
debian-archive-stretch-security-automatic.gpg
debian-archive-stretch-stable.gpg
Once the appropriate keys are in the keyring, APT will check the signatures before any risky operation, so that frontends will display a warning if asked to install a package whose authenticity can't be ascertained.
Note, that binary packages are usually not signed. The integrity of a package can only be confirmed by checking its hashsums against a trusted (and possibly signed) hashsum source.