LoginSignup
4
0

Oracle Cloud: WindowsクライアントからVNCコンソール接続してみてみた

Last updated at Posted at 2022-08-15

コンソール接続を使用して、正常に動作していないインスタンスをリモートからトラブルシューティングできます。例:
  ・ インポートまたはカスタマイズしたイメージが正常に起動しない
  ・ 以前は稼働していたインスタンスが応答しなくなった

インスタンス・コンソール接続には、シリアル・コンソール接続とVNCコンソール接続の2種類があります。
VNCコンソール接続はSSHポート転送を使用して、ローカル・システムからインスタンスのコンソールにアタッチされたVNCサーバーへのセキュアな接続を作成します。

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

ということで、Windows PCから、VNCコンソール接続をしてみてみます。

■ 事前準備

● Puttyインストール

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

● ssh秘密鍵をPutty用.PPKファイルへ変換

コンソール接続作成時にssh鍵(秘密鍵と公開鍵)を事前に作成しておきます。
Windows接続では、puttygenコマンド実行してSSH秘密鍵をplink.exe用に.PPKファイルへ変換して使用する必要があります。

1) puttygen実行
PowerShellコンソールで、puttygenコマンド実行し、PuTTY Key Generator画面を表示
02_Puttygen鍵変換01.jpg

2) PuTTY Key Generator画面
[Conversions]タブから、[Import key]をクリック
02_Puttygen鍵変換02.jpg

3) Load private key画面
変換するSSH秘密鍵を選択し、[開く]をクリック
02_Puttygen鍵変換03.jpg

4) PuTTY Key Generator画面
[Save Private Key]をクリック
02_Puttygen鍵変換04.jpg

5) Save private key画面
ファイル名を指定して[保存]をクリック
ここでは、console.ppk としてファイル名を指定
02_Puttygen鍵変換06.jpg

6) .PPKファイル変換完了
02_Puttygen鍵変換07.jpg

● VNC Clientインストール

ここでは、Real VNC Viewerをインストール
https://www.realvnc.com/en/connect/download/viewer/
03_VNC-Clientインストール.jpg

■ 手順

1) 接続対象OCI Windows Server画面

Oracle Cloud Infrastructureコンソールのインスタンスの詳細ページで、「リソース」の下の「コンソール接続」をクリックします。
10_コンソール接続作成.jpg

2) コンソール接続の作成画面

ssh公開鍵をアップロードし、[コンソール接続の作成]をクリック
10_コンソール接続作成02のコピー.jpg

3) コンソール接続画面

右端の「アクション」メニューをクリックし、「WindowsのVNC接続のコピー」をクリックします。
10_コンソール接続作成04.jpg

4) コンソール接続の作成画面

ファイル・パスを秘密キー・ファイルに追加できるように、前のステップでコピーした接続文字列をテキスト・ファイルに貼り付けます。

Start-Job { Echo N | plink.exe -i $env:homedrive$env:homepath\oci\console.ppk -N -ssh -P 443 -l ocid1.instanceconsoleconnection.oc1.ap-tokyo-1.anxhiljrssl65iqc7ucck3o4pybtf7ltmj3qllzs5erpgltbovonwfhumrma -L 5905:ocid1.instance.oc1.ap-tokyo-1.anxhiljrssl65iqcx5kcq3biztm6kzhdsqgn5vyg7immyipy5xbrfomlcw3q:5905 instance-console.ap-tokyo-1.oci.oraclecloud.com }; sleep 5; plink.exe -i $env:homedrive$env:homepath\oci\console.ppk -N -L 5900:localhost:5900 -P 5905 localhost -l ocid1.instance.oc1.ap-tokyo-1.anxhiljrssl65iqcx5kcq3biztm6kzhdsqgn5vyg7immyipy5xbrfomlcw3q

5) メモ帳画面

テキスト・ファイルで、$env:homedrive$env:homepath\oci\console.ppkをコンピュータ上の.ppkファイルへのファイル・パスに置き換えます。このファイル・パスは文字列に2回出現します。両方の場所で置き換えます。

ここでの.PPKファイルパスは次になります。

.PPKファイルパス
C:\Users\opc\Downloads\ssh\console.ppk
変換後
Start-Job { Echo N | plink.exe -i C:\Users\opc\Downloads\ssh\console.ppk -N -ssh -P 443 -l ocid1.instanceconsoleconnection.oc1.ap-tokyo-1.anxhiljrssl65iqc7ucck3o4pybtf7ltmj3qllzs5erpgltbovonwfhumrma -L 5905:ocid1.instance.oc1.ap-tokyo-1.anxhiljrssl65iqcx5kcq3:5905 instance-console.ap-tokyo-1.oci.oraclecloud.com }; sleep 5; plink.exe -i C:\Users\opc\Downloads\ssh\console.ppk -N -L 5900:localhost:5900 -P 5905 localhost -l ocid1.instance.oc1.ap-tokyo-1.anxhiljrssl65iqcx5kcq3

6) PowerShell画面

接続文字列をWindows Powershellに貼り付け、[Enter]を押してセキュアな接続を設定します。

PS C:\Users\opc> Start-Job { Echo N | plink.exe -i  C:\Users\opc\Downloads\ssh\console.ppk -N -ssh -P 443 -l ocid1.instanceconsoleconnection.oc1.ap-tokyo-1.anxhiljrssl65iqc2nblpdc62ajc5dw4futz3kiibr5khhvknbg3i7vmu7ca -L 5905:ocid1.instance.oc1.ap-tokyo-1.anxhiljrssl65iqcx5kcq3:5905 instance-console.ap-tokyo-1.oci.oraclecloud.com }; sleep 5; plink.exe -i C:\Users\opc\Downloads\ssh\console.ppk -N -L 5900:localhost:5900 -P 5905 localhost -l ocid1.instance.oc1.ap-tokyo-1.anxhiljrssl65iqcx5kcq3

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
3      Job3            BackgroundJob   Running       True            localhost             Echo N | plink.exe -i...
Using username "ocid1.instance.oc1.ap-tokyo-1.anxhiljrssl65iqcx5kcq3".
Access granted. Press Return to begin session.

7) VNC Client画面

接続が確立されたら、VNCクライアントを開いて、接続先のホストとしてlocalhostを、使用するポートとして5900を指定します。
11_VNC実行02.jpg

8) VNC接続完了

11_VNC実行04.jpg

■ 参考

インスタンス・コンソール接続を使用したインスタンスのトラブルシューティング
WindowsでPowerShellを使用するインスタンス上のVNCサーバーへのセキュア・トンネルを設定するには

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0