APT-SECURE(8)

NAME
apt-secure - APT アーカイブ認証サポート

説明

バージョン 0.6 より、apt 全アーカイブに対する Release ファイルの署名チェックコードが含まれています。Release ファイル署名キーにアクセスできない人が、アーカイブのパッケージの変更が確実にできないようにします。

パッケージに署名されなかったり、apt が知らないキーで署名されていた場合、アーカイブから来たパッケージは、信頼されていないと見なし、インストールの際に重要な警告が表示されます。 apt-get は、現在未署名のパッケージに対して警告するだけですが、将来のリリースでは全ソースに対し、パッケージダウンロード前に強制的に検証される可能性があります。

apt-get(8), aptitude(8), synaptic(8) といったパッケージフロントエンドは、この新認証機能をサポートしています。

信頼済アーカイブ

The chain of trust from an apt archive to the end user is made up of different steps. apt-secure is the last step in this chain, trusting an archive does not mean that the packages that you trust it do not contain malicious code but means that you trust the archive maintainer. It's the archive maintainer responsibility to ensure that the archive integrity is correct.

apt-secure はパッケージレベルの署名検証は行いません。そのようなツールが必要な場合は、debsig-verify や debsign (debsig-verify パッケージと devscripts パッケージでそれぞれ提供されています) を確認してください。

Debian における信頼の輪は、新しいパッケージやパッケージの新しいバージョンを、メンテナが Debian アーカイブにアップロードすることで始まります。これは、Debian メンテナキーリング (debian-keyring パッケージにあります) にあるメンテナのキーで署名しなければ、アップロードできないということです。メンテナのキーは、キーの所有者のアイデンティティを確保するため、以下のような事前に確立した手段で、他のメンテナに署名されています。

Once the uploaded package is verified and included in the archive, the maintainer signature is stripped off, an MD5 sum of the package is computed and put in the Packages file. The MD5 sum of all of the packages files are then computed and put into the Release file. The Release file is then signed by the archive key (which is created once a year) and distributed through the FTP server. This key is also on the Debian keyring.

エンドユーザは誰でも、Release ファイルの署名をチェックし、パッケージの MD5 sum を抽出して、ダウンロードしたパッケージの MD5 sum と比較できます。バージョン 0.6 以前では、ダウンロードした Debian パッケージの MD5 sum しか、チェックしていませんでした。現在では、MD5 sum と Release ファイルの署名の両方でチェックします。

以上は、パッケージごとの署名チェックとは違うことに注意してください。以下のように考えられる 2 種類の攻撃を防ぐよう設計されています。

    • ネットワーク中間者攻撃 署名をチェックしないと、悪意あるエージェントがパッケージダウンロードプロセスに割り込んだり、ネットワーク構成要素 (ルータ、スイッチなど) の制御や、悪漢サーバへのネットワークトラフィックのリダイレクトなど (arp スプーフィング攻撃や DNS スプーフィング攻撃) で、悪意あるソフトウェアを掴まされたりします。

    • ミラーネットワーク感染。署名をチェックしないと、悪意あるエージェントがミラーホストに感染し、このホストからダウンロードしたユーザすべてに、悪意あるソフトウェアが伝播するようにファイルを変更できます。

しかしこれは、(パッケージに署名する) Debian マスターサーバ自体の侵害や、Release ファイルに署名するのに使用したキーの漏洩を防げません。いずれにせよ、この機構はパッケージごとの署名を補完することができます。

ユーザの設定

apt-key は、apt が使用するキーリストを管理するプログラムです。このリリースのインストールでは、Debian パッケージリポジトリで使用する、キーで署名するデフォルトの Debian アーカイブを提供しますが、apt-key でキーの追加・削除が行えます。

新しいキーを追加するためには、まずキーをダウンロードする必要があります。(取得する際には、信頼できる通信チャネルを使用するよう、特に留意してください) 取得したキーを、apt-key で追加し、apt-get update を実行してください。以上により、apt は指定したアーカイブから、Release.gpg ファイルをダウンロード・検証できるようになります。

アーカイブの設定

あなたがメンテナンスしているアーカイブで、アーカイブ署名を提供したい場合、以下のようにしてください。

    • Create a toplevel Release file, if it does not exist already. You can do this by running apt-ftparchive release (provided in apt-utils).

    • Sign it. You can do this by running gpg -abs -o Release.gpg Release.

    • Publish the key fingerprint, that way your users will know what key they need to import in order to authenticate the files in the archive.

アーカイブの内容に変化がある場合 (新しいパッケージの追加や削除)、アーカイブメンテナは前述の最初の 1, 2 ステップに従わなければなりません。

関連項目

apt.conf(5), apt-get(8), sources.list(5), apt-key(8), apt-ftparchive(1), debsign(1) debsig-verify(1), gpg(1)

詳細な背景情報を検証するのなら、Securing Debian Manual (harden-doc パッケージにも収録) の Debian Security Infrastructure[1] 章や、V. Alex Brennen による Strong Distribution HOWTO[2] をご覧ください。

バグ

APT バグページ[3] をご覧ください。 APT のバグを報告する場合は、 /usr/share/doc/debian/bug-reporting.txt や reportbug(1) コマンドをご覧ください。

著者

APT は APT team apt@packages.debian.org によって書かれました。

マニュアルページ作者

このマニュアルページは Javier Fernández-Sanguino Peña, Isaac Jones, Colin Walters, Florian Weimer, Michael Vogt の作業を元にしています。

訳者

倉澤 望 nabetaro@debian.or.jp (2003-2006,2009), Debian JP Documentation ML debian-doc@debian.or.jp

AUTHOR

Jason Gunthorpe

COPYRIGHT
CopyrightCopyright © 1998-2001 Jason Gunthorpe

NOTES

1.  Debian Security Infrastructure
    http://www.debian.org/doc/manuals/securing-debian-howto/ch7.en.html

2.  Strong Distribution HOWTO
    http://www.cryptnet.net/fdp/crypto/strong_distro.html

3.  APT バグページ
    http://bugs.debian.org/src:apt