APT-SECURE(8)

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

説明

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

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

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

信頼済アーカイブ

apt アーカイブからエンドユーザまでの信頼の輪は、いくつかのステップで構成されています。apt-secure は、この輪の最後のステップで、アーカイブを信頼することは、パッケージに悪意のあるコードが含まれていないと信頼するわけではありませんが、アーカイブメンテナを信頼するということになります。これは、アーカイブの完全性が正しいことを保証するのは、アーカイブメンテナの責任だということです。

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

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

アップロードされたパッケージが検証されてアーカイブに格納されると、メンテナの署名をはがし、パッケージの MD5 sum を計算して、Packages ファイルに格納します。その後、全パッケージファイルの MD5 sum を計算して、Release ファイルに格納します。Release ファイルは、(毎年作成される) アーカイブキーで署名され、FTP サーバで配布されます。このキーも Debian キーリングに含まれます。

エンドユーザは誰でも、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 でキーの追加・削除が行えます。

In order to add a new key you need to first download it (you should make sure you are using a trusted communication channel when retrieving it), add it with apt-key and then run apt-get update so that apt can download and verify the InRelease or Release.gpg files from the archives you have configured.

アーカイブの設定

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

    • 最上位 Release ファイルの作成。既にこれが存在しているのでなければ、apt-ftparchive release (apt-utils で提供) を実行して作成してください。

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

    • キーの指紋を配布します。これにより、アーカイブ内のファイル認証に、どのキーをインポートする必要があるかを、ユーザに知らせることになります。

アーカイブの内容に変化がある場合 (新しいパッケージの追加や削除)、アーカイブメンテナは前述の最初の 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 チーム <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-2010), Debian JP Documentation ML <debian-doc@debian.or.jp>

この翻訳文書には未訳部分が含まれていることに注意してください。 翻訳がオリジナルに追従できていない場合、 内容を失わないようにこのようにしています。

AUTHOR

Jason Gunthorpe

COPYRIGHT
Copyright © 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