Windows 用 Azure シリアル コンソール

注:

この記事はお役に立ちましたか? お客様の入力は、当社にとって重要です。 このページの [フィードバック ] ボタンを使用して、この記事がどれだけうまく機能したか、または改善する方法をお知らせください。

Azure portal のシリアル コンソールでは、Windows 仮想マシン (VM) および仮想マシン スケール セット インスタンス用のテキスト ベースのコンソールへのアクセスが提供されます。 このシリアル接続は、ネットワークやオペレーティング システムの状態には関係なく、VM または仮想マシン スケール セット インスタンスの COM1 シリアル ポートに接続してそのポートへのアクセスを提供します。 このシリアル コンソールは Azure portal を使用してのみアクセスでき、VM または仮想マシン スケール セットへの共同作成者以上のアクセス ロールを持つユーザーに対してのみ許可されます。

シリアル コンソールは、VM と仮想マシン スケール セット インスタンスに対して同じ方法で動作します。 このドキュメントでは、特に記載のない限り、VM という記述にはすべて仮想マシン スケール セット インスタンスが暗黙的に含まれます。

シリアル コンソールは、グローバル Azure リージョンで一般公開されており、Azure Government ではパブリック プレビュー段階にあります。 Azure China Cloud ではまだ利用できません。

Linux のシリアル コンソールのドキュメントについては、「Linux 用 Azure シリアル コンソール」をご覧ください。

注:

シリアル コンソールは、マネージド ブート診断ストレージ アカウントと互換性があります。

前提条件

  • VM または仮想マシン スケール セット インスタンスは、リソース管理デプロイ モデルを使用する必要があります。 クラシック デプロイはサポートされていません。

  • シリアル コンソールを使用するアカウントには、VM の仮想マシン共同作成者ロールおよびブート診断ストレージ アカウントが必要です

  • VM または仮想マシン スケール セット インスタンスには、パスワード ベースのユーザーが必要です。 このアカウントは、VM アクセス拡張機能のパスワードのリセット機能を使用して作成することができます。 [ヘルプ] セクションから [パスワードのリセット] を選択します。

  • 仮想マシン スケール セット インスタンス用 VM では、ブート診断が有効になっている必要があります。

    [診断設定] の [ブート診断] オプションのスクリーンショット。

Windows Server 向けのシリアル コンソール機能を有効にする

注:

シリアル コンソールに何も表示されていない場合は、VM または仮想マシン スケール セットでブート診断が有効になっていることを確認してください。

カスタム イメージまたは古いイメージでシリアル コンソールを有効にする

Azure の新しい Windows Server イメージでは、既定で Special Administration Console (SAC) が有効です。 SAC は Windows のサーバー バージョンではサポートされていますが、クライアント バージョン (Windows 10、Windows 8、Windows 7 など) では使用できません。

以前の Windows Server イメージ (2018 年 2 月より前に作成されたもの) では、Azure portal の実行コマンド機能を使用してシリアル コンソールを自動的に有効にすることができます。 Azure Portal で、 [実行コマンド] を選択し、一覧から EnableEMS という名前のコマンドを選択します。

EnableEMS コマンドが強調表示されている、Azure portal の [実行コマンド] ページのスクリーンショット。

あるいは、2018 年 2 月より前に作成された Windows VM/仮想マシン スケール セット用のシリアル コンソールを手動で有効にするには、次の手順に従います。

  1. リモート デスクトップを使用して Windows 仮想マシンに接続します。

  2. 管理コマンド プロンプトで次のコマンドを実行します。

    • bcdedit /ems {current} on、PowerShell の場合は bcdedit /ems '{current}' on
    • bcdedit /emssettings EMSPORT:1 EMSBAUDRATE:115200
  3. システムを再起動して、SAC コンソールを有効にします。

    アニメーション GIF は、システムを再起動して SAC コンソールを有効にするプロセスを示しています。

必要に応じて、SAC をオフラインでも有効にすることができます。

  1. SAC を構成する Windows ディスクをデータ ディスクとして既存の VM にアタッチします。

  2. 管理コマンド プロンプトで次のコマンドを実行します。

    • bcdedit /store <mountedvolume>\boot\bcd /ems {default} on
    • bcdedit /store <mountedvolume>\boot\bcd /emssettings EMSPORT:1 EMSBAUDRATE:115200

SAC が有効になっているかどうかを知る方法

SAC が有効になっていない場合、シリアル コンソールに SAC プロンプトは表示されません。 VM の正常性情報が表示される場合もありますが、それ以外は空白になります。 2018 年 2 月より前に作成された Windows Server イメージを使用している場合、SAC が有効になっていない可能性があります。

シリアル コンソールの Windows ブート メニューの有効化

Windows ブート ローダーのプロンプトを有効にしてシリアル コンソールに表示する必要がある場合は、ブート構成データに次のオプションを追加します。 詳細については、bcdedit に関するページをご覧ください。

  1. リモート デスクトップを使用して、Windows VM または仮想マシン スケール セット インスタンスに接続します。

  2. 管理コマンド プロンプトで次のコマンドを実行します。

    • bcdedit /set {bootmgr} displaybootmenu yes
    • bcdedit /set {bootmgr} timeout 10
    • bcdedit /set {bootmgr} bootems yes
  3. システムを再起動して、ブート メニューを有効にします。

注:

ブート マネージャー メニューの表示に対して設定するタイムアウトは、OS ブート時間に影響します。 10 秒のタイムアウト値が短すぎるか、長すぎると思われる場合は、別の値に設定します。

シリアル コンソールの使用

シリアル コンソールで CMD または PowerShell を使用する

  1. シリアル コンソールに接続します。 正常に接続した場合、プロンプトは SAC> です。

    シリアル コンソールに接続するためのコマンドの出力のスクリーンショット。SAC> が表示されます。

  2. cmd」と入力して、CMD インスタンスがあるチャネルを作成します。

  3. ch -si 1」と入力するか、<esc>+<tab> のショートカット キーを押して、CMD インスタンスを実行しているチャネルに切り替えます。

  4. Enter キーを押して、管理アクセス許可を持つサインイン資格情報を入力します。

  5. 有効な資格情報を入力すると、CMD インスタンスが開きます。

  6. PowerShell インスタンスを起動するには、CMD インスタンスに「PowerShell」と入力し、Enter キーを押します。

    PowerShell の起動コマンドの出力のスクリーンショット。

NMI 呼び出しにシリアル コンソールを使用する

マスク不可能割り込み (NMI) は、仮想マシン上のソフトウェアで無視されない信号を作成するために設計されています。 従来より、NMI は、特定の応答時間を要したシステム上でのハードウェアの問題を監視するために使用されてきました。 現在、プログラマーやシステム管理者は、応答していないシステムのデバッグやトラブルシューティングのためのメカニズムとして、NMI をよく使用しています。

シリアル コンソールは、コマンド バーのキーボード アイコンを使用して、NMI を Azure 仮想マシンに送信するために使用できます。 NMI が配信された後は、仮想マシン構成によってシステムの応答方法が制御されます。 NMI を受信したときにメモリ ダンプ ファイルをクラッシュして作成するように Windows を構成できます。

コマンド バーの [マスク不可能割り込み (NMI) の送信] ボタンのスクリーンショット。

NMI を受信したときにクラッシュ ダンプ ファイルを作成するように Windows を構成する方法については、「NMI を使用してクラッシュ ダンプ ファイルを生成する方法」を参照してください。

シリアル コンソールでファンクション キーを使用する

Windows VM のシリアル コンソールでファンクション キーを有効にして使用することができます。 シリアル コンソールのドロップダウンで F8 キーを押すと、詳細ブート設定メニューを簡単に表示することができますが、シリアル コンソールは他のすべてのファンクション キーと互換性があります。 シリアル コンソールを使用しているコンピューターによっては、キーボードの Fn + F1 (または F2、F3 など) を押すことが必要になる場合があります。

シリアル コンソールで WSL を使用する

Windows Subsystem for Linux (WSL) は Windows Server 2019 以降で有効なので、Windows Server 2019 以降を実行している場合は、シリアル コンソール内で WSL を有効にして使用することもできます。 この点は、Linux コマンドも熟知しているユーザーに役立つ可能性があります。 WSL for Windows Server を有効にする手順については、インストール ガイドに関するページを参照してください。

シリアル コンソール内で Windows VM/仮想マシン スケール セット インスタンスを再起動します

電源ボタンに移動し、[Restart VM] (VM の再起動) をクリックすることによって、シリアル コンソール内で再起動を開始できます。 これにより VM の再起動が始まり、Azure portal 内に再起動に関する通知が表示されます。

これは、シリアル コンソールから離れることなくブート メニューにアクセスしたい状況で役立ちます。

アニメーション GIF は、シリアル コンソール内で VM を再起動するプロセスを示しています。

シリアル コンソールを無効にする

既定では、すべてのサブスクリプションは、シリアル コンソールのアクセスが有効になっています。 サブスクリプション レベルまたは VM/仮想マシン スケール セット レベルのいずれかで、シリアル コンソールを無効にすることができます。 詳細な手順については、「Azure シリアル コンソールの有効化と無効化」を参照してください。

シリアル コンソールのセキュリティ

カスタム ブート診断ストレージ アカウントのファイアウォールを有効にしてシリアル コンソールを使用する

シリアル コンソールは、接続ワークフローでブート診断用に構成されたストレージ アカウントを使用します。 このストレージ アカウントでファイアウォールが有効になっている場合は、シリアル コンソール サービスの IP を除外として追加する必要があります。 これを行うには、次の手順を実行します。

  1. 有効にしたカスタム ブート診断ストレージ アカウント ファイアウォールの設定に移動します。

    注:

    VM で有効になっているストレージ アカウントを特定するには、[トラブルシューティングのサポート] セクションで、[ブート診断>設定] を選択します。

  2. VM の地域に基づいて、シリアル コンソール サービス IP をファイアウォールの除外として追加します。

    次の表に、VM が配置されている地域または地理に基づいて、ファイアウォールの除外として許可する必要がある IP を示します。 これは、 SerialConsole サービス タグで使用されるシリアル コンソール IP アドレスの完全な一覧のサブセットです。 SerialConsole サービス タグを使用して、ブート診断ストレージ アカウントへのアクセスを制限できます。 サービス タグはリージョン区切りではありません。 サービス タグのトラフィックは受信のみであり、シリアル コンソールでは顧客の制御可能な宛先へのトラフィックは生成されません。 Azure ストレージ アカウント ファイアウォールでは現在、サービス タグはサポートされていませんが、 SerialConsole サービス タグをプログラムで使用して IP 一覧を決定できます。 サービス タグの詳細については、「 仮想ネットワーク サービス タグ」を参照してください。

    注:

    シリアル コンソールのストレージ アカウント ファイアウォールは、イタリアのイタリア北部など、リージョンが 1 つだけの地域の VM ではサポートされていません。

    IP アドレス 地域 地理
    20.205.69.28 東アジア、東南アジア アジア太平洋
    20.195.85.180 東アジア、東南アジア アジア太平洋
    20.53.53.224 オーストラリア中部、オーストラリア中部 2、オーストラリア東部、オーストラリア南東部 オーストラリア
    20.70.222.112 オーストラリア中部、オーストラリア中部 2、オーストラリア東部、オーストラリア南東部 オーストラリア
    191.234.136.63 ブラジル南部、ブラジル南東部 ブラジル
    20.206.0.194 ブラジル南部、ブラジル南東部 ブラジル
    52.228.86.177 カナダ中部、カナダ東部 カナダ
    52.242.40.90 カナダ中部、カナダ東部 カナダ
    20.45.242.18 カナリア (EUAP)
    20.51.21.252 カナリア (EUAP)
    52.146.139.220 北ヨーロッパ、西ヨーロッパ ヨーロッパ
    20.105.209.72 北ヨーロッパ、西ヨーロッパ ヨーロッパ
    20.111.0.244 フランス中部、フランス南部 フランス
    52.136.191.10 フランス中部、フランス南部 フランス
    51.116.75.88 ドイツ北部、ドイツ中西部 ドイツ
    20.52.95.48 ドイツ北部、ドイツ中西部 ドイツ
    20.192.168.150 中央インド、南インド、西インド インド
    20.192.153.104 中央インド、南インド、西インド インド
    20.43.70.205 東日本、西日本 日本
    20.189.228.222 東日本、西日本 日本
    20.200.196.96 韓国中部、韓国南部 韓国
    52.147.119.29 韓国中部、韓国南部 韓国
    20.100.1.184 ノルウェー西部、ノルウェー東部 ノルウェー
    51.13.138.76 ノルウェー西部、ノルウェー東部 ノルウェー
    20.208.4.98 スイス北部、スイス西部 スイス
    51.107.251.190 スイス北部、スイス西部 スイス
    20.45.95.66 アラブ首長国連邦中部、アラブ首長国連邦北部 UAE
    20.38.141.5 アラブ首長国連邦中部、アラブ首長国連邦北部 UAE
    20.90.132.144 英国南部、英国西部 英国
    20.58.68.62 英国南部、英国西部 英国
    51.12.72.223 スウェーデン中部、スウェーデン南部 スウェーデン
    51.12.22.174 スウェーデン中部、スウェーデン南部 スウェーデン
    20.98.146.84 米国中部、米国東部 2、米国東部、米国中北部、米国中南部、米国西部 2、米国西部 3、米国中西部、米国西部 米国
    20.98.194.64 米国中部、米国東部 2、米国東部、米国中北部、米国中南部、米国西部 2、米国西部 3、米国中西部、米国西部 米国
    20.69.5.162 米国中部、米国東部 2、米国東部、米国中北部、米国中南部、米国西部 2、米国西部 3、米国中西部、米国西部 米国
    20.83.222.102 米国中部、米国東部 2、米国東部、米国中北部、米国中南部、米国西部 2、米国西部 3、米国中西部、米国西部 米国
    20.83.222.100 米国中部、米国東部 2、米国東部、米国中北部、米国中南部、米国西部 2、米国西部 3、米国中西部、米国西部 米国
    20.141.10.130 米国政府機関のすべてのクラウド リージョン 米政府
    52.127.55.131 米国政府機関のすべてのクラウド リージョン 米政府
    143.64.47.39 中国北部 3 中国
    163.228.70.115 中国東部 3 中国

    重要

    • 許可する必要がある IP は、VM が配置されている地域に固有のものです。 たとえば、北ヨーロッパ リージョンでデプロイされた仮想マシンは、ヨーロッパ地域のストレージ アカウント ファイアウォールに以下の IP 除外を追加する必要があります。52.146.139.220 および 20.105.209.72. 上の表を参照して、地域と地理に適した IP を見つけてください。
    • 現在のシリアル コンソール操作では、Web ソケットが などの <region>.gateway.serialconsole.azure.comエンドポイントに対して開かれます。 組織内のブラウザー クライアントに対してエンドポイント serialconsole.azure.com が許可されていることを確認します。 米国政府 (Fairfax) クラウドでは、エンドポイント サフィックスは です serialconsole.azure.us

    ストレージ アカウント ファイアウォールに IP を追加する方法の詳細については、「Azure Storage ファイアウォールと仮想ネットワークを構成する:」を参照してください。IP ネットワーク ルールの管理

IP アドレスがストレージ アカウント ファイアウォールに正常に追加されたら、VM へのシリアル コンソール接続を再試行します。 それでも接続の問題が発生する場合は、VM のリージョンのストレージ アカウント ファイアウォールから正しい IP アドレスが除外されていることを確認します。

アクセス セキュリティ

シリアル コンソールへのアクセスは、仮想マシンに対する仮想マシン共同作成者以上のアクセス ロールを持つユーザーだけが限定されています。 Microsoft Entra テナントで多要素認証 (MFA) が必要な場合は、シリアル コンソールのアクセスが Azure portal を介しているため、シリアル コンソールへのアクセスにも MFA が必要です。

チャネル セキュリティ

送受信されるすべてのデータは、TLS 1.2 以降のバージョンで転送中に暗号化されます。

データの保存と暗号化

Azure シリアル コンソールは、仮想マシンのシリアル ポートで送受信されるデータを確認、検査、または保存しません。 したがって、保存時に暗号化するデータはありません。

Azure シリアル コンソールを実行している仮想マシンがディスクにページングするメモリ内データを暗号化するには、ホスト ベースの暗号化を使用します。 ホストベースの暗号化は、すべての Azure シリアル コンソール接続に対して既定で有効になっています。

データ所在地

Azure portal または Azure CLI は、仮想マシンのシリアル ポートへのリモート ターミナルとして機能します。 このターミナルは、ネットワーク上で仮想マシンをホストするサーバーに直接接続できないため、中間のサービス ゲートウェイを使用してターミナル トラフィックをプロキシします。 Azure シリアル コンソールは、この顧客のデータを保存または処理しません。 データを転送する中間サービス ゲートウェイは、地理的仮想マシンの位置に存在します。

監査ログ

現在、シリアル コンソールへのすべてのアクセスが、仮想マシンのブート診断ログに記録されます。 これらのログへのアクセスは、Azure 仮想マシン管理者が所有し、制御します。

注意

コンソールのアクセス パスワードはログに記録されません。 ただし、コンソール内で実行されるコマンドにパスワード、シークレット、ユーザー名、またはその他の形式の個人を特定できる情報 (PII) が含まれていたり、出力されたりした場合、それらの情報は VM のブート診断ログに書き込まれます。 それらは、シリアル コンソールのスクロールバック機能の実装の一部として、表示される他のすべてのテキストと共に書き込まれます。 これらのログは循環型であり、診断ストレージ アカウントに対する読み取りアクセス許可を持つユーザーだけがアクセスできます。 ただし、シークレットや PII が含まれている可能性のあるものにはリモート デスクトップを使用するというベスト プラクティスに従うことをお勧めします。

同時使用

ユーザーがシリアル コンソールに接続しているときに、別のユーザーがその同じ仮想マシンへのアクセスを要求し、その要求が成功した場合、最初のユーザーが切断され、2 番目のユーザーが同じセッションに接続されます。

注意

これは、切断されたユーザーがログアウトされないことを意味します。(SIGHUP または同様のメカニズムを使用して) 切断時にログアウトを強制する機能は、まだロードマップにあります。 Windows では SAC で自動タイムアウトが有効になっていますが、Linux ではターミナルのタイムアウト設定を構成できます。

アクセシビリティ

アクセシビリティは、Azure シリアル コンソールの重点事項です。 そのため、視覚や聴覚に障碍があるユーザーや、マウスを使用できない可能性があるユーザーがシリアル コンソールにアクセスできるようにしました。

キーボード ナビゲーション

Azure portal からシリアル コンソール インターフェイスでナビゲートするには、キーボードの Tab キーを使用します。 現在の場所が画面上で強調表示されます。 シリアル コンソール ウィンドウのフォーカスを解除するには、キーボードの Ctrl+F6 キーを押します。

スクリーン リーダーでシリアル コンソールを使用する

シリアル コンソールには、スクリーン リーダーのサポートが組み込まれています。 スクリーン リーダーを有効にしてナビゲートすると、現在選択されているボタンの代替テキストをスクリーン リーダーで読み上げることができます。

シリアル コンソールにアクセスする一般的なシナリオ

シナリオ シリアル コンソールでのアクション
不適切なファイアウォール規則 シリアル コンソールにアクセスし、Windows ファイアウォール規則を修正します。
ファイル システムの破損/チェック シリアル コンソールにアクセスし、ファイルシステムを復旧します。
RDP 構成の問題 シリアル コンソールにアクセスし、設定を変更します。 詳しくは、RDP のドキュメントをご覧ください。
システムのネットワーク ロックダウン Azure portal からシリアル コンソールにアクセスして、システムを管理します。 一部のネットワーク コマンドについては、「Windows コマンド: CMD と PowerShell」を参照してください。
ブートローダーの操作 シリアル コンソールを使用して BCD にアクセスします。 詳細については、「シリアル コンソールの Windows ブート メニューの有効化」を参照してください。

既知の問題

Microsoft は、シリアル コンソールおよび VM のオペレーティング システムには問題がいくつかあることを認識しています。 Windows VM のそのような問題と軽減手順を以下に示します。 これらの問題と軽減策は、VM と仮想マシン スケール セット インスタンスの両方に適用されます。 表示されているエラーと一致しない場合は、シリアル コンソールに関する一般的なエラーに関する記事で一般的なシリアル コンソール サービス エラーを参照してください。

問題 対応策
接続バナーの後に Enter キーを押しても、サインイン プロンプトが表示されない。 このエラーは、Windows がシリアル ポートに正常に接続できない原因となるカスタム VM、堅牢化されたアプライアンス、ブート構成を実行している場合に発生する可能性があります。 このエラーは Windows 10 VM を実行している場合にも発生します。Windows Server VM のみが EMS を有効にするように構成されているからです。
Windows VM に接続したときに、正常性情報だけが表示される このエラーは、Windows イメージ用に Special Administration Console が有効になっていない場合に発生します。 Windows VM で SAC を手動で有効にする方法については、「カスタム イメージまたは古いイメージでシリアル コンソールを有効にする」を参照してください。
SAC がブラウザーのシリアル コンソール領域全体に表示されない これは、Windows とターミナル エミュレーターに関する既知の問題です。 両方のチームでこの問題を追跡していますが、現在は軽減策がありません。
カーネル デバッグを有効にすると、SAC プロンプトで入力できない。 VM に RDP で接続して、管理者特権でのコマンド プロンプトから bcdedit /debug {current} off を実行します。 RDP で接続できない場合は、代わりに OS ディスクを別の Azure VM に接続して、データ ディスクとしてアタッチされている間に bcdedit /store <drive letter of data disk>:\boot\bcd /debug <identifier> off, を実行して変更し、ディスクを戻すこともできます。
元のコンテンツに反復する文字が含まれる場合、SAC の PowerShell に貼り付けると 3 文字目が生成される。 回避策は、Remove-Module PSReadLine を実行して、現在のセッションから PSReadLine モジュールをアンロードすることです。 このアクションは、モジュールを削除またはアンインストールしません。
一部のキーボード入力で、不適切な SAC 出力が生成される (例: [A[3~)。 VT100 エスケープ シーケンスは SAC プロンプトでサポートされていません。
長い文字列を貼り付けると機能しない。 シリアル コンソールでは、シリアル ポートの帯域幅に対する過負荷を防止するために、ターミナルに貼り付けられる文字列の長さが 2048 文字に制限されます。

よく寄せられる質問

質問: フィードバックを送信するにはどうすればよいですか?

A. GitHub の問題を作成したフィードバックの提供 https://aka.ms/serialconsolefeedback します。 (あまりお勧めしませんが) azserialhelp@microsoft.com、または https://feedback.azure.com の仮想マシン カテゴリでフィードバックをお送りいただくこともできます。

質問: シリアル コンソールはコピー/貼り付けをサポートしていますか?

A. はい。 Ctrl+Shift+C キーでコピーし、Ctrl+Shift+V キーでターミナルに貼り付けます。

質問: サブスクリプションのシリアル コンソールを有効または無効にできるユーザー

A. あるサブスクリプション レベルでシリアル コンソールを有効または無効にするには、そのサブスクリプションの書き込み権限が必要です。 書き込み権限が与えられているロールには、管理者ロールと所有者ロールが含まれます。 カスタム ロールにも、書き込み権限が与えることができます。

質問: VM のシリアル コンソールにアクセスできるユーザー

A. VM のシリアル コンソールにアクセスするには、VM に対して仮想マシン共同作成者以上のロールが必要です。

質問: シリアル コンソールに何も表示されない場合、どうすればよいですか?

A. シリアル コンソールのアクセスに関して、おそらく、イメージが間違って構成されています。 シリアル コンソールを有効にするようにイメージを構成する方法については、「カスタム イメージまたは古いイメージでシリアル コンソールを有効にする」を参照してください。

質問: シリアル コンソールは仮想マシン スケール セットで使用できますか?

A. はい。 「シリアル コンソールの使用を開始する」を参照してください。

次の手順

  • Windows SAC で使用できる CMD コマンドおよび PowerShell コマンドの詳細なガイドについては、「Windows コマンド: CMD と PowerShell」を参照してください。
  • シリアル コンソールは、Linux VM でも使用できます。
  • ブート診断の詳細については、こちらを参照してください。

お問い合わせはこちらから

質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。