GPUインスタンス接続に関するトラブルシューティング

1. インスタンスに接続できない場合

インスタンスに接続できない場合は、次のポイントをご確認ください。

1-1. インスタンスの起動確認

コントロールパネルの「インスタンス管理」- 「インスタンス一覧」から、該当インスタンスの「ステータス」が「起動中」になっているかを確認します。
「停止中」の場合は隣の「起動/停止」ボタンが「起動」になっているのでクリックし、インスタンスを起動します。

1-2. SSHコマンドおよびIPアドレスの確認

インスタンスに接続するSSHコマンドに間違いがないかを確認します。
SSHコマンドは手打ちだと間違えることがありますので、コピー&ペーストすることを推奨します。

本手順では、C:\Users\[user名]\.ssh\ に秘密鍵を格納したケースで説明します。

ターミナル1を起動し、カレントディレクトリが C:\Users\[user名]> になっている事を確認し、以下のコマンドを実行します。

ssh -L 20122:インスタンスIPアドレス:22 -l user as-highreso.com -p 30022 -i .ssh/ackey.txt
~省略~
This is access server.
access-server:~$

このときコントロールパネルに表示されているインスタンスIPアドレスとSSHコマンドのIPアドレスが一致しているか確認してください。
コントロールパネルでインスタンスを停止し、起動するとインスタンスのIPアドレスが変更になることがあります。

コマンド末尾のackey.txtが接続元PCの.sshフォルダに保存したアクセスサーバー用秘密鍵のファイル名と一致しているか確認します。(デフォルトのファイル名はackey.txt)

ターミナル1を開いたままターミナル2を起動し、カレントディレクトリが C:\Users\[user名]> になっている事を確認し、以下のコマンドを実行します。

本手順では、インスタンス名をnttpc-1としたケースで説明します。

ssh user@localhost -p 20122 -i .ssh\mykey.txt
~省略~
user@nttpc-1:~$

コマンド末尾のmykey.txtが接続元PCの.sshフォルダに格納したインスタンス用秘密鍵のファイル名と一致しているか確認します。(デフォルトのファイル名はmykey.txt)

1-3. known_hostsの削除

サーバの構成を変えたり、ネットワーク周りの設定を変更したりした後にsshでそのサーバにログインしようとすると「WARNING:REMOTE HOST IDENTIFICATION HAS CHANGED」のメッセージが表示され、サーバに接続できない場合があります。

その場合、接続元PCでターミナルを開き、カレントディレクトリが C:\Users\[user名]> になっている事を確認し、次のコマンドを実行し、known_hostsを削除します。

ssh-keygen -R [localhost]:20122
# HOST [localhost]:20122 found: line 2
C:\Users\[user名]/.ssh/known_hosts updated.
Original contents retained as C:\Users\[user名]/.ssh/known_hosts.old

know_hostsを削除した後に改めてSSH接続のコマンドを実行します。

1-4. 社内ネットワークにおける制限の確認

社内ネットワークのおいて、プロキシサーバーやファイアウォール等の設定で外部への接続が制限されているケースがあります。
社外のネットワークから接続をトライしてインスタンスに接続できる場合、社内ネットワークで制限されている可能性が高いですので、社内のネットワーク管理者へご確認ください。

1-5. 秘密鍵の格納場所とカレントディレクトリの確認

接続元PCの.sshフォルダにアクセスサーバー用秘密鍵とインスタンス用秘密鍵が格納されているかを確認します。
デフォルトの設定では、アクセスサーバー用秘密鍵のファイル名は「ackey.txt」、インスタンス接続用秘密鍵のファイル名は「mykey.txt」になります。

1-6. インスタンスに設定している秘密鍵の確認

インスタンスに設定している秘密鍵に対応した秘密鍵を使い、接続元PCからインスタンスに接続する必要があります。
異なる秘密鍵でアクセスした場合、以下のようなエラーが表示されます。

ssh user@localhost -p 20122 -i .ssh\mykey.txt
user@localhost: Permission denied (publickey).

その場合、インスタンスに設定されている秘密鍵に一致した秘密鍵を再度ダウンロードし、.sshフォルダに格納する必要があります。
以下、秘密鍵を再度ダウンロードする手順をご紹介します。

コントロールパネルの「インスタンス管理」- 「インスタンス一覧」から、「秘密鍵」の名前を確認します。

コントロールパネルの「秘密鍵」- 「登録済みインスタンス用秘密鍵」から、上記手順で確認した秘密鍵名(本手順での秘密鍵名は、defaultinskey)の横にある「インスタンス用秘密鍵ダウンロード」ボタンをクリックします。

.sshフォルダに秘密鍵(デフォルトの設定では「mykey.txt」)を保存します。

念のため古い秘密鍵はファイル名を変え保存しておくことをお勧めします。

1-7. Unprotected Private Key Fileの警告が出た場合

ssh接続の際に、Unprotected Private Key File (保護されていないプライベートキーファイル)の警告がでることがあります。
接続元PCがWindowsの場合、秘密鍵をログインしているユーザのユーザフォルダ配下に置くことで解消されます。

[user名]で操作する場合、C:\Users\[user名] 配下に.sshフォルダを作成し、その配下に秘密鍵を置くことで解消されます。

その他の関連記事を見る