秘密鍵からパスワードを削除し、特定のファイルモードを設定します。

秘密鍵からパスワードを削除し、特定のファイルモードを設定します。

秘密鍵にパスワードを次のように設定すると、

openssl rsa -des -in insecure.key -out secure.key

以下のようにパスワードを削除しました。

openssl rsa -in secure.key -out insecure.key

これで、私の秘密鍵(insecure.key)の最終ファイルモードは644です。

ファイルモード600(またはその他)でinsecure.keyを生成するようにopensslにどのように指示しますか?

後で単にファイルをchmodすることができることを知っていますが、接続が切断された場合はどうなりますか?その後、ファイルシステムには誰でも読める秘密鍵があります。

答え1

変換する前にumaskを設定してみることができます

umask 077; openssl rsa -in secure.key -out insecure.key

編集:現在のシェル環境の他のファイルに影響を与えないようにするには、umaskサブシェルで次の設定を実行します。

( umask 077; openssl rsa -in secure.key -out insecure.key )

答え2

1つの方法は、まず空のinsecure.keyファイルを作成してchmodすることです。

touch insecure.key
chmod 600 insecure.key

これにより、ディレクトリは次のようになります。

total 28
drwxr-xr-x  2 flyte flyte 4096 Apr 17 11:44 .
drwxr-xr-x 12 flyte flyte 4096 Apr 17 11:44 ..
-rw-------  1 flyte flyte    0 Apr 17 11:44 insecure.key
-rw-------  1 flyte flyte 1746 Apr 17 11:42 secure.key

その後、パスワードを削除してください。

openssl rsa -in secure.key -out insecure.key

これにより、ディレクトリは次のようになります。

total 32
drwxr-xr-x  2 flyte flyte 4096 Apr 17 11:44 .
drwxr-xr-x 12 flyte flyte 4096 Apr 17 11:44 ..
-rw-------  1 flyte flyte 1679 Apr 17 11:45 insecure.key
-rw-------  1 flyte flyte 1746 Apr 17 11:42 secure.key

ただし、これは少し面倒で、opensslにこの操作を一度に実行できるパラメータがある場合は良いでしょう。

答え3

単純だがより簡単な解決策は、ディレクトリをchmod 700とその中で動作することです。

関連情報