6.5. Проверка подлинности пакета
Безопасность очень важна для администраторов Falcot Corp. Соответственно, они должны быть уверены, что только они устанавливают пакеты, которые гарантировано приходят от Debian без искажения по пути. Компьютерный взломщик может попытаться добавить вредоносный коды тем или иным способом в легальный пакет. Такой пакет, если он установлен, может делать что угодно, что придумал взломщик, включая - для примера - раскрытие паролей или конфиденциальной информации. Чтобы обойти этот риск, Debian поддерживает помехоустойчивые подписи для гарантии — что в момент установки — этот пакет действительно пришел от его официального разработчика и не был модифицирован третьей стороной (то есть посторонними).
Печать работает в паре с изменяемыми криптографическими хэшами и подписями. Подписанный файл Release
предоставляется зеркалами Debian. А файл Packages
содержит перечень пакетов (включая их сжатые в архивы формы - файлы Packages.gz
и Packages.xz
, и инкрементные версии), вместе с их MD5, SHA1 and SHA256 хэша-значениями, которые гарантируют что файлы не были искажены. Те файлы Packages
содержат перечень пакетов Debian, доступных на зеркалах, вместе с их хэшами. Эти хэши, в свою очередь, гарантируют что в содержимое самих пакетов не вносились какие-либо изменения.
Доверенные ключи управляются с командой apt-key
, которая находится в пакете apt. Эта программа поддерживают кольцо (связку) для GnuPG - открытых ключей, которые используются для проверки подписей в файлах Release.gpg
, доступных на зеркалах. Это же может быть использовано для добавления новых ключей вручную (когда неофициальное зеркало вам нужно). Однако обычно, только официальный Debian - ключ бывает нужен. Те ключи автоматически сохраняются по мере увеличения даты их создания пакетом debian-archive-keyring (который помещает соответствующие ключи в /etc/apt/trusted.gpg.d
). Однако, первичная установка этого особенного пакета нуждается во внимании: даже если данный пакет был подписан подобно другим пакетам, подпись не может быть проверена со стороны. Поэтому предусмотрительные (осторожные) администраторы должны вначале проверить подлинность импортируемых ключей (fingerprint - опция команды apt-get) до того, прежде чем доверить им установку новых пакетов:
# apt-key fingerprint
/etc/apt/trusted.gpg.d/debian-archive-jessie-automatic.gpg
----------------------------------------------------------
pub 4096R/2B90D010 2014-11-21 [expires: 2022-11-19]
Key fingerprint = 126C 0D24 BD8A 2942 CC7D F8AC 7638 D044 2B90 D010
uid Debian Archive Automatic Signing Key (8/jessie) <ftpmaster@debian.org>
/etc/apt/trusted.gpg.d/debian-archive-jessie-security-automatic.gpg
-------------------------------------------------------------------
pub 4096R/C857C906 2014-11-21 [expires: 2022-11-19]
Key fingerprint = D211 6914 1CEC D440 F2EB 8DDA 9D6D 8F6B C857 C906
uid Debian Security Archive Automatic Signing Key (8/jessie) <ftpmaster@debian.org>
/etc/apt/trusted.gpg.d/debian-archive-jessie-stable.gpg
-------------------------------------------------------
pub 4096R/518E17E1 2013-08-17 [expires: 2021-08-15]
Key fingerprint = 75DD C3C4 A499 F1A1 8CB5 F3C8 CBF8 D6FD 518E 17E1
uid Jessie Stable Release Key <debian-release@lists.debian.org>
/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>
Как только подходящий ключ будет найден на связке ключей, APT будет проверять подписи до проведения любой рисковой операции. Таким же образом и графические и псевдо-графические оболочки будут отображать предупреждения в случае, если не может быть выполнена идентификация запрашиваемого к устанавке пакета.