このドキュメントでは、Google アカウントに登録されている物理的なセキュリティ キーを使用して、OS Login を使用する仮想マシン(VM)インスタンスに接続する方法について説明します。
物理的なセキュリティ キーを使用して、VM に接続するための SSH 秘密鍵ファイルを生成します。 Google Cloud コンソールのブラウザでの SSH ツールまたは Google Cloud CLI を使用している場合、セキュリティ キーを使用して VM に接続すると、OS Login はセキュリティ キーに関連付けられている秘密 SSH 認証鍵ファイルを取得し、SSH 認証鍵ファイルを構成します。サードパーティ ツールを使用して接続する場合は、OS Login API を使用して SSH 認証鍵情報を取得し、SSH 認証鍵ファイルをご自身で構成する必要があります。
準備
- Google アカウントにセキュリティ キーを追加します。
- OS Login を設定します。
-
まだ設定していない場合は、認証を設定します。認証では、 Google Cloud サービスと API にアクセスするための ID が確認されます。ローカル開発環境からコードまたはサンプルを実行するには、次のいずれかのオプションを選択して Compute Engine に対する認証を行います。
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Google Cloud CLI をインストールします。 インストール後、次のコマンドを実行して Google Cloud CLI を初期化します。
gcloud init外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
- Set a default region and zone.
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Google Cloud CLI をインストールします。 インストール後、次のコマンドを実行して Google Cloud CLI を初期化します。
gcloud init外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
詳細については、 Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
制限事項
- セキュリティ キーが有効にされている VM は、Google アカウントに登録されている物理的なセキュリティ キーにアタッチされている SSH 認証鍵からの接続のみを受け入れます。
- Cloud Shell を使用して、セキュリティ キーが有効になっている VM に接続することはできません。
接続先の VM と接続元のワークステーションの両方で、セキュリティ キーの SSH タイプをサポートする OpenSSH 8.2 以降のバージョンを使用する必要があります。次の Compute Engine VM オペレーティング システムはセキュリティ キーをサポートしています。
- Debian 11(またはそれ以降)
- SUSE Linux Enterprise Server(SLES)15(またはそれ以降)
- Ubuntu 20.04 LTS(またはそれ以降)
- Container-Optimized OS 93 LTS(またはそれ以降)
- Rocky Linux 9(またはそれ以降)
ご使用の環境がセキュリティ キーをサポートしているかどうかを確認するには、次のコマンドを実行します。
ssh -Q key | grep ^sk-
コマンドから出力が返されない場合、ご使用の環境はセキュリティ キーをサポートしていません。
接続元のワークステーションの SSH クライアントは、セキュリティ キーをサポートし、必要なライブラリ(
libfido2など)を含める必要があります。
OS Login でセキュリティ キーを有効にする
プロジェクトで OS Login を使用するすべての VM または単一の VM に対してセキュリティ キーの使用を有効にできます。
OS Login が有効になっているプロジェクト内のすべての VM のセキュリティ キーを有効にする
プロジェクト内の OS Login を使用するすべての VM でセキュリティ キーを有効にするには、Google Cloud コンソールまたは gcloud CLI を使用します。
コンソール
OS Login が有効になっているすべての VM のセキュリティ キーを有効にするには、Google Cloud コンソールを使用して、プロジェクトのメタデータで
enable-osloginとenable-oslogin-skをTRUEに設定します。[メタデータ] ページに移動します。
[編集] をクリックします。
[項目を追加] をクリックします。
- [キー] フィールドに「
enable-oslogin」と入力します。 - [Value] に「
TRUE」と入力します。
- [キー] フィールドに「
[項目を追加] をクリックします。
- [キー] フィールドに「
enable-oslogin-sk」と入力します。 - [Value] に「
TRUE」と入力します。
- [キー] フィールドに「
[保存] をクリックします。
gcloud
OS Login が有効になっているすべての VM のセキュリティ キーを有効にするには、
gcloud compute project-info add-metadataコマンドを使用してプロジェクトのメタデータでenable-oslogin=TRUEとenable-oslogin-sk=TRUEを設定します。gcloud compute project-info add-metadata \ --metadata enable-oslogin=TRUE,enable-oslogin-sk=TRUEOS Login が有効になっている単一の VM でセキュリティ キーを有効にする
OS Login を使用する 1 つの VM でセキュリティ キーを有効にするには、Google Cloud コンソールまたは gcloud CLI を使用します。
コンソール
単一の VM でセキュリティ キーを有効にするには、 Google Cloud コンソールを使用して、インスタンスのメタデータで
enable-osloginとenable-oslogin-skをTRUEに設定します。[VM インスタンス] ページに移動します。
セキュリティ キーを有効にする VM の名前をクリックします。
[編集] をクリックします。
[カスタム メタデータ] セクションで [項目を追加] をクリックします。
- [キー] フィールドに「
enable-oslogin」と入力します。 - [Value] に「
TRUE」と入力します。
- [キー] フィールドに「
[項目を追加] をクリックします。
- [キー] フィールドに「
enable-oslogin-sk」と入力します。 - [Value] に「
TRUE」と入力します。
- [キー] フィールドに「
[保存] をクリックします。
gcloud
1 つの VM でセキュリティ キーを有効にするには、
gcloud compute instances add-metadataコマンドを使用して、インスタンス メタデータにenable-oslogin=TRUEとenable-oslogin-sk=TRUEを設定します。gcloud compute instances add-metadata VM_NAME \ --metadata enable-oslogin=TRUE,enable-oslogin-sk=TRUEVM_NAMEは実際の VM 名に置き換えます。セキュリティ キーを使用して VM に接続する
セキュリティ キーを使用する VM には、 Google Cloud コンソール、gcloud CLI、またはサードパーティ ツールを使用して接続します。 Google Cloud コンソールまたは gcloud CLI を使用して VM に接続すると、Compute Engine によって SSH 認証鍵が自動的に構成されます。サードパーティのツールを使用して VM に接続する場合は、構成を自分で行う必要があります。
コンソール
Google Cloud コンソールのブラウザでの SSH ツールを使用して VM に接続すると、ブラウザでの SSH がセキュリティ キーに関連付けられた秘密鍵を取得します。
セキュリティ キーが有効になっている VM に接続するには、次の操作を行います。
Google Cloud コンソールで、[VM インスタンス] ページに移動します。
VM のリストで、接続する VM の行にある [SSH] をクリックします。
メッセージが表示されたら、セキュリティ キーをタッチします。
gcloud
gcloud CLI を使用して VM に接続すると、gcloud CLI によってセキュリティ キーに関連付けられた秘密鍵が取得され、秘密鍵ファイルが構成されます。この構成は永続的なもので、セキュリティ キーを使用するすべての VM に適用されます。
gcloud beta compute sshコマンドを使用して、セキュリティ キーが有効化されている VM に接続します。gcloud beta compute ssh VM_NAME
サードパーティ製ツール
セキュリティ キーが有効になっている VM に接続する前に、セキュリティ キーに関連付けられている秘密鍵を取得し、秘密鍵ファイルを構成する必要があります。この例では、Python クライアント ライブラリを使用して構成を行います。
この構成は、VM に初めて接続するときだけ行う必要があります。この構成は永続的なもので、プロジェクトのセキュリティ キーを使用するすべての VM に適用されます。
ワークステーションのターミナルから、次のようにします。
まだ Python 用の Google クライアント ライブラリをインストールしていない場合は、次のコマンドを実行してインストールします。
pip3 install google-api-python-client
次のサンプル Python スクリプトを保存します。このスクリプトでは、セキュリティ キーに関連付けられた秘密鍵を取得し、秘密鍵ファイルを構成して VM に接続します。
スクリプトを実行して鍵を構成し、必要に応じて VM に接続します。
python3 SCRIPT_NAME.py --user_key=USER_KEY --ip_address=IP_ADDRESS [--dryrun]
次のように置き換えます。
SCRIPT_NAME: 構成スクリプトの名前。USER_KEY: メインのメールアドレス。IP_ADDRESS: 接続先の VM の外部 IP アドレス。[--dryrun]: (省略可)--dryrunフラグを追加して、VM に接続せずに接続コマンドを出力します。このフラグを指定しない場合は、スクリプトは接続コマンドを実行します。
次のステップ
- 2 段階認証プロセスを使用して OS Login を設定する方法を学習する。
- 組織で OS Login を管理する方法を確認する。
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-10-19 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["わかりにくい","hardToUnderstand","thumb-down"],["情報またはサンプルコードが不正確","incorrectInformationOrSampleCode","thumb-down"],["必要な情報 / サンプルがない","missingTheInformationSamplesINeed","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-10-19 UTC。"],[],[]] -