安全な接続経路

まず身元を確認してからクラウドMacへ接続

リモートデスクトップはXcode、GUIデバッグ、macOSセッションの操作に使用し、SSHはスクリプト、ファイル処理、自動化、CI/CD管理に使用します。どちらもコンソールの同じノード情報から始めますが、確認方法は異なります。

  • リモートデスクトップではノード、アカウント名、セッションの身元を確認
  • SSHの初回接続ではホストフィンガープリントを必ず照合
  • 専用キーの認証に成功したら一時認証情報を無効化
2種類
主な接続方法
6項目
初回接続の確認項目
1件
コンソールのアクセス情報
CONNECTION PASS

初回接続チェックボード

未確認
グラフィカルセッション Xcode、デバッグ、デスクトップ操作
リモートデスクトップ
コマンドチャネル スクリプト、ファイル、runner管理
SSH
ノードアドレス
注文情報から取得
ポート
プロトコルに応じて入力
ホストフィンガープリント
初回接続時に照合
長期認証
専用SSHキー
確認の順序 アドレス → ポート → 身元 → フィンガープリント → セッション
接続方法の概要

GUI操作はデスクトップ、自動化はSSHに任せる

2つの接続を同時に使用できます。デスクトップセッションは画面操作を担い、SSHは安定して記録可能なコマンド処理を担います。すべての作業を1つのセッションに集中させないでください。

グラフィカルワークフロー

リモートデスクトップ

Xcodeの起動、シミュレータの実行、GUIの確認、署名関連ファイルの処理、画面による確認が必要なデバッグに適しています。接続時はノードアドレス、セッションアカウント、現在のデスクトップの身元を確認してください。

  • Xcodeの対話的な編集とビルド
  • グラフィカルなログとパフォーマンスパネルの確認
  • 継続的な監視が必要なmacOSセッション
コマンドワークフロー

SSH

スクリプトの実行、ファイル同期、ディスク使用量の確認、ビルドプロセスの管理、self-hosted runnerの運用に適しています。長期利用では専用キーを使用し、キーの保存場所と利用範囲を制限してください。

  • 再現可能なビルド・デプロイスクリプト
  • ファイル転送、ログ抽出、キャッシュ削除
  • CI/CD runnerの登録と運用
組み合わせ方

デスクトップで確認し、SSHで実行

初回納品時はリモートデスクトップでセッションとシステム状態を確認し、SSHでキー認証を完了します。日常の長時間タスクは再開可能なコマンドワークフローで実行し、デスクトップは画面操作が必要な工程に限定します。

  • デスクトップ切断が長時間タスクに与える影響を軽減
  • コマンドと実行結果を記録しやすくする
  • 対話操作と自動化権限を分離
アクセス情報の確認

各項目の役割を混同せず、正しく入力する

アクセス情報はコンソールの注文情報またはインスタンス詳細から取得します。コピー時は元の大文字・小文字とポートを維持し、長いフィンガープリントをスクリーンショットから手入力しないでください。

クラウドMacのアクセス情報と用途
項目 用途 初回確認 安全上の境界
ノードアドレス リモートデスクトップクライアントとSSHコマンドの接続先 現在の注文で選択したノードと一致 別の注文のアドレスを予備として使用しない
ポート リモートデスクトップとSSHサービスの入口を区別 コンソールの指示どおり個別に入力し、経験で推測しない 自分で追加した待受ポートを公開ネットワークにさらさない
アカウント名 ログイン先のmacOSユーザーセッションを識別 綴り、大文字・小文字、セッションの所属を確認 追跡できないアカウント情報をチームで共有しない
一時認証情報 初回のリモートデスクトップまたはSSH認証にのみ使用 初回ログイン後すぐに長期認証方式を設定 専用キーの認証に成功したら一時認証情報を無効化
ホストフィンガープリント SSH接続先が想定した物理ノードであることを確認 初回接続時にコンソールの記録と1文字ずつ照合 フィンガープリントが変わったら接続を停止し、チケットで確認
初回リモートデスクトップ接続

初回ログインを4つの明確な確認に分ける

対応クライアントの具体的な名称とバージョンは、使用するOSに応じて異なります。ダウンロード後、サポート対象のバージョンへ更新してから、コンソールの接続情報を入力してください。

  1. 01

    クライアントを準備

    対応するリモートデスクトップクライアントをインストールし、ローカルシステムでネットワークアクセスと画面表示が許可されていることを確認します。接続先アドレスを書き換える古い接続設定は無効にしてください。

  2. 02

    ノード情報を入力

    コンソールからノードアドレス、リモートデスクトップポート、アカウント名をコピーします。まずこの注文専用の設定として保存し、他のノードとエイリアスを共有しないでください。

  3. 03

    セッションの身元を確認

    接続後、ホスト情報、アカウント名、選択したノード、注文記録を確認します。1つでも一致しなければセッションを終了し、再確認してください。

  4. 04

    初回ログインを完了

    一時認証情報を更新し、キーボードレイアウト、解像度、自動ロック設定を確認します。その後もう一度接続して、新しい情報が正常に機能することを確認してください。

SSH安全接続

キー、フィンガープリント、権限の3点を確認して初めて接続完了

操作者ごと、また自動化環境ごとにキーを生成します。他人の秘密鍵をコピーしたり、同じ長期キーを追跡できないデバイスへ広げたりしないでください。

SSH接続の手順 ローカルで生成 → 公開鍵を登録 → フィンガープリントを照合 → ログインをテスト

1. 専用キーを生成

ssh-keygen -t ed25519 -f ~/.ssh/ovps_remote

秘密鍵は管理対象のデバイスに保管し、公開鍵はコンソールから登録します。キーには用途が分かる名前を付け、後で交換・無効化しやすくします。

2. ローカル秘密鍵の権限を確認

chmod 600 ~/.ssh/ovps_remote

権限が広すぎると、SSHは秘密鍵の使用を拒否します。共有ワークステーションでは、ディレクトリ権限とバックアップソフトのアクセス範囲も確認してください。

3. コンソールの項目でログインをテスト

ssh -i ~/.ssh/ovps_remote -p "$SSH_PORT" "$SSH_USER@$NODE_ADDRESS"

初回にホストフィンガープリントが表示されたら、まずコンソールの記録と照合します。完全に一致してから確認し、スキップしたり無条件に受け入れたりしないでください。

認証成功の基準

1回のテストで4つの結論を確認

  • 接続先アドレスが注文のノードと一致
  • ホストフィンガープリントが1文字ずつ一致
  • 専用秘密鍵で正常に認証できる
  • アカウントが想定した作業ディレクトリだけにアクセスできる
認証後の対応

一時認証情報を無効化

キーでのログイン成功を確認したら、初回納品時に使用した一時認証情報を無効化します。キーの所有者、用途、交換計画を記録し、不要になった一時コピーをローカルから削除してください。

接続サポートを見る
SSHトンネルの利用場面

必要なサービスだけを転送し、バインド先はローカルのループバックアドレスにする

トンネルは内部開発サービス、ビルドレポート、ローカルデバッグ用ポートを一時的に確認するのに適しています。サービスをインターネットへ恒久的に公開する代わりにはなりません。

ローカルポート転送

制御されたチャネルを確立

次のコマンドは、クラウドMac上でループバックアドレスだけをリッスンしている開発サービスを、操作者のローカルマシンへマッピングします。ブラウザはローカルアドレスだけにアクセスし、サービス自体に公開リスナーを追加する必要はありません。

ssh -N \
  -L 127.0.0.1:8080:127.0.0.1:8080 \
  -i ~/.ssh/ovps_remote \
  -p "$SSH_PORT" \
  "$SSH_USER@$NODE_ADDRESS"
ローカルバインド
127.0.0.1:8080
リモートの接続先
127.0.0.1:8080
認証方式
専用SSHキー
切断後のクリーンアップ

終了しただけではクリーンアップは完了しない

デバッグ終了後、トンネルプロセス、待受ポート、一時サービスを順に確認し、ログにも不要なアクセス経路が残っていないことを確認します。

  1. SSHトンネルプロセスを停止 ローカルセッションが終了し、自動再接続されないことを確認します。
  2. ローカルの待受ポートを確認 8080などの一時ポートが解放されたことを確認します。
  3. リモートの一時サービスを停止 デバッグを終えたら、一時サービスとテスト用プロキシを停止します。
  4. 一時的な権限を取り消す 今回の確認のためだけに追加した公開鍵またはアクセスルールを削除します。
CI runnerの接続

最小限のテストタスクを実行してから本番パイプラインへ接続

self-hosted runnerには専用の作業ディレクトリと最小限のプロジェクト範囲を設定します。テストrunnerにチーム全体のリポジトリ、署名関連ファイル、過去のビルド成果物へのアクセスを既定で許可しないでください。

接続チェック 4段階
01

専用runnerを登録

対象プロジェクト専用のrunner IDを作成し、ノード、用途、担当者を記録します。登録用認証情報は設定時だけ使用してください。

身元を明確化
02

プロジェクト範囲を制限

想定したリポジトリとタスクタイプだけがrunnerを呼び出せるようにし、ワークフローに必要なタグを設定します。範囲の広い汎用マッチングは使用しないでください。

範囲を管理
03

作業ディレクトリを設定

ソースコード、依存関係キャッシュ、ビルド成果物、一時ファイルを分離し、ディスク容量とタスク終了後のクリーンアップルールを確認します。

ディレクトリを分離
04

最小限のテストタスクを完了

まず環境情報の取得、コードの取得、小規模なテストビルドを実行し、ログ、終了コード、成果物のパスが正しいことを確認してから本番タスクに組み込みます。

接続準備完了
モバイルでの確認

スマートフォンは状態確認だけに使い、完全な認証情報は扱わない

小さな画面では納品状況、セッション通知、注文番号、ノード状態の確認に適しています。完全なアクセス情報のコピー、SSHキーの管理、復旧操作が必要な場合は、管理対象のデスクトップデバイスに切り替えてください。

納品状況 確認可能
セッション通知 確認可能
注文情報 確認可能
完全な秘密鍵 表示しない
スマートフォンでの操作に適する

すばやく確認

注文が納品済みか、ノードが一致しているか、セッション通知への対応が必要かを確認し、問題の発生時刻を記録します。

デスクトップに戻って対応

安全な操作

公開鍵の登録、認証情報の交換、ホストフィンガープリントのコピー、完全な接続情報の確認、コマンドの実行には、管理対象のデスクトップデバイスを使用してください。

トラブルシューティング

経路の順番に沿って確認し、複数の変数を同時に変更しない

各手順の完了時に結果を記録します。ネットワーク、ポート、キー、クライアントを同時に変更すると、問題が一時的に解消しても本当の原因を特定できません。

01

ローカルネットワークを確認

現在のネットワークから外部サービスへ正常にアクセスできることを確認し、経路を書き換える可能性のある一時プロキシを停止してから、正常な既知のネットワークで再テストします。

ネットワークを記録
02

ノードアドレスを確認

現在の注文からノードアドレスを再度コピーし、古い注文、クライアントのお気に入り、チャット履歴にある過去のアドレスを使用しないでください。

アドレス一致
03

プロトコルのポートを確認

リモートデスクトップとSSHがそれぞれ対応するポートを使用していることを確認し、ローカルネットワークがそのポートの送信接続を制限していないか確認します。

ポート到達可能
04

キーの権限を確認

秘密鍵のパスが正しく、ファイル権限が十分に制限され、公開鍵が対象ノードに登録済みで、クライアントが想定したキーを実際に使用していることを確認します。

認証成功
05

リモートセッションの状態を確認

アカウント名とグラフィカルセッションが一致していることを確認します。デスクトップが応答しない場合は、まずセッションを再確立し、大量の接続要求を繰り返し送信しないでください。

セッション正常
06

スリープ設定を確認

長時間タスク中の画面ロックとスリープ設定がワークフローに合っていることを確認し、グラフィカルセッションが切断されてもrunnerやスクリプトが停止しないことを検証します。

タスク継続
接続を準備

ノードと設定を選び、約4分で納品手続きを完了

3つのプランの専用物理マシンは、シンガポール、日本(東京)、韓国(ソウル)、香港、米国東部、米国西部をカバーします。納品後は、このページの順序に沿ってリモートデスクトップとSSHを確認してください。

USDT-TRC20およびVisa / Mastercard / Amex(Stripe経由)のみ対応し、すべて米ドル(USD)で決済します。