「Haveged」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(カテゴリを修正)
 
(2人の利用者による、間の8版が非表示)
1行目: 1行目:
[[Category:セキュリティ]]
+
[[Category:暗号]]
 
[[en:Haveged]]
 
[[en:Haveged]]
  +
[[ru:Haveged]]
Haveged プロジェクトは、HAVEGE アルゴリズムに基づいた予測不可能の使いやすい[[乱数生成|乱数生成器]]を提供することを目的としたプロジェクトです。Haveged は主にヘッドレス・サーバ (headless server) など、Linux の random デバイスを使うにあたってエントロピーが少ない状況を改善するために考案されました [http://www.issihosts.com/haveged/]。
 
  +
[[zh-hans:Haveged]]
==利用可能なエントロピーを表示する==
 
  +
{{Related articles start}}
haveged が必要かどうかわからない(もしくは迷っている)なら、次のコマンドを実行してください:
 
  +
{{Related|Rng-tools}}
# cat /proc/sys/kernel/random/entropy_avail
 
  +
{{Related articles end}}
このコマンドは、あなたのサーバがどれくらいエントロピーを確保しているかを表します。
 
  +
[http://www.issihosts.com/haveged/ Haveged] プロジェクトは、HAVEGE アルゴリズムに基づいた予測不可能の使いやすい[[乱数生成|乱数生成器]]を提供することを目的としたプロジェクトです。Haveged は主にヘッドレスサーバーなど、Linux の random デバイスを使うにあたってエントロピーが少ない状況を改善するために考案されました。
もし、この値が低い(1000以下)なら、haveged をインストールするべきです。暗号アプリケーションは十分なエントロピーが貯まるまで動きません。
 
結果として、例えばあなたのサーバを[[en2:Software access point|ソフトウェアアクセスポイント]]として使っている場合、wlan スピードが低下するかもしれません。
 
   
  +
{{Warning|生成されるエントロピーの品質は保証されておらず、ときには疑問も投げかけられています ([https://lwn.net/Articles/525459/ LCE: Do not play dice with random numbers] や [https://security.stackexchange.com/questions/34523/is-it-appropriate-to-use-haveged-as-a-source-of-entropy-on-virtual-machines Is it appropriate to use haveged as a source of entropy on virtual machines?] を参照)。自己責任で Haveged を使用するか、あるいは {{pkg|rng-tools}} でハードウェアの乱数生成器を使うようにしてください。}}
インストール後、もう一度コマンドを実行して確認してみてください。どれくらい haveged があなたのサーバのエントロピープールを加速させたかがお分かりいただけるでしょう。
 
   
 
==インストール==
 
==インストール==
   
[[公式リポジトリ]]から {{pkg|haveged}} パッケージをインストールします。
+
{{pkg|haveged}} パッケージを[[インストール]]します。
   
  +
その後 {{ic|haveged.service}} を[[起動]]・[[有効化]]してください。
==サービス==
 
   
  +
==利用可能なエントロピーを確認==
パッケージには {{ic|haveged.service}} が付属しています。[[systemd|systemd]] を見てください。
 
  +
  +
haveged が必要かどうかわからない(もしくは迷っている)なら、次のコマンドを実行してください:
  +
# cat /proc/sys/kernel/random/entropy_avail
  +
このコマンドはあなたのサーバがどれくらいエントロピーを確保しているかを出力します。もし、出力された値が低かった (1000以下) のであれば、haveged をインストールするべきです。暗号アプリケーションは十分なエントロピーが貯まるまで動きません。結果として、あなたのサーバーを[[ソフトウェアアクセスポイント]]として使っている場合など、wlan の速度が低下するかもしれません。
  +
  +
インストール後、もう一度コマンドを実行して確認してみてください。どれくらい haveged があなたのサーバのエントロピープールを加速させたかがお分かりいただけるでしょう。
   
 
==代替==
 
==代替==
   
  +
コンピュータに搭載されているハードウェア乱数生成器が信頼できないなどの特別な理由がないかぎり、まず先に [[rng-tools]] を試して、それで不十分 (あるいはコンピュータにハードウェア乱数生成器が載っていない) なら、Haveged を使うようにしてください。
{{pkg|rng-tools}} も同じようなサービスを提供します。
 
  +
  +
== 仮想マシン ==
  +
  +
[https://security.stackexchange.com/questions/34523/is-it-appropriate-to-use-haveged-as-a-source-of-entropy-on-virtual-machines Is it appropriate to use haveged as a source of entropy on virtual machines?] で議論されているように、haveged は仮想環境で質の高いエントロピーを作れるのかどうか疑問があります。Haveged は rdtsc 命令を使用していますが、仮想マシンでこの命令が仮想化されるとエントロピーが低品質になってしまいます。ハイパーバイザの中には、rdtsc の仮想化を無効化できるものがあり、それであれば理論的には haveged は高品質なエントロピーを供給できます。
  +
  +
VMware ESXi で rdtsc 命令の仮想化を無効化するには、仮想マシンの .vmx 設定ファイルに {{ic|1=monitor_control.virtual_rdtsc = "FALSE"}} の設定を追加してください。VMware は仮想マシンでリアルタイムの正確なソースが必要な計測を行う場合にこの設定を使用することを推奨しています [https://www.vmware.com/files/pdf/Timekeeping-In-VirtualMachines.pdf]。
   
 
== 参照 ==
 
== 参照 ==

2023年5月24日 (水) 18:00時点における最新版

関連記事

Haveged プロジェクトは、HAVEGE アルゴリズムに基づいた予測不可能の使いやすい乱数生成器を提供することを目的としたプロジェクトです。Haveged は主にヘッドレスサーバーなど、Linux の random デバイスを使うにあたってエントロピーが少ない状況を改善するために考案されました。

警告: 生成されるエントロピーの品質は保証されておらず、ときには疑問も投げかけられています (LCE: Do not play dice with random numbersIs it appropriate to use haveged as a source of entropy on virtual machines? を参照)。自己責任で Haveged を使用するか、あるいは rng-tools でハードウェアの乱数生成器を使うようにしてください。

インストール

haveged パッケージをインストールします。

その後 haveged.service起動有効化してください。

利用可能なエントロピーを確認

haveged が必要かどうかわからない(もしくは迷っている)なら、次のコマンドを実行してください:

# cat /proc/sys/kernel/random/entropy_avail

このコマンドはあなたのサーバがどれくらいエントロピーを確保しているかを出力します。もし、出力された値が低かった (1000以下) のであれば、haveged をインストールするべきです。暗号アプリケーションは十分なエントロピーが貯まるまで動きません。結果として、あなたのサーバーをソフトウェアアクセスポイントとして使っている場合など、wlan の速度が低下するかもしれません。

インストール後、もう一度コマンドを実行して確認してみてください。どれくらい haveged があなたのサーバのエントロピープールを加速させたかがお分かりいただけるでしょう。

代替

コンピュータに搭載されているハードウェア乱数生成器が信頼できないなどの特別な理由がないかぎり、まず先に rng-tools を試して、それで不十分 (あるいはコンピュータにハードウェア乱数生成器が載っていない) なら、Haveged を使うようにしてください。

仮想マシン

Is it appropriate to use haveged as a source of entropy on virtual machines? で議論されているように、haveged は仮想環境で質の高いエントロピーを作れるのかどうか疑問があります。Haveged は rdtsc 命令を使用していますが、仮想マシンでこの命令が仮想化されるとエントロピーが低品質になってしまいます。ハイパーバイザの中には、rdtsc の仮想化を無効化できるものがあり、それであれば理論的には haveged は高品質なエントロピーを供給できます。

VMware ESXi で rdtsc 命令の仮想化を無効化するには、仮想マシンの .vmx 設定ファイルに monitor_control.virtual_rdtsc = "FALSE" の設定を追加してください。VMware は仮想マシンでリアルタイムの正確なソースが必要な計測を行う場合にこの設定を使用することを推奨しています [1]

参照