web-dev-qa-db-ja.com

秘密鍵から公開鍵を生成する

秘密鍵から公開鍵を生成できますか?

デフォルトでは、ユーザーのSSHキーはそのユーザーの~/.sshディレクトリに保存されます。内容をリストすることで、秘密鍵がそのディレクトリにあるかどうかを確認できます。

$ cd ~/.ssh
$ ls
authorized_keys2  id_dsa       known_hosts
config            id_dsa.pub

秘密鍵は通常、id_dsaまたはid_rsaのようなものです。秘密鍵のみで公開鍵部分を再生成するには、-yスイッチをssh-keygenアプリケーションに切り替え、対応する.pubファイルに出力を書き込みます。

ssh-keygen -f ~/.ssh/id_rsa -y > ~/.ssh/id_rsa.pub

「man ssh-keygen」の説明から:

 -y      This option will read a private OpenSSH format file and print an
         OpenSSH public key to stdout.

秘密鍵がデジタル署名アルゴリズム(DSA)であるか、Rivest Shamir Adleman(RSA)であるかわからない場合は、ssh-keygenアプリケーションを-fスイッチと共に使用する必要があります。新しい公開鍵の名前が秘密鍵の名前と一致していることを確認してください。

7
Mavaddat Javid