iOSからMacの開発サーバーにlocalhostでアクセスする方法

2025年2月1日
iOSからMacの開発サーバーにlocalhostでアクセスする方法

開発時に Mac でローカルサーバーを立ち上げて、モバイルデバイスで動作確認したい場合はよくあります。

サーバーを 0.0.0.0 で立ち上げると、同一 LAN 内であればプライベート IP アドレス(192.168.0.0/16)を使用してサーバーにアクセスできます。 通常はこの方法で問題ないのですが、セキュリティ設定などにより、localhost のみが許可されていて、プライベート IP アドレスを使うことができない場合があります。

このような場合、iOS デバイスと Mac 間で SSH ポートフォワーディングを確立することで、 iOS デバイスから直接 localhost のアドレスを使って Mac のローカル環境にアクセスできるようになります。

接続手順

1. Mac の共有設定から「リモートログイン」をオンに変更

システム設定から共有設定を開き、「リモートログイン」をオンに変更します。 これにより、Mac に SSH を通じて接続できるようになります

Mac の共有設定

2. iOS デバイスに WebSSH (SSH クライアント) をインストール

App Store から WebSSH をインストールします。 このアプリは、VPN-Over-SSH 機能により、 WebSSH を終了しても Chrome や Safari などの他のアプリでポートフォワーディングの設定を継続して利用できる点が特徴です。

WebSSH のインストール

WebSSH を使うと、iOS デバイスから SSH 接続できるようになります。

3. ポートフォワーディングの設定

WebSSH を起動し、以下の手順でポートフォワーディングを設定します:

  1. Mac の共有設定で確認した以下の情報を入力
    • ホスト名
    • ユーザー名
    • パスワード
    • プライベート IP アドレス
  2. Port Forwarding の設定
    • 例:Mac 側で localhost:3000 を使用している場合は 3000:localhost:3000 と入力
  3. VPN-Over-SSH を有効化
    • この設定により、他のアプリ使用時も SSH トンネルが維持されます
WebSSH のポートフォワーディング設定

4. ポートフォワーディングの確認

ポートフォワーディングの設定が完了したら、iOS デバイスで WebSSH を開き、 ポートフォワーディングの設定が反映されているか確認します。

設定の確認