Linuxインスタンスへの接続
Secure Shell (SSH)接続を使用して、実行中のLinuxインスタンスに接続します。
Linuxインスタンスに接続するステップは、接続元のオペレーティング・システムによって異なります。
ほとんどのUnixスタイル・システムには、デフォルトでSSHクライアントが含まれています。Windows 10およびWindows Server 2019システムには、通常、OpenSSHクライアントが含まれます。これは、Oracle Cloud Infrastructureによって生成されたSSHキーを使用してインスタンスを作成した場合に必要です。その他のWindowsバージョンの場合、PuTTYという無料のSSHクライアントをhttp://www.putty.orgからダウンロードできます。
トラブルシューティングについては、「SSH接続のトラブルシューティング」を参照してください。権限については、インスタンスの操作に必要なIAMポリシーを参照してください。
SSHキーなし:ホストが接続するには、インスタンスにSSHキーが必要です。SSHキーなしでインスタンスを作成した場合は、次のいずれかを実行します:
- インスタンスを終了し、SSHキーを含む新しいインスタンスを起動します(インスタンスの作成を参照)。
- インスタンスを停止し、ブート・ボリュームを新しいインスタンスにアタッチして、新しいインスタンスにSSHを構成します。
- シリアル・コンソールを使用してメンテナンス・モードを起動し、opcユーザーのSSHキーを追加またはリセットするか、opcユーザーのパスワードをリセットします。
開始する前に
Linuxインスタンスに接続するには、次の情報が必要です:
- パブリックIPアドレス: インスタンスのパブリックIPアドレス。このアドレスは、コンソールのインスタンスの詳細ページで取得できます。ナビゲーション・メニューを開き、「コンピュート」をクリックします。「コンピュート」で、「インスタンス」をクリックします。次に、インスタンスを選択します。または、Core Services APIのListVnicAttachments操作とGetVnic操作を使用することもできます。
- ユーザー名: インスタンスのデフォルトのユーザー名。Oracle LinuxまたはCentOSプラットフォーム・イメージを使用してインスタンスを作成する場合、ユーザー名は
opc
です。Ubuntuプラットフォーム・イメージを使用してインスタンスを作成する場合、ユーザー名はubuntu
です。 - SSH秘密キー: インスタンスの作成時に使用したSSHキー・ペアの秘密キー部分のフル・パス。キー・ペアの詳細は、Linuxインスタンスでのキー・ペアの管理を参照してください。
- SSHキーが作成またはアップロードされたことを確認するには、インスタンスの作成を参照してください。
- SSH権限: SSHフォルダおよびキーの権限が、次の項の説明に従ってOSに対して正しく設定されていることを確認してください。
UNIXスタイル・システムからLinuxインスタンスへの接続
OpenSSH 9.0を使用したmacOS Venturaからの接続: macOS Ventura (バージョン13)を実行しているクライアントまたはOpenSSH 9.0を実行しているクライアントからインスタンスに接続すると、接続の問題が発生する可能性があります。詳細および回避策については、既知の問題「OpenSSH 9.0を使用したmacOS VenturaでのSSH接続の問題」を参照してください。
-
次のコマンドを使用して、自分のみがファイルを読み取ることができるようにファイルのアクセス権を設定します:
chmod 400 <private_key_file>
<private_key_file>は、アクセスするインスタンスに関連付けられた秘密キーを含むファイルのフルパスおよび名前です。
-
次のSSHコマンドを使用してインスタンスにアクセスします。
ノート
次の例をコピーして、正しい文字が使用されていることを確認します。間違った文字がssh -i
で使用されている場合、Could not resolve hostname ...: No such host is known
などのエラーが発生することがあります。ssh -i <private_key_file> <username>@<public-ip-address>
<private_key_file>は、アクセスするインスタンスに関連付けられた秘密キーを含むファイルのフルパスおよび名前です。
<username>は、インスタンスのデフォルトのユーザー名です。Oracle LinuxイメージとCentOSイメージの場合、デフォルトのユーザー名は
opc
です。Ubuntuイメージの場合、デフォルトのユーザー名はubuntu
です。<public-ip-address>は、コンソールから取得したインスタンスのIPアドレスです。
- このインスタンスに初めて接続する場合は、キーのフィンガープリントを受け入れる必要があります。フィンガープリントを受け入れるには、yesと入力し、[Enter]を押します。
- シェル・プロンプトで
exit
と入力し、セッションを終了します。
OpenSSHを使用したWindowsシステムからLinuxインスタンスへの接続
Oracle Cloud Infrastructureによって生成されたキー・ペアをインスタンスで使用する場合は、次の手順を使用します。
-
このキー・ペアを初めて使用する場合は、自分のみがファイルを読み取ることができるようにファイル権限を設定する必要があります。次を行います:
- Windowsエクスプローラで秘密キー・ファイルに移動し、ファイルを右クリックして「プロパティ」をクリックします。
- 「セキュリティ」タブで、「詳細設定」をクリックします。
- 「権限」タブの「権限エントリ」で、「プリンシパル」の下に自分のユーザー・アカウントが表示されていることを確認します。
- 「継承の無効化」をクリックし、「継承されたアクセス許可をこのオブジェクトの明示的なアクセス許可に変換します」を選択します。
- 「権限エントリ」で、自分のユーザー・アカウントではない各権限エントリを選択し、「削除」をクリックします。
- 自分のユーザー・アカウントのアクセス許可が「フル コントロール」であることを確認します。
- 変更を保存します
-
インスタンスに接続するには、Windows PowerShellを開き、次のコマンドを実行します:
ノート
次の例をコピーして、正しい文字が使用されていることを確認します。間違った文字がssh -i
で使用されている場合、Could not resolve hostname ...: No such host is known
などのエラーが発生することがあります。ssh -i <private_key_file> <username>@<public-ip-address>
<private_key_file>は、アクセスするインスタンスに関連付けられた秘密キーを含む
.key
ファイルのフルパスおよび名前です。<username>は、インスタンスのデフォルトのユーザー名です。Oracle LinuxイメージとCentOSイメージの場合、デフォルトのユーザー名は
opc
です。Ubuntuイメージの場合、デフォルトのユーザー名はubuntu
です。<public-ip-address>は、コンソールから取得したインスタンスのIPアドレスです。
- このインスタンスに初めて接続する場合は、キーのフィンガープリントを受け入れる必要があります。フィンガープリントを受け入れるには、yesと入力し、[Enter]を押します。
- シェル・プロンプトで
exit
と入力し、セッションを終了します。
PuTTYを使用したWindowsシステムからLinuxインスタンスへの接続
Oracle Cloud Infrastructureによって生成されたSSH秘密キー・ファイルは、PuTTYと互換性がありません。インスタンス作成プロセス中に生成された秘密キー・ファイルを使用する場合は、PuTTYで使用してインスタンスに接続する前に、そのファイルを.ppk
ファイルに変換する必要があります。
生成された.key秘密キー・ファイルを変換します:
-
PuTTYgenを開きます。
-
「ロード」をクリックし、インスタンスの作成時に生成された秘密キーを選択します。キー・ファイルの拡張子は
.key
です。 -
「秘密キーの保存」をクリックします。
-
キーの名前を指定します。新しい秘密キーの拡張子は
.ppk
です。 -
「保存」をクリックします。
ノート
PuTTYgenでは.key
ファイルは上書きされませんが、.ppk
拡張子を持つ同じ名前の追加ファイルが作成されます。
.ppk秘密キー・ファイルを使用してLinuxインスタンスに接続します:
PuTTYキー・ジェネレータを使用して作成したキー・ペアをインスタンスで使用する場合は、次の手順を使用します。
- PuTTYを開きます。
-
「Category」ペインで、「Session」を選択して次のように入力します:
-
ホスト名(またはIPアドレス):
<username>@<public-ip-address>
<username>は、インスタンスのデフォルトのユーザー名です。Oracle LinuxイメージとCentOSイメージの場合、デフォルトのユーザー名は
opc
です。Ubuntuイメージの場合、デフォルトのユーザー名はubuntu
です。<public-ip-address>は、コンソールから取得したインスタンスのパブリックIPアドレスです
- Port: 22
- 接続タイプ: SSH
-
- 「Category」ペインで、「Window」を展開してから「Translation」を選択します。
- 「Remote character set」メニューで、「UTF-8」を選択します。Linuxベース・インスタンスでのデフォルト・ロケール設定はUTF-8で、これによって同じロケールを使用するようPuTTYが構成されます。
- 「Category」ペインで、「Connection」、「SSH」、「Auth」の順に展開し、「Credentials」をクリックします。
-
「Browse」をクリックして
.ppk
秘密キー・ファイルを選択します。 -
「Open」をクリックしてセッションを開始します。
インスタンスへの接続が初めての場合、サーバーのホスト・キーがレジストリにキャッシュされていないというメッセージを受信することがあります。「Yes」をクリックして接続を続行します。
- シェル・プロンプトで
exit
と入力し、セッションを終了します。
接続が失敗し、プロキシの背後にいない場合は、PuTTY構成の「プロキシ・タイプ」が「なし」に設定されていることを確認します。プロキシの背後にある場合は、プロキシ・タイプを選択し、プロキシ・ホスト名とポート番号を入力します。その他のPuTTYの問題は、PuTTYツールの更新も参照してください。