対象の小さな構成を確認する
ホーム・リージョンのAMD VM.Standard.E2.1.Microを1台、メモリ1 GB、Ubuntu 24.04 LTSのx86イメージで使います。小さな管理環境の例で、アプリの容量を測定した推奨値ではありません。コンソールでイメージとシェイプの無料対象を確認します。
VM、ネットワーク、コンソール接続を管理できる権限と、手元のOpenSSHが必要です。ローカルの例はLinux、macOS、WSLのシェル向けです。申し込み、空き容量、継続利用は保証されず、アイドルVMは回収される場合があります。先に無料枠と試用条件を比較してください。
作成前にSSH鍵を保存する
手元のコンピューターで実行します。同名ファイルがあれば上書きせず別名に統一し、パスフレーズを設定してください。
mkdir -p ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa -b 3072 -f ~/.ssh/oci-ubuntu-free
chmod 600 ~/.ssh/oci-ubuntu-free
cat ~/.ssh/oci-ubuntu-free.pub秘密鍵は安全に保管し、アップロードするのは.pubだけです。ユーザー公開鍵はログインする人、後で確認するホスト鍵は接続先サーバーを識別します。
コンパートメント、地域、名前、識別子を台帳に残します。ubuntu-free-sshという例の名前は今回の新規VMだけに使います。名前だけではOCIリソースを一意に区別できない場合があります。
公開サブネットとSSH制限を用意する
Networkingで実験専用VCNを作ります。例は10.20.0.0/16、リージョナルな公開サブネットは10.20.1.0/24です。既存ネットワークと接続するなら重複を避けます。同VCNでインターネット・ゲートウェイを作成して有効にします。
サブネットのルート表に宛先0.0.0.0/0、対象をそのゲートウェイとして追加します。経路だけでは公開IPは付きません。VMには公開IPv4も必要です。
セキュリティ・リストのステートフル受信ルールを、現在の手元の公開IPv4/32、TCP、送信元ポートAll、宛先22にします。Wi-FiのプライベートIPではありません。必要な標準の送信ルールとICMPは残します。
この専用リストにある全世界向けSSHルールを置き換え、付属する全リストとNSGも確認します。狭いルールを足しても別の広い許可は無効になりません。この例ではNSG、NAT、ロードバランサーは追加しません。接続元の公開IPが変われば/32を更新します。
Ubuntuインスタンスを作成する
ホーム・リージョンのCompute → Instances → Create instanceを開き、対象コンパートメントでubuntu-free-sshを作成します。
表を横にスクロールすると、残りの項目を確認できます。
| 設定 | この手順の選択 |
|---|---|
| イメージ | 対象のCanonical Ubuntu 24.04 LTS、x86/amd64 |
| シェイプ | AMD VM.Standard.E2.1.Micro、1 GB RAM |
| ブート・ボリューム | 50 GB、対象性能設定と残り枠を確認 |
| ネットワーク | 専用の公開サブネットと公開IPv4 |
| SSH鍵 | oci-ubuntu-free.pub |
| 追加項目 | 追加ディスク、有料イメージソフト、任意の管理サービスなし |
ホーム・リージョンのブート/ブロック保存枠200 GBには既存ボリュームも含みます。試用クレジットで費用が隠れていることは継続無料の根拠ではありません。台帳と費用確認を完了します。
次の内容をローカルのテキストファイルに保存し、Advanced options → Management → Initialization scriptから渡します。初回起動のcloud-initがホスト公開鍵と指紋をコンソールへ出力します。秘密鍵は含みません。
#cloud-config
ssh:
emit_keys_to_console: true無料対象の容量がなければ有料シェイプへ無意識に変更せず、選択を見直します。RunningになったらVMのOCID、ブート・ボリュームのOCID、公開IPv4を保存します。
起動ログでサーバーの鍵を確認する
最初のSSH確認に答える前にOCIへログインし、正しいVMを開きます。OS ManagementまたはResourcesのConsole connectionからLaunch Cloud Shell connectionを選びます。履歴取得に必要な接続を作る操作で、権限が必要です。
Console history → View current historyで初回起動の出力を保存します。cloud-initのSSH HOST KEY FINGERPRINTS欄から、ゲストOSのホスト鍵の種類とSHA256指紋を記録します。認証済みユーザー鍵の指紋と取り違えないでください。
Console connectionリソースの指紋はOCIのコンソール接続先用であり、通常のSSHで接続するゲストの鍵ではありません。起動記録がなければ提供元のコンソール復旧手順を使います。未検証のssh-keyscanを代用しないでください。
手元から接続しUbuntuを調べる
203.0.113.20は文書用の例です。VMの公開IPv4に置き換えて手元で実行し、鍵の種類とSHA256指紋が起動ログと一致した場合だけ承認します。
ssh -o StrictHostKeyChecking=ask -i ~/.ssh/oci-ubuntu-free ubuntu@203.0.113.20Ubuntuイメージのユーザーはubuntuです。opcではありません。ログイン後、VPS内で読み取り用の確認を実行します。
cloud-init status --wait
cat /etc/os-release
dpkg --print-architecture
free -h
df -h /
sudo ss -lntp
sudo iptables -Scloud-initの完了、Ubuntu 24.04、amd64、メモリとディスク、SSHの待受を確認します。成功してもWebサイトの公開やアプリの処理能力が確認できたわけではありません。
イメージのファイアウォールを保って更新する
cloud-initが正常完了してからパッケージ情報を更新し、適用する内容を確認します。
sudo apt update
sudo apt upgrade現在の接続を開いたまま2本目のSSHログインを確認します。再起動が必要なら、まだ試験用の段階でsudo rebootを実行し、復帰後に基本確認を繰り返します。この操作でSSHが切れるのは正常です。
このOCI UbuntuイメージではUFWをインストール・有効化しません。永続するファイアウォールと重要なiSCSIルールに干渉するため、既存ルールを保持します。Web公開にはOCI側とゲストOS側の両方に適切な許可が必要です。
表を横にスクロールすると、残りの項目を確認できます。
| 問題 | 最初に確認 |
|---|---|
| タイムアウト | 公開IP、ゲートウェイ、現在の/32、全ネットワークルール |
| Permission denied (publickey) | ubuntuユーザー、秘密鍵、登録公開鍵 |
| ホスト鍵の不一致 | VM識別子と信頼できる起動ログ |
| 初期構成・パッケージエラー | コンソール履歴、cloud-init、リポジトリ通信 |
復旧用コピーを残し、実験だけを終了する
アプリのデータと再構築メモはVM外へ保存し、別環境で戻せることを確認します。ここまでの作業は管理アクセスの確認で、本番準備の完了を意味しません。静的ファイルはバックアップ復元の練習で試せます。
終了時は必要なデータを書き出し、記録したコンパートメントで正しいOCIDのVMをTerminateします。ブート・ボリュームは標準では保持されます。そのボリュームが不要で書き出しを検証済みの場合だけ、永久削除を選びます。
保持ボリューム、バックアップ、アドレス、コンソール接続を台帳と照合します。専用サブネットとゲートウェイは他の利用がないことを確認してから整理します。実験1件のためにアカウント全体を削除せず、残るリソースと利用量を再確認してください。
よくある質問
自分のPCを起動したままにする必要がありますか?
これは提供元で動く公開IP付きVMです。手元のPCがサーバーになるわけではありません。SSH接続元だけを手元の公開IPに制限します。
無料シェイプに空きがありません。
待つか、比較した別のプログラムを検討します。別シェイプ、別地域、大きい構成も無料対象だと推測しないでください。
接続できたらサイトも公開されていますか?
いいえ。ここではUbuntuとSSHを確認します。Webサーバー、公開ポート、DNS、HTTPSは次の作業です。
VPSuntuによる関連資料の確認日は2026年9月25日です。アカウントを作成した実証テストや無料サービスの保証ではありません。新規VMを使い、自分のアカウントの対象条件を確認してください。