「Trusted Platform Module/1.2」の版間の差分
(→Usage: 翻訳) |
(翻訳) |
||
3行目: | 3行目: | ||
[[en:Trusted Platform Module/1.2]] |
[[en:Trusted Platform Module/1.2]] |
||
[[pl:Trusted Platform Module (Polski)/1.2]] |
[[pl:Trusted Platform Module (Polski)/1.2]] |
||
− | TPM 1.2 |
+ | TPM 1.2 は、IBM の "TrouSerS" TSS (TCG ソフトウェアスタック) を使用します。これは、{{AUR|trousers}} (''tcsd'') および {{AUR|tpm-tools}} (ユーザースペース) としてパッケージ化されています。すべてのソフトウェアは、tcsd デーモンを通じて TPM にアクセスします。 |
− | == |
+ | == ドライバー == |
+ | TPM ドライバーは最新のカーネルでネイティブにサポートされていますが、ロードする必要がある場合があります: |
||
− | TPM drivers are natively supported in modern kernels, but might need to be loaded: |
||
# modprobe tpm |
# modprobe tpm |
||
+ | チップセットによっては、次のいずれかをロードする必要がある場合もあります: |
||
− | Depending on your chipset, you might also need to load one of the following: |
||
# modprobe -a tpm_{atmel,infineon,nsc,tis,crb} |
# modprobe -a tpm_{atmel,infineon,nsc,tis,crb} |
||
32行目: | 32行目: | ||
* {{App|opencryptoki|Linux の PKCS#11 実装。IBM の暗号ハードウェアを使用するためのドライバーやライブラリ、テスト用のソフトウェアトークンが含まれています。|https://sourceforge.net/projects/opencryptoki|{{AUR|opencryptoki}}}} |
* {{App|opencryptoki|Linux の PKCS#11 実装。IBM の暗号ハードウェアを使用するためのドライバーやライブラリ、テスト用のソフトウェアトークンが含まれています。|https://sourceforge.net/projects/opencryptoki|{{AUR|opencryptoki}}}} |
||
− | == |
+ | == 基本 == |
+ | まずは基本的なバージョン情報を取得します: |
||
− | Start off by getting basic version info: |
||
$ tpm_version |
$ tpm_version |
||
+ | そしてセルフテストを実行します: |
||
− | and running a selftest: |
||
{{hc|$ tpm_selftest -l info| |
{{hc|$ tpm_selftest -l info| |
||
45行目: | 45行目: | ||
}} |
}} |
||
− | == |
+ | == SSH キーの保護 == |
+ | TPM を使用してキーを保護するにはいくつかの方法がありますが、ここでは {{AUR|simple-tpm-pk11-git}} に基づく簡単な方法を示します。 |
||
− | There are several methods to use TPM to secure keys, but here we show a simple method based on {{AUR|simple-tpm-pk11-git}}. |
||
+ | まず、新しいディレクトリを作成し、キーを生成します: |
||
− | First, create a new directory and generate the key: |
||
$ mkdir ~/.simple-tpm-pk11 |
$ mkdir ~/.simple-tpm-pk11 |
||
$ stpm-keygen -o ~/.simple-tpm-pk11/my.key |
$ stpm-keygen -o ~/.simple-tpm-pk11/my.key |
||
+ | 設定でキーを指すようにします: |
||
− | Point the configuration to the key: |
||
{{hc|~/.simple-tpm-pk11/config| |
{{hc|~/.simple-tpm-pk11/config| |
||
60行目: | 60行目: | ||
}} |
}} |
||
+ | 次に、適切な PKCS11 プロバイダーを使用するように SSH を設定します: |
||
− | Now configure SSH to use the right PKCS11 provider: |
||
{{hc|~/.ssh/config| |
{{hc|~/.ssh/config| |
||
67行目: | 67行目: | ||
}} |
}} |
||
+ | PKCS11 プロバイダーを使用してキーを生成できるようになりました: |
||
− | It is now possible to generate keys with the PKCS11 provider: |
||
$ ssh-keygen -D /usr/lib/libsimple-tpm-pk11.so |
$ ssh-keygen -D /usr/lib/libsimple-tpm-pk11.so |
||
+ | {{Note|現在、この方法では複数のキーを生成して使用することはできません。}} |
||
− | {{Note|This method currently does not allow for multiple keys to be generated and used.}} |
||
+ | == トラブルシューティング == |
||
− | == Troubleshooting == |
||
− | === tcsd.service |
+ | === tcsd.service の開始に失敗しました === |
− | + | {{AUR|trousers}} をインストールした後、権限の問題により、{{ic|tcsd.service}} サービスが正しく開始されない可能性があります。[https://bugs.launchpad.net/ubuntu/+source/trousers/+bug/963587/comments/3] この問題は、再起動するか、{{AUR|trousers}} パッケージに含まれる [[udev]] ルールをトリガーすることで修正できます。 |
|
# udevadm control --reload-rules |
# udevadm control --reload-rules |
||
# udevadm trigger |
# udevadm trigger |
||
− | == |
+ | == 参照 == |
− | * [https://lwn.net/Articles/674751/ |
+ | * [https://lwn.net/Articles/674751/ TPM によるシステムの保護] |
− | * [https://www.thinkwiki.org/wiki/Embedded_Security_Subsystem |
+ | * [https://www.thinkwiki.org/wiki/Embedded_Security_Subsystem Thinkwiki の組み込みセキュリティサブシステム] |
− | * [https://www.cs.unh.edu/~it666/reading_list/Hardware/tpm_fundamentals.pdf TPM |
+ | * [https://www.cs.unh.edu/~it666/reading_list/Hardware/tpm_fundamentals.pdf TPM の基礎 (PDF)] |
− | * [https://www.lorier.net/docs/tpm |
+ | * [https://www.lorier.net/docs/tpm TPM の使用法] |
2024年1月14日 (日) 00:36時点における版
TPM 1.2 は、IBM の "TrouSerS" TSS (TCG ソフトウェアスタック) を使用します。これは、trousersAUR (tcsd) および tpm-toolsAUR (ユーザースペース) としてパッケージ化されています。すべてのソフトウェアは、tcsd デーモンを通じて TPM にアクセスします。
ドライバー
TPM ドライバーは最新のカーネルでネイティブにサポートされていますが、ロードする必要がある場合があります:
# modprobe tpm
チップセットによっては、次のいずれかをロードする必要がある場合もあります:
# modprobe -a tpm_{atmel,infineon,nsc,tis,crb}
使い方
TPM 1.2 は tcsd
によって管理します。Trusted Computing リソースを管理するユーザー空間のデーモンで、(TSS の仕様によれば) TPM デバイスドライバーの唯一のポータルです。tcsd
は AUR パッケージの trousersAUR に含まれています。IBM によって開発・リリースされており、/etc/tcsd.conf
で設定することが可能です。
tcsd を起動して出力を監視するには、次を実行:
# tcsd -f
もしくは tcsd.service
を 起動/有効化 してください。
tcsd
を実行したら、tpm-toolsAUR もインストールすると良いでしょう。TPM を管理するためのコマンドラインツールが多数入っています。
他の便利なツール:
- tpmmanager — tpm-tools の Qt フロントエンド。
- opencryptoki — Linux の PKCS#11 実装。IBM の暗号ハードウェアを使用するためのドライバーやライブラリ、テスト用のソフトウェアトークンが含まれています。
基本
まずは基本的なバージョン情報を取得します:
$ tpm_version
そしてセルフテストを実行します:
$ tpm_selftest -l info
TPM Test Results: 00000000 ... tpm_selftest succeeded
SSH キーの保護
TPM を使用してキーを保護するにはいくつかの方法がありますが、ここでは simple-tpm-pk11-gitAUR に基づく簡単な方法を示します。
まず、新しいディレクトリを作成し、キーを生成します:
$ mkdir ~/.simple-tpm-pk11 $ stpm-keygen -o ~/.simple-tpm-pk11/my.key
設定でキーを指すようにします:
~/.simple-tpm-pk11/config
key my.key
次に、適切な PKCS11 プロバイダーを使用するように SSH を設定します:
~/.ssh/config
Host * PKCS11Provider /usr/lib/libsimple-tpm-pk11.so
PKCS11 プロバイダーを使用してキーを生成できるようになりました:
$ ssh-keygen -D /usr/lib/libsimple-tpm-pk11.so
トラブルシューティング
tcsd.service の開始に失敗しました
trousersAUR をインストールした後、権限の問題により、tcsd.service
サービスが正しく開始されない可能性があります。[1] この問題は、再起動するか、trousersAUR パッケージに含まれる udev ルールをトリガーすることで修正できます。
# udevadm control --reload-rules # udevadm trigger