サーバーのキーを生成しようとしています。
gpg --gen-key
多くのランダムなバイトを生成する必要があります。素数生成中に他のアクション(キーボードでの入力、マウスの移動、ディスクの利用)を実行することをお勧めします。これにより、乱数ジェネレーターが十分なエントロピーを獲得するチャンスが高まります。
そこにぶら下がっています。
別のエラーがあります:
`/root/.gnupg/S.gpg-agent 'に接続できません:そのようなファイルやディレクトリはありません
それは後に消えるようです:
gpg-agent --daemon
GPG_AGENT_INFO =/tmp/gpg-4c5hyT/S.gpg-agent:1397:1; GPG_AGENT_INFOをエクスポートします。
#GPG_AGENT_INFO=/tmp/gpg-4c5hyT/S.gpg-agent:1397:1; export GPG_AGENT_INFO;
gpg --gen-key
...
しかし、繰り返しますが、「...十分なエントロピーを得る」でハングします。
「++++++++++++++++++++++++++++++++++++++++++」はありませんキーが生成されるので、フォーラムの投稿からは期待されるはずです。
パッケージを再インストールしてみましたが、どうやらすべてがgpgに依存しているようです。
Centos 6でもこれに問題がある他の人たちを読んだことがあります(centos 5は正常に動作します)。
/var/log/*
に注目すべきものはありません。
ここからどこへ行くべきかについてのアイデアはありますか?
ありがとう。
gpg --gen-key
コマンドがこのようにハングしたら、別のシェルにログインして次のコマンドを実行します。
dd if=/dev/sda of=/dev/zero
(/dev/zero
への書き込みは何もしないため、このコマンドは基本的にハードドライブから読み取り、出力を破棄します。)
数秒/分後、鍵生成コマンドが完了するはずです。
より信頼性の高い解決策として、乱数ジェネレータ関連のユーティリティをインストールできます。これにより、常に十分な乱数バイトが確保されます。
yum install rng-tools
次に/etc/sysconfig/rngd
を編集してEXTRAOPTIONS="-r /dev/random"
を追加します
サービスを開始する
service rngd start
Voilaとあなたはその後幸せに暮らしています:)
以前に与えられた両方のコメントは完全に元気です。しかし、ここは私の2セントです。
RHEL/centos 6とエントロピーの問題は、それらがティックレスカーネルであることです。したがって、これらのカーネル自体では、十分なエントロピーを生成しません。キーボードを接続したり、マウスを動かしたり、前述のようにddを使用したりする必要があります。
rngdデーモンは素晴らしく、ほとんどの商用エンティティが使用しています。
ただし、私が見た最善のアプローチは、専用TPMデバイスの使用です。それらは非常に高価な小さなハードウェアです。それらを置くと、rngdはハードウェアソースからのランダムな真のエントロピーを利用します。私の知る限り、富士通には優れたTPMデバイスがあります。
ええ、これら3つの方法はエントロピーの部分をほぼカバーしています。
https://Gist.github.com/franciscocpg/1575d286548034113884c3185ca88681
Sshセッションを開く_Sudo apt-get install rng-tools
_別のSSHウィンドウで_gpg --gen--key
_を開き、最初のSSHセッションに戻って_Sudo rngd -r /dev/urandom
_を実行します。gpgがキーを生成するまで実行します。
次に、rngdSudo kill -9 $(pidof rngd)
を強制終了できます
他の応答をねじりますが、ルートではなく少なくとも1つのライナーです。
((find / | xargs file) &> /dev/null &); gpg2 --gen-key --batch --passphrase-file output-key.txt key-gen-options.txt
Key-gen-optionsには
Key-Type: 1
Key-Length: 2048
Subkey-Type: 1
Subkey-Length: 2048
Name-Real: myuser
Name-Email: [email protected]
Expire-Date: 0
Output-key.txtには、スーパーシークレットキーが含まれています。
EXTRAOPTIONS = "-r/dev/random"の代わりにEXTRAOPTIONS = "-r/dev/urandom"が機能しました
私がやった方法:
pacman -S community/rng-tools
vim /etc/conf.d/rngd
たす RNGD_OPTS="-r /dev/urandom"
systemctl enable --now rngd
gpg-agent --daemon
gpg --full-gen-key
$GNUPGHOME
は、カスタムディレクトリを指すように設定されています。
私はすべてのソリューションを試してみましたが、haveged
は他のユーザーが機能しない場合でも(特にユーザー入力やアクティビティが少ないヘッドレスサーバーで)最適に機能することがわかりました。
yum install haveged
apt install haveged
/dev/random
をエントロピーで一杯に保つhaveged
デーモンサービスを開始します。 --key-gen
は1分以内に完了します。
cat /dev/random
を実行すると確認できます。通常、エントロピーがすぐになくなり、一時停止します。そのため、--key-gen
がハングします。ただし、haveged
をインストールした後、cat /dev/random
は継続的に出力を提供します。