MacでSSH-Keygenを使用してSSHキーを生成する方法

厳格なオンラインセキュリティは私たちの多くにとって必須となっており、悪意のあるオペレーターが賢くなるにつれて、ツールと保護はそれに追いつくために強化されなければなりません。 Secure Shell(SSH)は、公開鍵と秘密鍵をペアにしてデータを安全に送信できるようにする暗号化プロトコルです。

サーバーへのリモートアクセスやGitホスティングプラットフォームへのセキュリティの追加など、さまざまな状況で、独自のキーを生成する必要がある場合があります。アクセスクレデンシャルはオンラインセキュリティの重要な部分になり、macOSとターミナルアプリによりSSHキーの生成が簡単になりました。プロセスを見てみましょう。

SSH-Keygenを使用してSSHキーを生成する方法

ssh-keygenコマンドを使用すると、完全ですぐに使用できるSSHキーを生成するために必要なすべての機能を実行できます。作成時に、使用するアルゴリズム、ビット単位の長さ、およびキーの他の機能を指定できます。これらの概念の詳細については、このガイドの後のセクションを参照してください。

関連: SSHとは何ですか?それは何の略ですか?

macOSでSSHキーを生成する手順は次のとおりです。

[アプリケーション]> [ユーティリティ]から、またはSpotlight検索を実行してターミナルを起動します。必要なパラメーターを指定してssh-keygenコマンドを入力します。

バリエーションについては後で説明しますが、一般的なssh-keygenコマンドの例を次に示します。

 ssh-keygen -t ecdsa -b 521

目的のアルゴリズムは-tコマンドに従い、必要なキーの長さは-b入力の後にあります。 -bを除外すると、ssh-keygenは、選択したキータイプのデフォルトのビット数を使用します。適切なサイズのキーを使用した強力な暗号化アルゴリズムは、データを安全に保つのに最も効果的です。

Enterキーを押して、生成の進行を開始します。もう一度Enterキーを押して、デフォルトのファイルの場所を受け入れます。必要に応じてこれを変更できますが、通常は、提案されたフォルダーにキーを保持することをお勧めします。

プロンプトが表示されたらパスフレーズを入力します。これは空白のままにすることもできますが、SSHキーをパスワードで保護することを常にお勧めします。他の誰もあなたのデバイスにアクセスするべきではない場合でも、セキュリティの追加レイヤーはいつでも歓迎です。

パスフレーズを再入力してプロセスを完了し、公開鍵と秘密鍵を生成します。

macOSは両方のキーを〜/ .ssh /ディレクトリに保存します。 1つのファイルには公開SSHキーが含まれ、別のファイルにはプライベートバージョンが含まれているため、誰とも共有しないでください。

ターミナルが気に入らない場合は、にもいくつかのMac SSHクライアントが存在するため、ニーズに最適なオプションを選択できます。

SSHキーをコピーしてGitホスティングプラットフォームやその他の場所に追加する

生成プロセスが完了したら、ターミナルを使用して公開鍵をコピーして配布できます。また、作成時に使用されるファイル名にも注意する必要があります。提供されている例では、macOSは公開SSHキーをid_ecdsa.pubファイルに保存しているため、これをターゲットにする必要があります。

公開SSHキーをクリップボードにコピーするには、次の手順に従います。

  1. ターミナルを起動します。
  2. 正しいファイルパスを指定してpbcopy <コマンドを入力します。次に例を示します。
     pbcopy <〜/ .ssh / id_ecdsa.pub
  3. Enterキーを押すと、公開鍵がクリップボードにコピーされます。

ここから、SSHキーを必要な場所に自由に貼り付けることができます。 .pubファイルに保存されている公開鍵のみを配布する必要があることを忘れないでください。秘密鍵はあなただけが使用するためのものです。

さまざまなSSHキーのタイプとサイズ

ssh-keygenコマンドを使用すると、さまざまなアルゴリズムを使用するいくつかのキータイプとサイズを生成できます。まず、アクセスクレデンシャルを作成する前に、ホスティングプラットフォーム、サービス、または他の関係者が推奨するバリエーションを確認する必要があります。

ここでは、最も一般的なSSHキーの種類をリストし、それぞれの特徴を説明します。

  • RSA:広くサポートされているアルゴリズムであるRSAは、多くの状況で強力な選択肢です。長さは強さであり、2048ビットまたは4096ビットのキーを作成する必要があります。前者で十分であり、後者が理想的です。
  • ECDSA:新しいアルゴリズムであるECDSAは、RSAと同様のレベルのセキュリティを提供しますが、キーが短いため、パフォーマンスが向上します。サポートされているキーサイズは、256、384、および521ビットです。
  • Ed25519:新しいアルゴリズムであるEd25519は、以前のキータイプのセキュリティとパフォーマンスを改善します。 Apple自体は、特定のデバイス間の通信中など、場合によってはこの認証方法を使用します。キーの長さはわずか256ビットですが、高レベルのセキュリティを提供します。

関連:一般的な暗号化の種類と、独自に作成すべきでない理由

SSHキーを生成するときは、 -tコマンドの後に目的のアルゴリズムタイプを入力していることを確認してください。

MacでSSHキーを作成するときに知っておくと便利なコマンド

ssh-keygenコマンドの基本的なコンポーネントについて説明しました。ただし、場合によっては、他の機能を実行したいことがあります。ここでは、いくつかの関連するコマンドとその使用法をリストします。

  • -t:このコマンドを使用して、使用するアルゴリズムを入力します。 RSA、ECDSA、およびEd25519は、一般的で実行可能な選択肢です。
  • -b:使用するビット数を入力して鍵長を指定します。 -bコマンドを入力する前に、いくつかの制限が適用されるため、選択したアルゴリズムの要件を常に確認してください。
  • -p :-pコマンドを使用して、キーのパスフレーズを変更できます。 ssh-keygen-pを含めるだけで、ターミナルがファイルの場所を要求します。関連するキーのパスを入力し、プロンプトが表示されたら新しいパスフレーズを作成します。
  • -f: -fコマンドを使用して、 ssh-keygenを特定のファイルの場所に転送します。
  • -C: -Cコマンドは、キーにコメントを追加します。これは、便利なラベル付け方法です。

さらに、 lsコマンドは、デフォルトディレクトリに保存されているすべてのSSHキーを一覧表示します。

 ls -al〜 / .ssh 

ローカルSSHキーを削除するには、ターミナルでrmコマンドを使用できます。次に例を示します。

 rm〜 / .ssh / id_ecdsa

rm〜 / .ssh / id_ecdsa.pub

最後に、コマンドの完全なリストにアクセスするために、次の入力により、使用可能なすべてのオプションが追加情報とともに表示されます。

 man ssh-keygen 

macOSはSSHキーの生成を容易にします

SSHキーの生成はmacOSでは簡単です。ターミナルとssh-keygenツールは、アクセスクレデンシャルの設計、作成、配布に必要なすべての機能を実行できるため、追加のソフトウェアは必要ありません。正しいコマンドを入力するだけで、残りはssh-keygenが行います。

使用される一般的なアルゴリズムはRSA、ECDSA、およびEd25519であり、各タイプには独自の仕様と使用可能なキー長があります。作成時に、これらの詳細を指定し、適切なコマンドを使用して他の指示を入力できます。その後、引き続きターミナルを使用して、保存されているキーをコピー、変更、および削除できます。

楽しみであろうと機能であろうと、独自のアクセスクレデンシャルを生成する方法を知ることは学ぶ価値のあるスキルです。私たちの生活がオンラインでさらに進むにつれて、私たちの個人データを保護することが重要であり、賢明な人は自由に使えるすべてのツールを使用します。