インスタンス・コンソール接続を使用したインスタンスのトラブルシューティング

コンソール接続を使用して、正常に動作していないインスタンスをリモートからトラブルシューティングできます。例:

  • インポートまたはカスタマイズしたイメージが正常に起動しない
  • 以前は稼働していたインスタンスが応答しなくなった

インスタンス・コンソール接続には、シリアル・コンソール接続とVNCコンソール接続の2種類があります。

重要

インスタンス・コンソール接続は、トラブルシューティングの目的でのみ使用します。管理および一般的な使用のために実行中のインスタンスに接続するには、かわりにセキュア・シェル(SSH)またはリモート・デスクトップ接続を使用します。インスタンスへの接続を参照してください。

Cloud Shell統合を使用して、迅速かつ簡単にシリアル・コンソールに接続できます。Cloud Shellを使用してシリアル・コンソールに接続する場合、その前提条件は正しい権限を持っていることのみです。シリアル・コンソールまたはVNCコンソールへのローカル接続を作成する場合は、次の構成ステップに従います。

  1. 適切な権限があることを確認してください。
  2. SSHキー・ペアの作成を含む前提条件を完了します。
  3. インスタンス・コンソール接続を作成します。
  4. シリアル・コンソールに接続するか、VNCコンソールに接続します
  5. シリアル・コンソールに接続しようとしているときに、接続が機能していないと思われる場合は、Cloud Shellを使用してシリアル・コンソールへの接続をテストします。
ノート

一部の問題は、コンソール履歴の情報を使用して診断できます。コンソール履歴を使用すると、リモートでインスタンスに接続しなくても、インスタンスからのシリアル出力を確認できます。

必要なIAMポリシー

Oracle Cloud Infrastructureを使用するには、管理者によってポリシーでセキュリティ・アクセス権が付与されている必要があります。このアクセス権は、コンソール、あるいはSDK、CLIまたはその他のツールを使用したREST APIのいずれを使用している場合でも必要です。権限がない、または認可されていないというメッセージが表示される場合は、管理者に連絡して、どのタイプのアクセス権があり、どのコンパートメントで作業するかを確認してください。

インスタンス・コンソール接続を作成するには、管理者は、インスタンス・コンソール接続を管理し、IAMポリシーを介してインスタンスを読み取るためのアクセス権をユーザーに付与する必要があります。インスタンス・コンソール接続のリソース名はinstance-console-connectionです。インスタンスのリソース名はinstanceです。次のポリシーは、インスタンス・コンソール接続を作成する権限をユーザーに付与します:

Allow group <group_name> to manage instance-console-connection in tenancy
Allow group <group_name> to read instance in tenancy

インスタンス・コンソール接続では、ネットワーク・ソースもサポートされます。次のポリシーは、ネットワーク・ソースとのインスタンス・コンソール接続を作成する権限をユーザーに付与します:

Allow group <group_name> to manage instance-console-connection in tenancy where request.networkSource.name='example-network-source'
Allow group <group_name> to read instance in tenancy where request.networkSource.name='example-network-source'

ポリシーを初めて使用する場合は、ポリシーの開始共通ポリシーを参照してください。

開始前

インスタンス・コンソール接続を作成する前に、次の前提条件を完了します。

重要

Cloud Shellを使用してシリアル・コンソールに接続する場合、その前提条件は正しい権限を持っていることのみです。

SSHクライアントおよびコマンドライン・シェルのインストール(Windows)

Windowsには、デフォルトでSSHクライアントは含まれていません。Windowsクライアントから接続する場合は、SSHクライアントをインストールする必要があります。PuTTY plink.exeは、Windows PowerShellまたは次のようなバージョンのOpenSSHを含むソフトウェアで使用できます:

このトピックの手順では、PuTTYおよびWindows PowerShellを頻繁に使用します。

Windows PowerShellを使用してWindowsからコンソール接続を確立する場合、PowerShellがWindowsオペレーティング・システムにすでにインストールされている可能性があります。そうでない場合は、リンクのステップに従います。PowerShellを使用してWindowsクライアントからインスタンスに接続する場合は、plink.exeが必要です。plink.exeは、PuTTYに含まれているコマンド・リンク接続ツールです。PuTTYをインストールすることも、plink.exeを個別にインストールすることもできます。インストール情報は、http://www.putty.orgを参照してください。

SSHキー・ペアの作成

セキュアなコンソール接続を作成するには、SSHキー・ペアが必要です。キー・ペアの作成に使用する方法は、オペレーティング・システムによって異なります。シリアル・コンソールに接続する場合は、RSAキーを使用する必要があります。この項の手順では、RSA SSHキー・ペアを作成する方法を示します。

LinuxのSSHキー・ペアの作成

Linuxで使用するSSHキー・ペアの作成の詳細は、Linuxインスタンスでのキー・ペアの管理を参照してください。

コマンドラインでSSHキー・ペアを作成するには

Unixスタイルのシステムを使用している場合は、ssh-keygenユーティリティがすでにインストールされている可能性があります。ユーティリティがインストールされているかどうかを確認するには、コマンドラインでssh-keygenと入力します。ユーティリティがインストールされていない場合は、http://www.openssh.com/portable.htmlからOpenSSH for UNIXをダウンロードしてインストールできます。

  1. コマンドを入力するためのシェルまたはターミナルを開きます。
  2. プロンプトで、ssh-keygenと入力し、要求されたらキーの名前を指定します。オプションで、パスフレーズを含めます。

    デフォルトのキー値(2048ビットのRSAキー)を使用してキーが作成されます。

または、次のように完全なssh-keygenコマンドを入力することもできます:

ssh-keygen -t rsa -N "" -b 2048 -C "<key_name>" -f <path/root_name>

次の表に、コマンド引数を示します:

引数 説明
-t rsa RSAアルゴリズムを使用します。
-N "<passphrase>"

キーの使用を保護するためのパスフレーズ(パスワードなど)。パスフレーズを設定しない場合は、引用符の間に何も入力しないでください。

パスフレーズは必須ではありません。これをセキュリティ対策として指定して、権限のない使用から秘密キーを保護できます。パスフレーズを指定する場合、インスタンスに接続するときにパスフレーズを指定する必要があります。これにより、通常、インスタンスへの接続の自動化が困難になります。

-b 2048

2048ビット・キーを生成します。2048はデフォルトであるため、この値で問題なければ設定する必要はありません。

SSH-2 RSAには最低でも2048ビットをお薦めします。

-C "<key_name>" キーを識別する名前。
-f <path/root_name> キー・ペアが保存される場所と、ファイルのルート名。

PuTTYを使用したWindowsのSSHキー・ペアの作成

Windowsクライアントを使用してインスタンス・コンソール接続に接続している場合は、PuTTYによって生成されたSSHキー・ペアを使用します。

PuTTYを使用してSSHキー・ペアを作成するには
重要

PuTTYの最新バージョンを使用していることを確認してください。http://www.putty.orgを参照してください。
  1. コンピュータの「PuTTY」フォルダ(C:\Program Files (x86)\PuTTYなど)で、puttygen.exeを検索します。puttygen.exeをダブルクリックして開きます。
  2. SSH-2 RSAのキー・タイプと2048ビットのキー・サイズを指定します:

    • 「Key」メニューで、デフォルト値の「SSH-2 RSA key」が選択されていることを確認します。
    • 「Type of key to generate」で、デフォルト・キー・タイプの「RSA」を受け入れます。
    • 「Number of bits in a generated key」がまだ設定されていない場合、2048に設定します。
  3. 「Generate」をクリックします。
  4. キーにランダム・データを生成するには、PuTTYウィンドウの空白領域にマウスを移動します。

    キーが生成されると、「Public key for pasting into OpenSSH authorized_keys file」に表示されます。

  5. 日付とタイムスタンプを含む「Key comment」が自動的に生成されます。デフォルトのコメントのままにすることも、よりわかりやすい独自のコメントで置き換えることもできます。
  6. 「Key passphrase」フィールドは空白のままにします。
  7. 「Save private key」をクリックし、パスフレーズを使用しないキーの保存に関するプロンプトで、「Yes」をクリックします。

    キー・ペアは、PuTTYツール・セットでのみ動作する製品固有の形式であるPuTTY Private Key (PPK)形式で保存されます。

    キーには任意の名前を付けることができますが、ppkファイル拡張子を使用してください。たとえば、mykey.ppkです。

  8. 「Public key for pasting into OpenSSH authorized_keys file」に表示されているすべての生成キーを選択し、[Ctrl] + [C]を使用してコピーし、テキスト・ファイルに貼り付けてから、秘密キーと同じ場所にそのファイルを保存します。

    (「Save public key」ではキーがOpenSSH形式で保存されないため、使用しないでください。)

    キーには任意の名前を付けることができますが、一貫性を維持するため、秘密キーと同じ名前を付け、pubファイル拡張子を使用してください。たとえば、mykey.pubです。

  9. 公開キーおよび秘密キー・ファイルの名前と場所を書き留めます。インスタンス・コンソール接続を作成する場合は、公開キーが必要です。PuTTYを使用してインスタンス・コンソール接続に接続するには、秘密キーが必要です。

シリアル・コンソールからのインスタンスへのサインイン(オプション)

シリアル・コンソールを使用してインスタンスのトラブルシューティングを行い、シリアル出力を表示するには、サインインする必要はありません。Secure Shell (SSH)またはリモート・デスクトップ接続を使用して、管理および一般的な使用のために実行中のインスタンスに接続するには、インスタンスへの接続を参照してください。

インスタンス・コンソール接続を使用してインスタンスにサインインする場合は、Secure Shell (SSH)またはリモート・デスクトップ接続を使用してサインインできます。ユーザー名とパスワードを使用してサインインする場合は、パスワードを持つユーザー・アカウントが必要です。Oracle Cloud Infrastructureでは、opcユーザーのデフォルト・パスワードは設定されません。したがって、opcユーザーとしてサインインする場合は、opcユーザーのパスワードを作成する必要があります。それ以外の場合は、パスワードを使用して別のユーザーを追加し、そのユーザーとしてサインインします。

ファイアウォールを介した接続

システムがファイアウォールの内側にある場合、システムはコンソール・サーバーに到達できる必要があります。シリアル・コンソールに接続するクライアント・システムは、直接またはプロキシを介して、ポート443を使用してSSH経由で、シリアル・コンソール・サーバーまたはVNCコンソール・サーバー(instance-console.us-ashburn-1.oci.oraclecorp.comなど)にアクセスできる必要があります。

サポートされているインスタンス・タイプ

シリアル・コンソール接続は、次のタイプのインスタンスでサポートされます:

  • 2017年9月以降に起動された仮想マシン(VM)インスタンス
  • 2017年11月以降に起動されたベア・メタル・インスタンス

VNCコンソール接続は、次のタイプのインスタンスでサポートされます:

  • 2017年10月13日以降に起動されたVMインスタンス

  • ほとんどのベア・メタル・インスタンスがサポートされていますが、次の例外があります。

    サポートされていないベア・メタル・インスタンス
    • BM.Standard1.36
    • BM.Standard2.52 - 2019年2月21日より前に起動
    • BM.Standard.B1.44
    • BM.Standard.E2.64 - 2020年9月17日より前に起動
    • BM.HighIO1.36
    • BM.DenseIO1.36
    • BM.DenseIO2.52 - 2019年2月21日より前に起動
    • BM.GPU2.2 - 2019年2月21日より前に起動
    • BM.GPU3.8 - 2019年2月21日より前に起動
    • BM.HPC2.36 - 2019年2月21日より前に起動

Cloud Shellを使用したシリアル・コンソールへの接続

Cloud Shell統合を使用して、迅速かつ簡単にシリアル・コンソールに接続できます。Cloud Shellは、コンソールからアクセスできるWebブラウザベースの端末です。Cloud Shell統合によって、インスタンス・コンソール接続と一時SSHキーが自動的に作成されます。Cloud Shellからシリアル・コンソールに接続するための唯一の前提条件は、ユーザーに正しい権限を付与することです。Cloud Shellの使用の概要は、Cloud Shellの使用に関する項を参照してください。

クラウド・シェルが管理するパブリック・ネットワークを有効にしないかぎり、デフォルトでは、Cloud Shellによってテナンシ・ホーム・リージョン内のOracle Cloud Infrastructure内部リソースへのネットワーク・アクセスが制限されます。管理者は、Cloud Shellパブリック・ネットワークを有効にするようにアイデンティティ・ポリシーを構成できます。詳細は、クラウド・シェル・ネットワーキングを参照してください。

ノート

VNCコンソール接続にはCloud Shellを使用できません。シリアル・コンソール接続にのみ使用できます。

シリアル・コンソールでの作業が済みSSH接続を終了したら、シリアル・コンソール接続を削除する必要があります。セッションを切断しないと、Oracle Cloud Infrastructureが24時間後にシリアル・コンソール・セッションを終了するため、再び接続するときには再認証を行う必要があります。

Cloud Shellを使用してシリアル・コンソールに接続するには
  1. コンソールにサインインします。
  2. ナビゲーション・メニューを開き、「コンピュート」をクリックします。「コンピュート」で、「インスタンス」をクリックします。
  3. Oracle Cloud Infrastructureコンソールのインスタンスの詳細ページで、「リソース」の下の「コンソール接続」をクリックします。
  4. 「Cloud Shell接続の起動」をクリックします。このアクションによって、Cloud Shellがコンソール下部のドロワーに表示されます。
  5. コンソール接続がすでに存在する場合は、既存のリソースを削除するかどうかを尋ねられます。[y]を押してから、[Enter]を押します。
  6. 完了したら、インスタンス・コンソール接続を終了します。

インスタンス・コンソール接続の作成

シリアル・コンソールまたはVNCコンソールへのローカル接続を行う前に、インスタンス・コンソール接続を作成する必要があります。Cloud Shellを使用してシリアル・コンソールに接続すると、インスタンス・コンソール接続が自動的に作成されます。

ノート

インスタンス・コンソール接続は、一度に1つのクライアントに制限されます。クライアントに障害が発生した場合、接続は約5分間アクティブなままになります。この間、他のクライアントは接続できません。5分後に接続が閉じられ、新しいクライアントが接続できるようになります。5分間のタイムアウト中に、新しいクライアントが接続しようとすると失敗し、次のメッセージが表示されます:
channel 0: open failed: administratively prohibited: console access is limited to one connection at a time
Connection to <instance and OCID information> closed.
  1. ナビゲーション・メニューを開き、「コンピュート」をクリックします。「コンピュート」で、「インスタンス」をクリックします。
  2. 関心のあるインスタンスをクリックします。
  3. 「リソース」で、「コンソール接続」をクリックします。

  4. 「ローカル接続の作成」をクリックします。
  5. SSHキーの公開キー部分をアップロードします。SSHキーを追加するには、3つの方法があります。
    • キー・ペアの生成: Oracle Cloud Infrastructureで使用するSSHキー・ペアを生成できます。PowerShellまたはPuTTYを使用してWindowsクライアントからインスタンスに接続している場合、生成されたSSHキー・ペアは、最初に.ppkファイルに変換しないと使用できません。
      生成された.key秘密キー・ファイルを変換するには
      1. PuTTYgenを開きます。

      2. 「ロード」をクリックし、インスタンスの作成時に生成された秘密キーを選択します。キー・ファイルの拡張子は.keyです。

      3. 「秘密キーの保存」をクリックします。

      4. キーの名前を指定します。新しい秘密キーの拡張子は.ppkです。

      5. 保存」をクリックします

        ノート

        PuTTYgenでは.keyファイルは上書きされませんが、.ppk拡張子を持つ同じ名前の追加ファイルが作成されます。
    • 公開キー・ファイルのアップロード: コンピュータ上の公開キー・ファイルを参照します。SSHキー・ペアの作成で前提条件のステップに従ってキー・ペアを作成した場合は、このオプションを使用して.pubファイルに移動します。
    • 公開キーの貼付け: 公開キー・ファイルの内容をテキスト・ボックスに貼り付けます。
  6. 「コンソール接続の作成」をクリックします。

    コンソール接続が作成されて使用可能になると、状態が「アクティブ」に変わります。

シリアル・コンソールへのローカル接続

インスタンスのコンソール接続を作成したら、Secure Shell (SSH)接続を使用してシリアル・コンソールに接続できます。シリアル・コンソールへのローカル接続を行う場合は、RSAキーを使用する必要があります。インスタンスの起動時に使用したものと同じSSHキーをシリアル・コンソールに使用することも、別のSSHキーを使用することもできます。

ヒント

Cloud Shellを使用してシリアル・コンソールに接続することもできます。

シリアル・コンソールでの作業が済みSSH接続を終了したら、シリアル・コンソール接続を削除する必要があります。セッションを切断しないと、Oracle Cloud Infrastructureが24時間後にシリアル・コンソール・セッションを終了するため、再び接続するときには再認証を行う必要があります。

サーバー・ホスト・キーの検証

シリアル・コンソールに初めて接続する場合、サーバー・ホスト・キーのフィンガープリントを検証するように求められます。サーバー・ホスト・キーのフィンガープリントは、サーバー・ホストの公開SSHキーのSHA256ハッシュです。サーバーSSHハンドシェイク・レスポンスは、関連付けられた秘密キーで署名されます。サーバー・ホスト・キーのフィンガープリントを検証すると、潜在的な攻撃から保護されます。

シリアル・コンソールに手動で接続する場合、サーバー・ホスト・キーのフィンガープリントは自動的に検証されません。フィンガープリントを手動で検証するには、Oracle Cloud Infrastructureコンソールに表示されたフィンガープリント値を、接続時に端末に表示されたRSAキー・フィンガープリントの値と比較します。

コンソールでサーバー・ホスト・キーのフィンガープリントを見つけるには、「インスタンスの詳細」ページの「リソース」で、「コンソール接続」をクリックします。この表に、サーバー・ホスト・キーのフィンガープリントが表示されます。コンソールのフィンガープリントが、シリアル・コンソールに接続するときに端末に表示されたRSAキー・フィンガープリントの値と一致している必要があります。

サーバー・ホスト・キーは、セキュリティ上の目的で定期的にローテーションされます。キー・ローテーションを行うと、1つのキー・バージョンにより暗号化または署名されるデータの量を制限することで、キーが危殆化されたときにさらされるリスクを軽減できます。キーがローテーションされたとき、シリアル・コンソールに接続しようとすると、攻撃の可能性を示す警告が表示されます。この警告には、Host key verification failedエラーおよび.ssh/known_hostsファイル内の行番号が含まれます。.ssh/known_hostsファイルでその行を削除してから、シリアル・コンソールに再接続します。その後、新しいサーバー・ホスト・キー・フィンガープリントを受け入れるように求められます。

Mac OS XおよびLinuxオペレーティング・システムからの接続

SSHクライアントを使用してシリアル・コンソールに接続します。Mac OS XおよびほとんどのLinuxやUNIX系のオペレーティングシステムには、デフォルトでSSHクライアントOpenSSHが含まれています。

ノート

OpenSSHがLinuxおよびMacOSからシリアル・コンソールに接続するために必要な最小バージョンは、OpenSSH 7.2です。
Mac OS XまたはLinuxでOpenSSHを使用してシリアル・コンソールに接続するには
  1. Oracle Cloud Infrastructureコンソールのインスタンスの詳細ページで、「リソース」の下の「コンソール接続」をクリックします。
  2. 「アクション」メニュー(アクション・メニュー)をクリックし、「Linux/Macのシリアル・コンソール接続のコピー」をクリックします。
  3. 接続文字列をMac OS XまたはLinuxシステムのターミナル・ウィンドウに貼り付け、[Enter]を押してコンソールに接続します。

    デフォルトのSSHキーまたはssh-agentを使用していない場合は、アイデンティティ・ファイル・フラグ-iを含むようにシリアル・コンソール接続文字列を変更して、使用するSSHキーの秘密キー部分(たとえば、id_rsa)を指定します。次の行に示すように、SSH接続とSSH ProxyCommandの両方にこのフラグを指定します:

    ssh -i /<path>/<ssh_key> -o ProxyCommand='ssh -i /<path>/<ssh_key> -W %h:%p -p 443...
  4. プロンプトが表示されたら、サーバー・ホスト・キーのフィンガープリントを検証して受け入れます。サーバー・ホスト・キーのフィンガープリントを以前に受け入れたが、そのキーがローテーションされている場合は、攻撃の可能性を示す警告が表示されます。この警告には、Host key verification failedエラーおよび.ssh/known_hostsファイル内の行番号が含まれます。.ssh/known_hostsファイルで指定された行を削除してから、シリアル・コンソールに再接続します。新しいサーバー・ホスト・キー・フィンガープリントを検証して受け入れます。
  5. [Enter]を再度押すと、コンソールがアクティブ化されます。接続がアクティブな場合、次のメッセージがコンソールに表示されます: 重要: コンソール接続を使用して、正常に動作していないインスタンスをトラブルシューティングします。

  6. Oracle Cloud Infrastructure Consoleで、インスタンスを再起動します。ユーザー名またはパスワードを入力する必要はありません。インスタンスが機能していて、接続がアクティブな場合、シリアル出力がコンソールに表示されます。シリアル出力がコンソールに表示されない場合、インスタンスのオペレーティング・システムは起動していません。

その他のトラブルシューティング・オプションについては、インスタンス・コンソール接続からのインスタンスのトラブルシューティングを参照してください。

Windowsオペレーティング・システムからの接続

Windows PowerShellからシリアル・コンソールに接続するステップは、OpenSSHのステップとは異なります。次のステップは、Windowsターミナルでは機能しません。

重要

PowerShellを使用してWindowsクライアントからインスタンスに接続する場合は、plink.exeが必要です。plink.exeは、PuTTYに含まれているコマンド・リンク接続ツールです。PuTTYをインストールすることも、plink.exeを個別にインストールすることもできます。詳細は、SSHクライアントおよびコマンドライン・シェルのインストール(Windows)を参照してください。
ノート

OpenSSHがWindowsからシリアル・コンソールに接続するために必要な最小バージョンは、PuTTY (0.75)です。
Microsoft Windowsでシリアル・コンソールに接続するには
  1. Oracle Cloud Infrastructureコンソールのインスタンスの詳細ページで、「リソース」の下の「コンソール接続」をクリックします。
  2. 「アクション」メニュー(アクション・メニュー)をクリックします。使用しているSSHクライアントに応じて、次のいずれかを行います:
    • Windows PowerShellを使用している場合、「Windowsのシリアル・コンソール接続のコピー」をクリックします。

    • OpenSSHを使用している場合、「Linux/Macのシリアル・コンソール接続のコピー」をクリックします。

    ヒント

    Windows用にコピーされた接続文字列には、秘密キー・ファイルの場所を指定するパラメータ-iが含まれています。接続文字列のこのパラメータのデフォルト値は、Windowsクライアントで構成されていないか、秘密キー・ファイルが保存されている場所を表していない可能性がある環境変数を参照しています。次のステップに進む前に、-iパラメータに指定した値を確認し、必要な変更を加えます。
  3. ファイル・パスを秘密キー・ファイルに追加できるように、前のステップでコピーした接続文字列をテキスト・ファイルに貼り付けます。
  4. テキスト・ファイルで、$env:homedrive$env:homepath\oci\console.ppkをコンピュータ上の.ppkファイルへのファイル・パスに置き換えます。このファイル・パスは文字列に2回出現します。両方の場所で置き換えます。
  5. 変更した接続文字列をPowerShellウィンドウまたはOpenSSHクライアントに貼り付け、[Enter]を押してコンソールに接続します。
  6. プロンプトが表示されたら、サーバー・ホスト・キーのフィンガープリントを検証して受け入れます。サーバー・ホスト・キーのフィンガープリントを以前に受け入れたが、そのキーがローテーションされている場合は、攻撃の可能性を示す警告が表示されます。この警告には、Host key verification failedエラーおよび.ssh/known_hostsファイル内の行番号が含まれます。.ssh/known_hostsファイルで指定された行を削除してから、シリアル・コンソールに再接続します。新しいサーバー・ホスト・キー・フィンガープリントを検証して受け入れます。
  7. [Enter]を再度押すと、コンソールがアクティブ化されます。
  8. Oracle Cloud Infrastructure Consoleで、インスタンスを再起動します。ユーザー名またはパスワードを入力する必要はありません。インスタンスが機能していて、接続がアクティブな場合、シリアル出力がクライアントに表示されます。シリアル出力がクライアントに表示されない場合、インスタンスのオペレーティング・システムは起動していません。

その他のトラブルシューティング・オプションについては、インスタンス・コンソール接続からのインスタンスのトラブルシューティングを参照してください。

VNCコンソールへの接続

インスタンスに対してコンソール接続を作成した後、VNCクライアントを使用して接続するには、インスタンス上のVNCサーバーへのセキュア・トンネルを設定する必要があります。

VNCコンソール接続はSSHポート転送を使用して、ローカル・システムからインスタンスのコンソールにアタッチされたVNCサーバーへのセキュアな接続を作成します。この方法はインターネット経由でVNCを使用する安全な方法ですが、ローカル・システム上のポートを開くと、VNCクライアントが接続するまでの間、システム上のすべてのユーザーがそのポートを使用できるようになることを、マルチユーザー・システムの所有者は知っておく必要があります。このため、ポートを保護する適切な処置を取るか、Oracle VM VirtualBoxなどの仮想環境で実行することでVNCクライアントを分離する場合を除き、マルチユーザー・システムでこの製品を使用することはお薦めしません。

Mac OS XまたはLinuxでOpenSSHを使用するインスタンス上のVNCサーバーへのセキュア・トンネルを設定するには
ノート

VNCコンソール接続との互換性がないMac OS X Screen Sharing.app

Mac OS Xの組込みVNCクライアントであるScreen Sharing.appは、Oracle Cloud InfrastructureのVNCコンソール接続で機能しません。Real VNC ViewerChickenなど他のVNCクライアントを使用してください。

  1. Oracle Cloud Infrastructureコンソールのインスタンスの詳細ページで、「リソース」の下の「コンソール接続」をクリックします。
  2. 「アクション」メニュー(アクション・メニュー)をクリックし、「Linux/MacのVNC接続のコピー」をクリックします。
  3. 前のステップでコピーした接続文字列を、Mac OS XまたはLinuxシステムのターミナル・ウィンドウに貼り付け、[Enter]を押してセキュアな接続を設定します。
  4. 接続が確立されたら、VNCクライアントを開いて、接続先のホストとしてlocalhostを、使用するポートとして5900を指定します。
    ノート

    OS Xでのリモート・デスクトップのリモート管理では、ポート5900が使用されます。Oracle Cloud InfrastructureのVNCコンソール接続でもポート5900が使用されるため、VNCコンソール接続はリモート管理と互換性がありません。VNCコンソール接続を使用するには、リモート管理を無効にします
WindowsでPowerShellを使用するインスタンス上のVNCサーバーへのセキュア・トンネルを設定するには

PowerShellを使用してWindowsクライアントからインスタンス上のVNCサーバーに接続する場合は、plink.exeが必要です。plink.exeは、PuTTYに含まれているコマンド・リンク接続ツールです。PuTTYをインストールすることも、plink.exeを個別にインストールすることもできます。インストール情報は、http://www.putty.orgを参照してください。

  1. Oracle Cloud Infrastructureコンソールのインスタンスの詳細ページで、「リソース」の下の「コンソール接続」をクリックします。
  2. 「アクション」メニュー(アクション・メニュー)をクリックし、「WindowsのVNC接続のコピー」をクリックします。
    ヒント

    Windows用にコピーされた接続文字列には、秘密キー・ファイルの場所を指定するパラメータ-iが含まれています。接続文字列のこのパラメータのデフォルト値は、Windowsクライアントで構成されていないか、秘密キー・ファイルが保存されている場所を表していない可能性がある環境変数を参照しています。次のステップに進む前に、-iパラメータに指定した値を確認し、必要な変更を加えます。
  3. ファイル・パスを秘密キー・ファイルに追加できるように、前のステップでコピーした接続文字列をテキスト・ファイルに貼り付けます。
  4. テキスト・ファイルで、$env:homedrive$env:homepath\oci\console.ppkをコンピュータ上の.ppkファイルへのファイル・パスに置き換えます。このファイル・パスは文字列に2回出現します。両方の場所で置き換えます。
  5. 接続文字列をWindows Powershellに貼り付け、[Enter]を押してセキュアな接続を設定します。
  6. 接続が確立されたら、VNCクライアントを開いて、接続先のホストとしてlocalhostを、使用するポートとして5900を指定します。

ノート

セキュアな接続の警告

接続時に、接続が暗号化されていないことを示す警告がVNCクライアントから表示される場合があります。SSH経由で接続しているため、接続はセキュアであり、この警告は問題になりません。

インスタンス・コンソール接続の終了

シリアル・コンソール接続を終了するには

SSHを使用するとき、新しい行の先頭の~文字はエスケープ文字として使用されます。

  • シリアル・コンソールを終了するには、次のように入力します:

    ~.
  • SSHセッションを一時停止するには、次のように入力します:

    ~^z

    ^文字は[Ctrl]キーを表します。

  • すべてのSSHエスケープ・コマンドを表示するには、次のように入力します:

    ~?
VNCコンソール接続を終了するには
  1. VNCクライアントを閉じます。
  2. ターミナル・ウィンドウまたはPowerShellウィンドウで、CTRL Cと入力します

コンソール接続の使用が終了したら、インスタンスへの接続を削除します。

インスタンスのコンソール接続を削除するには
  1. ナビゲーション・メニューを開き、「コンピュート」をクリックします。「コンピュート」で、「インスタンス」をクリックします。
  2. 関心のあるインスタンスをクリックします。
  3. 「リソース」で、「コンソール接続」をクリックします。
  4. 「アクション」メニュー(アクション・メニュー)をクリックし、「削除」をクリックします。プロンプトが表示されたら確認します。

リソースのタグ付け

リソースにタグを適用すると、ビジネス・ニーズに応じてそれらを整理しやすくなります。リソースの作成時にタグを適用するか、後でリソースを必要なタグで更新します。タグ適用についての一般情報は、リソース・タグを参照してください。

インスタンス・コンソール接続のタグを管理するには
  1. ナビゲーション・メニューを開き、「コンピュート」をクリックします。「コンピュート」で、「インスタンス」をクリックします。
  2. 関心のあるインスタンスをクリックします。

  3. 「リソース」で、「コンソール接続」をクリックします。

  4. 関心のあるコンソール接続について、「アクション」メニュー(アクション・メニュー)をクリックし、「タグの追加」をクリックします。既存のタグを表示するには、「タグの表示」をクリックします。

インスタンス・コンソール接続からのインスタンスのトラブルシューティング

コンピュート・インスタンスのブート・プロセスとインスタンス・コンソール接続を使用してトラブルシューティングできます。トラブルシューティング・オプションは、LinuxおよびWindowsで使用できます。

インスタンス・コンソールを使用したLinuxのトラブルシューティング

次に、Oracle Autonomous Linux 8.x、Oracle Autonomous Linux 7.x、Oracle Linux 9.x、Oracle Linux 8.x、Oracle Linux 7.xおよびOracle Linux Cloud Developer 8.xのいずれかを実行するインスタンスのインスタンス・コンソール・トラブルシューティング・オプションについて説明します。

ヒント

他のLinuxディストリビューションおよびSSHクライアントでは、異なるステップが必要になる場合があります。たとえば、Ubuntuリカバリ・モードの詳細は、リカバリ・モードの使用を参照してください。

インスタンス・コンソールに接続した後で、次のような様々なタスクを実行できます:

  • メンテナンス・モードで起動します。
  • システム構成ファイルを編集します。
  • opcユーザーのSSHキーを追加またはリセットします。
  • opcユーザーのパスワードをリセットします。

これらのタスクでは、メンテナンス・モードでbashシェルに起動する必要があります。

メンテナンス・モードで起動するには
ノート

この手順は、Oracle Linuxイメージにのみ適用されます。
  1. コンソールからインスタンスを再起動します
  2. 使用しているLinuxのバージョンに応じて、次のいずれかを行います。

    • Oracle Autonomous Linux 8.x、Oracle Linux 8.xまたはOracle Linux Cloud Developer 8.xを実行しているインスタンスの場合は、次のステップに従います。
      1. 再起動プロセスが開始したら、すぐにターミナル・ウィンドウに戻り、メニューが表示されるまで[Esc]または[F5]を繰り返し押します。
      2. 表示されたメニューで、「Boot Manager」を選択し、[Enter]を押します。
      3. 「Boot Manager」メニューで、「UEFI Oracle BlockVolume」を選択し、[Enter]を押します。すぐに[Esc]キーを押し、ブート・メニューが表示されるまで押し続けます。コンソール・メッセージがウィンドウに表示され始めた場合は、ブート・メニューにアクセスする機会が失われたため、リ再起動プロセスを再度開始する必要があります。
    • Oracle Autonomous Linux 7.xまたはOracle Linux 7.xを実行しているインスタンスの場合、再起動プロセスが開始されると、ターミナル・ウィンドウに戻り、コンソール・メッセージがウィンドウに表示され始めます。GRUBブート・メニューが表示されたらすぐに、上/下矢印キーを使用して自動ブート・プロセスを停止します。これで、ブート・メニューを使用できるようになります。
  3. ブート・メニューで、メニューの最上位の項目を強調表示し、[e]を押してブート・エントリを編集します。
  4. Linuxのバージョンに応じ、編集モードで、下矢印キーを使用して、次の値で始まる行に到達するまでエントリを下方向にスクロールします:

    • Oracle Autonomous Linux 8.x、Oracle Autonomous Linux 7.x、Oracle Linux 8.xおよびOracle Linux 7.xを実行しているインスタンスの場合は、linuxefiで始まる行まで下にスクロールします。
    • Oracle Linux Cloud Developer 8.xを実行しているインスタンスの場合は、linuxで始まる行まで下にスクロールします。
  5. その行の最後に次を追加します:
    init=/bin/bash
  6. キーボード・ショートカット[Ctrl]+[X]を入力し、ターミナル・ウィンドウからインスタンスを再起動します。

インスタンスが再起動されると、Bashシェルのコマンドライン・プロンプトが表示され、次の手順に進むことができます。

システム構成ファイルを編集するには
  1. Bashシェルで、次のコマンドを実行して、変更するファイルのコンテキストを保持するSElinuxポリシーをロードします:
    /usr/sbin/load_policy -i
  2. 次のコマンドを実行し、読取り/書込み権限でルート・パーティションを再マウントします:
    /bin/mount -o remount, rw /
  3. インスタンスのリカバリを試行するには、必要に応じて構成ファイルを編集します。
  4. 構成ファイルの編集が終了したら、既存のシェルからインスタンスを起動するため、次のコマンドを実行します:
    exec /usr/lib/systemd/systemd

    または、インスタンスを再起動するために、次のコマンドを実行します:

    /usr/sbin/reboot -f
opcユーザーのSSHキーを追加またはリセットするには
  1. Bashシェルで、次のコマンドを実行して、変更するファイルのコンテキストを保持するSElinuxポリシーをロードします:
    /usr/sbin/load_policy -i
  2. 次のコマンドを実行し、読取り/書込み権限でルート・パーティションを再マウントします:
    /bin/mount -o remount, rw /
  3. Bashシェルで、次のコマンドを実行して、opcユーザーのSSHキー・ディレクトリに移動します:
    cd ~opc/.ssh
  4. 次のコマンドを使用して、既存の認可キー・ファイルの名前を変更します:
    mv authorized_keys authorized_keys.old
  5. 次のコマンドを使用して、公開キー・ファイルの内容を新しい公開キー・ファイルで置き換えます:
    echo '<contents of public key file>' >> authorized_keys
  6. 次のコマンドを使用してインスタンスを再起動します:
    /usr/sbin/reboot -f
opcユーザーのパスワードをリセットするには
  1. Bashシェルで、次のコマンドを実行して、変更するファイルのコンテキストを保持するSElinuxポリシーをロードします。このステップは、SSHおよびコンソールを使用してインスタンスにサインインするために必要です。
    /usr/sbin/load_policy -i
  2. 次のコマンドを実行し、読取り/書込み権限でルート・パーティションを再マウントします:
    /bin/mount -o remount, rw /
  3. 次のコマンドを実行して、opcユーザーのパスワードをリセットします:
    sudo passwd opc
  4. 次のコマンドを使用してインスタンスを再起動します:
    sudo reboot -f

インスタンス・コンソールからのWindowsインスタンスのトラブルシューティング

次のWindowsツールは、インスタンス・コンソール接続からのコンピュート・インスタンスのトラブルシューティングに役立ちます。

Windows特殊管理コンソールの使用

Windows Special Administration Console (SAC)を使用すると、シリアル端末からPowerShellコンソールまたはコマンド・プロンプトにアクセスできます。インスタンスのシリアル・コンソールに接続してSACを使用することで、ブート・プロセスを中断し、Windowsをセーフ・モードで起動できます。

SACを使用する場合は、複数のユーザー・セッションまたはチャネルを作成して切り替えることができます。この機能を使用すると、コマンドライン・コマンドを同時に実行している間や設定ログを表示している間に、SACコマンドを使用できます。

シリアル・コンソールでSACを使用するには、まずWindowsサーバーでSACを有効にします。SACをアクティブ化すると、シリアル・ポート上に特殊なコンソールが提供されます。有効にすると、SAC>プロンプトがシリアル出力に表示されます。

PowerShellでSACを有効にするには

インスタンスに接続し、Windows PowerShellで次のコマンドを実行します。

  1. SACを有効にします:
    bcdedit /ems '{current}' on
    bcdedit /emssettings EMSPORT:1 EMSBAUDRATE:115200
  2. ブート・メニューを有効にします:
    bcdedit /set '{bootmgr}' displaybootmenu yes
    bcdedit /set '{bootmgr}' timeout 15
    bcdedit /set '{bootmgr}' bootems yes
  3. インスタンスを再起動して、更新した構成を適用します:
    shutdown -r -t 0
コマンド・プロンプトでSACを有効にするには

インスタンスに接続し、コマンド・プロンプトで次のコマンドを実行します。

  1. SACを有効にします:
    bcdedit /ems {current} on
    bcdedit /emssettings EMSPORT:1 EMSBAUDRATE:115200
  2. ブート・メニューを有効にします:
    bcdedit /set {bootmgr} displaybootmenu yes
    bcdedit /set {bootmgr} timeout 15
    bcdedit /set {bootmgr} bootems yes
  3. インスタンスを再起動して、更新した構成を適用します:
    shutdown -r -t 0
シリアル・コンソールでSACを使用するには

SACが有効になっている場合、SAC>プロンプトがシリアル出力に表示されます。SACコマンドの詳細は、Microsoftドキュメントの緊急管理サービスのツールと設定を参照してください。

  • SACコマンドのリストを表示するには、?と入力してから[Enter]を押します。
  • チャネルを切り替えるには、[Esc]、[Tab]および[<channel number>]を一緒に押します。
  • インスタンスでブート・メニューを有効にし、SSHを介して接続した後に再起動した場合、Windowsブート・メニューがシリアル・コンソール出力に表示されます。次のリストに、ブート・メニューで使用できるコマンドを示します:
    • Enter: ブート・メニューが開始され、オペレーティング・システムが強調表示されている場合、オペレーティング・システムを起動します。
    • Tab: 「ツール」メニューに切り替えます。
    • Esc: ブート・メニューを終了し、インスタンスを再起動します。
    • Esc8またはF8: 選択したアイテムの拡張オプションを表示します。
    • Esc + left arrow: 初期ブート・メニューに戻ります。

Windowsリカバリ・コンソールの使用

Windowsオペレーティング・システムを起動できない、または予期しない再起動が繰り返し発生している問題が発生した場合、Windowsリカバリ環境(WinRE)を使用する効果的な解決策です。この環境は、ディスクの破損、システム・ファイルの欠落または破損、更新の未完了などの一般的な問題のトラブルシューティングおよび修正を支援するように設計されています。

WinREは、次のような特定の条件で自動的に適用されます。

  • Windowsのブートに失敗した2つの試行。
  • ブート完了後、2分間隔で2回の異常終了。
  • ブート後2分以内に2つの再起動が発生します。
  • セキュア・ブートに関連するエラー(Bootmgr.efiの問題を除く)。
  • タッチのみをサポートするデバイスのBitLockerエラー。
  • 手動でアクセス
重要

Windowsリカバリ・コンソールを使用するには、最初にVNCコンソールを設定する必要があります。詳細は、「VNCコンソールへの接続」を参照してください。
ヒント

Windowsリカバリ・パーティションは、Windowsオペレーティング・システムのトラブルシューティング、修復およびリカバリに不可欠なツールおよびリソースを含む、ブート・ディスクの専用セクションです。Windowsリカバリ・コンソールは、Windowsリカバリ・パーティションにあります。

セキュリティに関する考慮事項

Windowsリカバリ・コンソールを使用する場合は、次のセキュリティ上の考慮事項に注意してください。

  • 管理者アカウントを選択してパスワードを入力せずに、ほとんどのツールをWindowsリカバリ・コンソールで実行できます。
  • リカバリ環境にブートすると、ユーザーがボリュームを復号化するキーを持っていないかぎり、暗号化されたファイルにはアクセスできません。
  • デフォルトでは、ネットワークはWindowsリカバリ・コンソールでは無効になっています。必要なときにネットワークを有効にできます。セキュリティを向上させるために、接続が不要な場合はネットワークを無効にします。
Windowsリカバリ・コンソールへのアクセス

Windowsリカバリ・コンソールにアクセスするには、次のステップに従います。

  1. 「再起動」ボタンからアクセスします。
    • Windows画面の左下隅にある「Start」をクリックします。
    • 「Power」オプションに移動します。
    • キーボードの[Shift]キーを押しながら、「再起動」オプションをクリックします。
      ノート

      Shiftキーを押したままにすると、システムは通常の再起動を実行するのではなく、「Advanced Boot Options」メニューにリブートします。
  2. 再起動後、最初の Windowsセットアップ画面で、新しいインストールを続行するのではなく、「コンピュータの修復」を選択します。
  3. 次のメニューで、「トラブルシューティング」を選択します。
  4. コマンド・プロンプトにアクセスするには、「トラブルシューティング」メニューから「コマンド・プロンプト」を選択します。この選択により、コマンドを実行できるWindowsリカバリ・コンソールが開きます。
一般的なWindowsリカバリ・コンソール・コマンドの確認

Windowsリカバリ・コンソールでは、コマンドを使用して、次のようなシステム問題を診断および修復できます。

diskpartコマンド

diskpartを使用して、パーティションを管理します:

diskpart
list disk
select disk X  (Replace X with your disk number)
list partition
select partition Y (Replace Y with your EFI partition number)
assign letter=Z  (Replace Z with an unused letter)
exit

Windowsファイル・システムのチェックと修復

(オプション)ファイル・システム・エラーが疑われる場合(C:をWindowsインストール・ドライブに置き換えます):

chkdsk C: /f /r

ブートファイルの再構築

C:\Windowsを実際のWindowsインストール・パスに置き換え、Z:をEFIパーティション文字に置き換えます。

cd /d Z:\EFI\Microsoft\Boot\
ren BCD BCD.bak
bcdboot C:\Windows /s Z: /f UEFI

bootrec /fixbootの「アクセス拒否」エラーの処理

bootrec /fixbootで「アクセス拒否」エラーが発生した場合は、その前に次のことを試してください。

bootsect /nt60 Z: /force /mbr
ノート

Z:をEFIパーティションの文字に置き換えます。

BCDストアの再作成

BCDの再構築が失敗した場合は、手動で再作成します。

bcdedit /createstore c:\boot\bcd.temp
bcdedit.exe /store c:\boot\bcd.temp /create {bootmgr} /d "Windows Boot Manager"
bcdedit.exe /import c:\boot\bcd.temp
bcdedit /set {default} device partition=C:
bcdedit /set {default} osdevice partition=C:
bcdedit /set {default} path \windows\system32\winload.efi
bcdedit /set {default} systemroot \windows
bcdedit /displayorder {default}

ブートレコード修復の試行

ブート・レコードの修正を試行します。

bootrec /fixmbr
bootrec /fixboot
bootrec /rebuildbcd
重要

これらの手順は、ガイダンスとしてのみ提供されています。これらのステップを実行した後も問題が解決しない場合は、OCIサポートまたはMicrosoftサポート(あるいはその両方)に連絡して支援を受ける必要があります。

コマンド・プロンプトの終了および再起動

exitと入力してコマンド・プロンプトを閉じ、システムを再起動して解決をテストします。

これらのコマンドは、起動の問題、ファイルシステムのエラー、破損したシステムファイルなど、さまざまな問題を解決するのに役立ちます。

Windows Recovery Consoleは、Windowsのトラブルシューティングと修復のための強力なツールです。これらのコマンドとそのアプリケーションをよく理解することは、システムの問題を解決し、Windowsオペレーティングシステムの安定性を確保する際に非常に重要です。

Windowsリカバリ・コンソールを使用したopcユーザー・パスワードのリセット

Windowsリカバリ・コンソールにアクセスし、無効なローカル管理者アカウントを使用してログオンするには、次のステップに従います。

  1. 「スタート」メニューまたはログイン画面で「再起動」ボタンをクリックし、[Shift]キーを押したままWindowsリカバリ・コンソールにアクセスします。
  2. 後続の画面で、「トラブルシューティング」を選択します。
  3. 「詳細設定オプション」を選択します。
  4. 「開始設定」をクリックします。
  5. 「再起動」を選択します。
  6. コンピュータを再起動すると、起動オプションのリストが表示されます。適切なキーを押して、「Safe Mode」を有効にします。
  7. セーフ・モードでは、管理者アカウントのパスワードを設定しなかった場合、Windowsによってパスワードの設定を求めるプロンプトが表示されることがあります。要求されたら、管理者アカウントのパスワードを作成して確認します。
  8. Windowsがセーフモードで実行されていることを示すメッセージが表示されたら、「OK」をクリックします。
  9. 「スタート」ボタンをクリックし、「マイ コンピュータ」を右クリックして「管理」を選択します。
  10. 「コンピュータの管理」ウィンドウで、「ローカル・ユーザーおよびグループ」を展開します。
  11. 「ユーザー」をクリックし、右ペインでOPCアカウントを右クリックします。
  12. OPCアカウントのパスワードをリセットするには、「パスワードの設定」を選択します。
  13. プロンプトに従って、OPCアカウントの新しいパスワードを作成および確認します。

これらのステップを完了すると、OPCアカウントに新しいパスワードが設定され、新しく設定されたパスワードを使用して完全な権限で再度ログインできるため、管理者アカウントを無効にすることをお薦めします。