root ユーザーとして Linux VM に接続する

このドキュメントでは、root ユーザーとして Linux 仮想マシン(VM)インスタンスに接続する方法について説明します。これにより、VM でスーパーユーザー権限が有効になります。デフォルトでは、Compute Engine VM は公開イメージからビルドされ、一般的なオペレーティング システムではパスワードを使用した SSH 経由の root ログインが許可されません。

root ユーザーとして VM に接続する代わりに、root ログインを有効にするのではなく、sudo を使用してコマンドを実行することをおすすめしています。

サポートされているオペレーティング システム

これらの接続方法は、Compute Engine で利用可能なすべての公開 Linux イメージでサポートされています。Fedora CoreOS イメージの場合、これらの方法を使用する前に、SSH アクセスを設定する必要があります。

root ログインを有効にする

デフォルトでは、Compute Engine VM は、/etc/ssh/sshd_config SSH 構成ファイルで PermitRootLogin パラメータを prohibit-password または no に設定します。VM の手順に沿って、root ログインを有効にします。

次の手順で root ログインを有効にします。

  1. 通常どおり VM に接続します。

  2. 次のコマンドを実行して、/etc/ssh/sshd_config ファイルの PermitRootLogin noPermitRootLogin prohibit-password に変更します。

    sudo sed -i 's/PermitRootLogin no/PermitRootLogin prohibit-password/g' /etc/ssh/sshd_config
    
  3. VM を再起動するか、VM のオペレーティング システムの再起動コマンドを実行して、sshd デーモンを再起動します。VM が再起動するのを待ってから、root ユーザーとして接続します。

root ユーザーとして接続する

root ログインを有効にしたら、root ユーザーとして VM に接続します。

gcloud

VM 名の前に root@ を指定して gcloud compute ssh コマンドを使用し、root ユーザーとして VM に接続します。

  1. In the Trusted Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Trusted Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 次のコマンドを実行して VM に接続します。

    gcloud compute ssh \
        --project=PROJECT_ID \
        --zone=ZONE \
        root@VM_NAME
    

    次のように置き換えます。

    • PROJECT_ID: VM が含まれているプロジェクトの ID
    • ZONE: VM が存在するゾーンの名前
    • VM_NAME: VM の名前

サードパーティ製ツール

  1. root ユーザーの SSH 認証鍵を作成します。鍵のユーザー名は root にする必要があります。

  2. root ユーザーの鍵をメタデータに追加します

  3. サードパーティ ツールを使用して接続し、次の値を指定します。

    • 秘密鍵: root ユーザーの秘密鍵

    • ユーザー名: ユーザー名は root にする必要があります

トラブルシューティング

失敗した SSH 接続を診断し、解決するための方法については、SSH のトラブルシューティングをご覧ください。

次のステップ