分散デプロイ¶
時にはこのような状況に遭遇することがあります:携帯電話は自宅にあるのに、自分は外出先にいる場合、どのように使えばよいのでしょうか。FIRERPA に内蔵されている frp または OpenVPN クライアントを利用して分散デプロイを実現し、任意の場所から分散デプロイされたデバイスに接続できます。この2つのソリューションでは、パブリックサーバーを1台用意し、サーバー側の関連ソフトウェアを設定する必要があります。
危険
本章の関連操作は、お使いの携帯電話をパブリックネットワークに公開する可能性があり、セキュリティリスクを高めます。必ずよくお読みください。
本章ではファイアウォールのポート開放などの基本的な操作については触れません。読者がそれらを理解し、要件どおりに設定を完了していることを前提とします。また、frp および OpenVPN についてある程度理解していることを前提とします。ご自身でデプロイする場合は、OpenVPN によるネットワーク構築を強く推奨します。
信鸽プラットフォーム(Pigeon)経由¶
信鸽プラットフォームは、オープンソースで、分散 Android デバイスと自動化タスク実行向けの管理システムです。データは完全にローカライズされ、デバイス接続、デバイス監視、スクリプト開発、オンラインデバッグ、モデル設定、ユーザー管理などの主要シーンをカバーしています。リモートデバイス運用、バッチ自動化実行、AI/RPA スクリプトに適しており、P2P および FRP ベースのネットワーク越しデバイス相互接続、ローカルイントラネット相互接続のリモートデバイス統合アクセスをサポートします。 大規模なデバイスノードの管理、自動化スクリプトの作成・バージョン管理・デバッグ、デバイスへの動的なスクリプト配信・実行、タスクの実行状態・結果・失敗原因の追跡、AI モデルの設定、Prompt/ハイブリッドスクリプト実行のサポート、プラットフォームユーザーの管理などをサポートします。
詳細は GitHub ホームページ firerpa/pigeon をご覧ください(Pigeon には FIRERPA 10.8 以降が必要です)。
frp による転送¶
frp サーバーのデプロイとデバイス側の fwd.* 設定については、転送サービスのデプロイ を参照してください。設定完了後、転送ポートはデフォルトで frps サーバーの 127.0.0.1 にバインドされ、パブリックサーバー上でローカルにデバイスへアクセスするのに適しています。
危険
パブリックネットワークへの転送は非常に危険な行為です。運任せにせず、IP とポートが非常に隠されていると思い込まず、必ずサービスで証明書検証を有効にしてください!
パブリックネットワーク上の任意の場所からデバイスへ直接アクセスしたい場合でも、frp でポートを公開することは推奨しません。OpenVPN を使用してデバイスとパソコンを同じネットワークセグメントに置くことをより推奨します。やむを得ず frp でパブリックポートを公開する必要がある場合は、まず FIRERPA がサービス証明書を使用していることを確認し、frps の proxy_bind_addr を 0.0.0.0 に変更してください。
frp 転送を使用したデバイスへの接続¶
以下は、frps をデプロイしたパブリックサーバー上でデバイスに接続する方法を示します。fwd.rport が 12345 であると仮定します:
from lamda.client import *
d = Device("127.0.0.1", port=12345)
サーバー上のブラウザで http://127.0.0.1:12345 または https://127.0.0.1:12345 を開いて、そのデバイスのリモートデスクトップにアクセスすることもできます。
OpenVPN によるネットワーク構築¶
デバイスを OpenVPN ネットワークに接続する方法については、OpenVPN サービスのデプロイ を参照してください。ネットワーク構築後、パソコンも同じ OpenVPN ネットワークに参加させれば、デバイスのプライベートアドレスで直接アクセスできます。クライアントは OpenVPN Connect をダウンロードできます。