Linuxインスタンスでのキー・ペアの管理
Oracle Linuxイメージ、Ubuntuイメージまたはその他のLinuxイメージを使用して起動されたインスタンスは、パスワードではなくSSHキー・ペアを使用してリモート・ユーザーを認証します(セキュリティ資格証明を参照)。キー・ペアは、秘密キーと公開キーで構成されます。秘密キーはコンピュータに保持し、公開キーはインスタンスの作成時に指定します。SSHを使用してインスタンスに接続するときに、SSHコマンドで秘密キーのパスを指定します。
デフォルトでは、OCI Compute Linuxインスタンスを作成すると、OpenSSHキー・ペアが生成されます。生成されたOpenSSHキーを使用して、Windows、MacOSまたはLinuxからインスタンスに接続します。OpenSSHキー・ペアは、インスタンスごとに生成することも、複数のインスタンスに接続するために再利用することもできます。
または、OpenSSHを使用して、ローカルWindows、MacOSまたはLinuxマシンにキー・ペアを生成します。次に、生成されたキー・ペアを使用して、新しいOCI Computeインスタンスを作成します。
プラットフォーム・イメージの場合、RSA、DSA、DSS、ECDSAおよびEd25519のSSHキー・タイプがサポートされます。独自のイメージを導入する場合は、サポートされているSSHキー・タイプの管理の責任を負います。RSA、DSSおよびDSAキーの場合は、最小2048ビットをお薦めします。ECDSAキーには、最小256ビットをお薦めします。
Oracleでは、コンソールによって生成された秘密キーのコピーは格納されません。したがって、インスタンスに接続するには秘密キーのコピーを保持する必要があります。秘密キーを使用しない場合、インスタンスに接続する唯一の方法は、新しい秘密キーを使用して新しいインスタンスを作成することです。
秘密キーにアクセスできるすべてのユーザーがインスタンスに接続できます。秘密キーはセキュアな場所に格納してください。
Windowsシステムでは、Windows 10およびWindows Server 2019以降、OpenSSHがデフォルトで使用可能になっています。また、WindowsのOpenSSHは、Linux用WindowsサブシステムおよびWindows用Git (GitBash)で使用できます。または、PuTTYは古いWindowsバージョンに対するSSHサポートを提供し、OpenSSHキーと相互運用できます。
次に、OpenSSH公開キー・ファイルの構造について説明し、公開キー・ファイルのサンプルを示します。
公開キーの形式は次のとおりです:
<key_type> <public_key> <optional_comment>
たとえば、RSA公開キーは次のようになります:
ssh-rsa AAAAB3BzaC1yc2EAAAADAQABAAABAQD9BRwrUiLDki6P0+jZhwsjS2muM...
...yXDus/5DQ== rsa-key-20201202
ssh-keygenを使用したOpenSSHキー・ペアの作成
Windows、MacOSまたはLinuxを使用している場合は、ssh-keygen
を使用してOpenSSH公開キーと秘密キーのペアを生成できます。次のステップを実行します:
- シェル、端末またはコマンド・プロンプトを開き、
ssh-keygen
を起動します。 -
プロンプトで、次の推奨パラメータを指定して
ssh-keygen
と入力します。ssh-keygen -t rsa -N "" -b 2048 -C "<key_comment>"
次のリストに、各
ssh-keygen
オプションの目的を示します。-t rsa
: RSAアルゴリズムを使用します。-N ""
:キーの使用を保護するための(パスワードのような)パスフレーズ。空白の値は、パスフレーズが設定されていないことを意味します。-b 2048
: 2048ビット・キーを生成します。SSH-2 RSAには最低でも2048ビットをお薦めします。-C "<key_comment>"
:公開キー・ファイルに配置されるテキスト・コメント。- (オプション)
-f <path/key_name>
:キーのペアが保存される場所と、ファイルのキー名。
- キー・ディレクトリおよびキー名の入力を求められます。デフォルトの
<your-home-directory>/.ssh/id_rsa
を使用できます。オプションで、別の場所と名前を指定します。 - [Enter]を押します。
- デフォルト値を使用して、
<your-home-directory>/.ssh
ディレクトリに次のファイルが作成されます。id_rsa
:秘密キー・ファイル。id_rsa.pub
:公開キー・ファイル。
必要に応じてファイルを使用して、インスタンスへのセキュアなSSH接続を作成します。詳細は、Linuxインスタンスへの接続を参照してください。
SSHコマンドを使用するたびに秘密キー・パスフレーズを入力するように求められるため、不便な場合があります。選択を検討する際には、組織のセキュリティ・ポリシーに従ってください。
OpenSSHは、Windows 10およびWindows Server 2019以降、Windowsに含まれています。古いバージョンのWindowsオペレーティング・システムを使用している場合は、PuTTYおよびPuTTYキー・ジェネレータを使用してキーを作成できます。キーの作成の詳細は、PuTTYキー・ジェネレータを使用したSSHキー・ペアの作成を参照してください。