Oracle Cloud Always FreeにSSH接続する手順

Oracle Cloud Always FreeにSSH接続する手順 Oracle Cloud

前回まででOracle Cloud上にインスタンス(サーバー)を立ち上げることができました。次はいよいよOracle Cloud Always Free のインスタンスに、手元の Windows から SSH接続する手順を紹介します。サーバーを作っただけでは、まだ「持っているだけ」です。入ってみて、はじめて使えるようになります。

前回までをご覧になっていない方は以下の記事をご覧ください。

回 内容
1 Oracle Cloud Always Free のサインアップ手順
2 Oracle Cloud Always Free のインスタンス作成手順
3 この記事(SSH接続の手順)

この記事では、実際の画面つきで、SSH接続の流れを順番に書きます。初回に出る確認メッセージの意味と、都度のログインの手間を省いて「ssh oracle」と入力する だけで接続できるようにする設定も、あわせて紹介します。

SSH接続の結論:公開IPと秘密鍵があれば、コマンド1本で入れる

先に結論です。SSH接続の流れは、次の5つです。

順番 やること ひとこと
1 コンソールで、公開IPを確認 インスタンス一覧の「Public IP」に出る
2 Test-NetConnection で、ポート22の通りを確認 TcpTestSucceeded : True なら、道はつながっている
3 ssh -i 秘密鍵 ubuntu@公開IP で接続 初回だけ、確認メッセージに yes と答える
4 exit で抜ける 2回目からは、確認なしで入れる
5 config に書いて、ssh oracle だけで入る 長いコマンドを、毎回打たなくて済む

僕のインスタンスは、Ubuntu 24.04 の Always Free です。A1(ARM)の空きが出なかったので、AMD(x86_64)のインスタンスで進めました。画面は、2026年11月3日時点のものです。画像は、公開IPなどをぼかしています。

SSH接続の前に:公開IP・秘密鍵・ユーザー名をそろえる

SSH接続の前に、手元にそろえるものは、この3つです。

用意するもの 内容
公開IPアドレス インスタンスの一覧か、詳細の画面で確認する。付いていなければ、あとから割り当てる
秘密鍵 インスタンスを作るときに保存した .key のファイル。公開鍵(.pub)ではない
ユーザー名 Ubuntu のイメージは ubuntu。Oracle Linux のイメージは opc

ユーザー名は、Oracle の公式ドキュメントに、イメージごとに書かれています。ここを間違えると、鍵が合っていても入れません。ごはんでいえば、予約の名前が違うと、席が空いていても通してもらえない、という感じです。

SSH接続の手順1:コンソールで公開IPを確認する

コンソールのメニューから、「Compute」→「Instances」を開きます。

SSH接続の準備。メニューの Compute から Instances を開く

インスタンスの一覧に、状態(Running)と、Public IP が出ています。名前の横には、「Always Free」の印が付いています。この Public IP が、接続先のアドレスです。

SSH接続の準備。インスタンスの一覧で、状態が Running で、Public IP が表示されている

SSH接続の手順2:ポート22が通るかを先に確かめる

いきなり入ろうとして失敗すると、鍵が悪いのか、道が悪いのか、分かりません。そこで、先に道だけを確かめます。PowerShell で、次のコマンドを打ちます。

Test-NetConnection <公開IP> -Port 22

結果に、TcpTestSucceeded : True と出れば、ポート22まで届いています。

SSH接続の事前確認。Test-NetConnection で、ポート22の TcpTestSucceeded が True

False のときは、公開IPが付いているか、IPの打ち間違いがないかを、先に確かめてください。

SSH接続の手順3:秘密鍵の場所を確認する

次に、秘密鍵の場所を確かめます。僕は、インスタンスを作るときに保存した2つのファイルを、ホームフォルダーの .ssh フォルダーに置いています。.key のほうが秘密鍵、.key.pub のほうが公開鍵です。

SSH接続に使う鍵のファイル。.ssh フォルダーに、秘密鍵(.key)と公開鍵(.key.pub)がある

秘密鍵は、人に見せない、送らない、ネットに載せないのが鉄則です。公式ドキュメントには、Windows では、秘密鍵のファイルのアクセス権を、自分のアカウントだけに絞る手順も書かれています。接続を拒否されたときは、ここも疑ってください。

SSH接続の手順4:初回は、確認メッセージに yes と答える

準備ができたので、接続します。コマンドは、次の形です。

ssh -i "$HOME\.ssh\ssh-key-2026-11-01.key" ubuntu@<公開IP>

-i のあとが秘密鍵のファイル、ubuntu@ のあとが公開IPです。初回は、次のようなメッセージが出ます。

SSH接続の初回。ホストの真正性を確認するメッセージが出て、入力を待っている

「The authenticity of host … can’t be established」は、「このサーバーに会うのは初めてで、本物か確認できません」という意味です。続けて、フィンガープリント(サーバーの指紋)が出ます。自分が作ったサーバーのIPであることを確認して、yes と打ちます。

SSH接続の初回。確認メッセージに yes と入力する

つながると、「Welcome to Ubuntu 24.04.5 LTS」と出て、プロンプトが ubuntu@instance-…:~$ に変わります。これで、サーバーの中に入れました。

SSH接続に成功した画面。Ubuntu 24.04.5 LTS のメッセージが出て、プロンプトがサーバーのものに変わった

Permanently added … to the list of known hosts は、「このサーバーを、知っているサーバーの一覧に登録した」という意味です。登録先は、手元の .ssh フォルダーの known_hosts です。

SSH接続を終えるときと、2回目以降

サーバーから出るときは、exit と打ちます。

SSH接続の終了。exit と打つと、Connection closed と出て、手元の PowerShell に戻る

もう一度、同じコマンドで入ってみます。2回目は、確認メッセージが出ません。 「Last login」(前回のログイン日時)が出て、すぐに入れました。

SSH接続の2回目。確認メッセージは出ず、Last login が表示されてすぐに入れる

確認が出なくなったのは、初回に、サーバーの指紋が known_hosts に登録されたからです。

SSH接続で登録される known_hosts。.ssh フォルダーにファイルができている

SSH接続を楽にする:config に書いて、ssh oracle だけで入る

毎回、鍵の場所とユーザー名とIPを打つのは、面倒です。そこで、.ssh フォルダーに、config というファイルを作ります。拡張子は付けません(config.txt にしない)。

SSH接続の設定ファイル。.ssh フォルダーに config という名前のファイルを作る

中身は、次の5行です。

Host oracle
    HostName <公開IP>
    User ubuntu
    IdentityFile ~/.ssh/ssh-key-2026-11-01.key
    IdentitiesOnly yes
SSH接続の config の中身。Host、HostName、User、IdentityFile、IdentitiesOnly を書く
行 意味
Host oracle 接続するときの「あだ名」。好きな名前でよい
HostName 接続先の公開IP
User ログインするユーザー名(Ubuntu は ubuntu)
IdentityFile 使う秘密鍵のファイル
IdentitiesOnly yes ここで指定した鍵だけを使う

保存したら、あとは ssh oracle と打つだけです。

SSH接続を短くした画面。ssh oracle だけで、サーバーに入れる

SSH接続でハマりやすい点:入れないときの確認先

入れないときは、次の順に確かめます。公式ドキュメントの確認点を、僕の言葉で整理しました。

症状・原因の候補 確認すること
ポート22が通らない Test-NetConnection が False。公開IPが付いているか、IPの打ち間違いがないか
ユーザー名が違う Ubuntu は ubuntu、Oracle Linux は opc
別の鍵を指定している インスタンスを作るときに保存した鍵か。作り直した鍵や、別のサーバーの鍵ではないか
鍵のアクセス権 他の人が読める状態だと、拒否される。Windows は、自分のアカウントだけにする
鍵をなくした 公式ドキュメントでは、新しいインスタンスを作って、鍵を指定し直す必要がある、とされている

鍵をなくすと、作り直しになります。インスタンスの作成手順の記事でも書いたとおり、秘密鍵は、保存したあとの管理が大事です。

SSH接続まで来たので、シリーズはいったんここまで

Oracle Cloud Always Free のシリーズは、これで、サインアップ、インスタンス作成、SSH接続の3つがそろいました。

回 内容
1 Oracle Cloud Always Free のサインアップ手順
2 Oracle Cloud Always Free のインスタンス作成手順
3 この記事(SSH接続の手順)

「作る」から「入る」まで来ました。次は、このサーバーで何をするか、です。ごはんでいえば、ようやく厨房に入れたところ。何を作るかは、皆さん自身です。楽しんでいきましょう!

もっと別のIT系の話題は、当ブログの技術ネタからどうぞ。

参考

SSH接続の要点を1枚にまとめた図

ITもごはんも、腹八分目が長続きのコツ!

コメント