「Haveged」の版間の差分
編集の要約なし |
Kusanaginoturugi (トーク | 投稿記録) カテゴリを修正 |
||
| (2人の利用者による、間の8版が非表示) | |||
| 1行目: | 1行目: | ||
[[Category: |
[[Category:暗号]] |
||
[[en:Haveged]] |
[[en:Haveged]] |
||
[[ru:Haveged]] |
|||
| ⚫ | |||
[[zh-hans:Haveged]] |
|||
| ⚫ | |||
{{Related articles start}} |
|||
| ⚫ | |||
{{Related|Rng-tools}} |
|||
| ⚫ | |||
{{Related articles end}} |
|||
このコマンドは、あなたのサーバがどれくらいエントロピーを確保しているかを表します。 |
|||
| ⚫ | |||
もし、この値が低い(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}} でハードウェアの乱数生成器を使うようにしてください。}} |
|||
| ⚫ | |||
==インストール== |
==インストール== |
||
{{pkg|haveged}} パッケージを[[インストール]]します。 |
|||
その後 {{ic|haveged.service}} を[[起動]]・[[有効化]]してください。 |
|||
==サービス== |
|||
| ⚫ | |||
パッケージには {{ic|haveged.service}} が付属しています。[[systemd|systemd]] を見てください。 |
|||
| ⚫ | |||
| ⚫ | |||
このコマンドはあなたのサーバがどれくらいエントロピーを確保しているかを出力します。もし、出力された値が低かった (1000以下) のであれば、haveged をインストールするべきです。暗号アプリケーションは十分なエントロピーが貯まるまで動きません。結果として、あなたのサーバーを[[ソフトウェアアクセスポイント]]として使っている場合など、wlan の速度が低下するかもしれません。 |
|||
| ⚫ | |||
==代替== |
==代替== |
||
コンピュータに搭載されているハードウェア乱数生成器が信頼できないなどの特別な理由がないかぎり、まず先に [[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 デバイスを使うにあたってエントロピーが少ない状況を改善するために考案されました。
インストール
その後 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]。