iPhone や iPad で AnyTLS を使うには、AnyTLS に対応したクライアントアプリと、anytls:// リンク(またはサーバのパスワードと TLS 設定)があれば、数分で設定できます。このガイドでは、iOS 向けの無料プロキシクライアント Potatso を使った設定手順を、サーバ名、証明書のピン留め、フィンガープリント、UDP といった AnyTLS 特有の設定も含めて説明します。
AnyTLS が初めての方は、先に AnyTLS とは?をお読みください。
用意するもの
- iOS 17 以降の iPhone または iPad。
- AnyTLS サーバ。プロバイダのもの、または自分で運用する anytls-go、sing-box、mihomo のサーバです。次のいずれかを用意します。
anytls://リンク(例:anytls://secret@anytls.example.com:443/?sni=anytls.example.com#Tokyo)- そのリンクの QR コード
- AnyTLS サーバを含む Clash / Mihomo のサブスクリプション URL、または Surge の構成
- 生の設定値:アドレス、ポート、パスワード、TLS のサーバ名
sing-box の構成をお持ちの場合:Potatso は、sing-box の構成からの AnyTLS サーバの読み込みにはまだ対応していません。代わりに、サーバの
anytls://リンクを入手するか生成してください。
ステップ 1:Potatso をインストールする
App Store から Potatso をダウンロードして開きます。はじめるをタップし、「Personal」などプロファイルの名前を入力して続けるをタップします。プロファイルには、サーバ、ルール、DNS 設定がまとまっています。
ステップ 2:AnyTLS サーバを追加する
サーバを追加しましょうのステップでは、4 つの追加方法を選べます。手元にあるものに合わせて選んでください。
anytls:// リンクやサブスクリプション URL から追加する
anytls://リンクまたはサブスクリプション URL をコピーします。- Potatso でリンクをペーストをタップし、ペーストをタップします。
Potatso は、パスワード、アドレス、ポートに加え、リンクに含まれる次のパラメータを読み取ります。
| パラメータ | 設定される内容 |
|---|---|
sni |
TLS のサーバ名。ない場合、Potatso はサーバのアドレスを使います。 |
insecure=1 |
証明書の検証をオフにします。 |
hpkp |
SHA-256 でサーバの証明書をピン留めします。 |
fp |
ブラウザのフィンガープリント。chrome など。 |
alpn |
ALPN のリスト。h2,http/1.1 など。 |
サブスクリプションは、読み込み後も更新され続けます。手順の全体は iPhone に Clash サブスクリプションを読み込む方法をご覧ください。
QR コードから追加する
QR コードをスキャンをタップし、カメラを QR コードに向けます。QR コードが写真に保存したスクリーンショットの場合は、スキャナ隅の写真ボタンをタップして画像を選びます。
手動で入力する
- サーバを手動で入力をタップします。
- 名前を入力し、プロトコルで AnyTLS を選びます。
- アドレスとポート(通常は 443)を入力します。
- パスワードを、サーバの設定とまったく同じように入力します。
- TLS 設定をタップし、サーバに必要な項目を入力します。
- サーバ名:サーバ証明書のドメイン。そのドメインで接続する場合は空欄でかまいません。
- 証明書のピン(SHA-256):自己署名証明書の場合、その証明書の SHA-256。
- クライアントフィンガープリント:模倣するブラウザ。
chromeなど。 - ALPN:サーバから求められた場合のみ。
- 証明書の検証をスキップ:テスト目的でない限りオフのままにします。
- REALITY を使う sing-box サーバの場合は、Reality 公開鍵と Reality ショート ID を入力し、サーバ名にサーバが借用するウェブサイトを設定して、フィンガープリントを選びます。
- サーバが UDP を中継する場合は、UDP リレーをオンにします。
- 保存(チェックマーク)をタップします。
サーバが追加されると、ステップの表示がサーバを追加しましたに変わります。続けるをタップしてください。
スキップせずにピン留めを:自分で運用されている AnyTLS サーバの多くは、自己署名証明書を使っています。検証をスキップすると、途中にいる誰もが通信を読めるようになります。証明書のピンなら、その 1 つの証明書だけを信頼します。
ステップ 3:ルートを選ぶ
選択中、Potatso はすべてのサーバの遅延をテストします。
- グローバル:すべての通信を、選択したサーバ経由で送ります。サーバが 1 つだけなら、これがいちばん簡単です。
- ルール:構成のルールに従って、プロキシ経由にする通信と直接接続する通信を振り分けます。読み込んだ内容にルールが含まれている場合に選べます。ほとんどの Clash サブスクリプションにはルールが含まれています。
AnyTLS サーバを選び、画面下部のボタン(たとえば Tokyo を使用)をタップします。ここで遅延が表示されないサーバは、先に進む前に確認しておきましょう。接続できないときはをご覧ください。

ステップ 4:VPN を許可して接続する
Potatso はデバイス上の VPN 構成を使って通信をプロキシ経由で送ります。この構成の追加は、iOS で一度だけ承認が必要です。
- VPN 構成を追加をタップし、iOS に確認されたら許可をタップします。
- ホームで、ステータスカードのスイッチをオンにします。
ステータスが接続中…から接続済みに変わり、ステータスバーに VPN アイコンが表示されます。ウェブサイトを開いて、読み込めることを確認してください。

接続できないときは
AnyTLS の問題は、ほとんどの場合パスワードか TLS 設定が原因です。
パスワードが違う
AnyTLS には、パスワードの誤りを知らせるエラーメッセージがありません。サーバは接続を閉じるだけです。Potatso では、遅延が表示されないサーバや、いつまでも読み込まれないサイトとして現れます。パスワードを 1 文字ずつ正確にコピーし直してください。anytls:// リンクでは、パスワード内の特殊文字はパーセントエンコードする必要があるため、手で編集したリンクではパスワードが壊れることがあります。
証明書のエラー
- サーバ名が一致しない:IP アドレスや、証明書に含まれないドメインで接続する場合は、サーバ名(
sni)を証明書のドメインに設定します。 - 自己署名証明書:証明書をピン留めしない限り、検証に失敗します。プロバイダに SHA-256 を問い合わせるか、リンクに
hpkpを設定してください。 - ピンが違う:サーバが証明書を更新すると、古いピンは一致しなくなります。ピンを更新してください。
- クライアント証明書:Potatso は、AnyTLS での TLS クライアント証明書やカスタム CA に対応していないため、それらを必要とするサーバは読み込みません。
REALITY で接続できない
公開鍵とショート ID をサーバの設定と照らし合わせ、サーバ名が自分のサーバのアドレスではなく、借用元のウェブサイトになっていることを確認してください。REALITY には chrome などのブラウザのフィンガープリントが必要です。
UDP が使えない
音声通話、一部のゲーム、QUIC には UDP が必要です。Clash と同じく、AnyTLS サーバの UDP リレーは初期状態でオフになっており、Potatso はそのサーバ経由で UDP を送りません。サーバが UDP を中継する場合は、サーバの設定でオンにしてください。Clash のサブスクリプションでは udp: true でオンになります。
Surge から読み込んだときに警告が出る
Surge の reuse=false という設定は適用されません。Potatso は AnyTLS の仕様どおり常に接続を再利用し、読み込み時に警告を表示します。サーバはそのまま使えます。
どれを試しても解決しない場合は、VPN に接続できないで説明している、設定 → トラブルシューティングのガイド付きチェックを実行してください。対応しているすべての設定は AnyTLS リファレンスに載っています。
次のステップ
- AnyTLS がどんなときに適しているか知りたいなら、プロキシ プロトコル比較で Trojan、VLESS、Hysteria 2、Shadowsocks と比べてみましょう。
- Trojan サーバもお持ちなら、iPhone で Trojan を使う方法をご覧ください。
- 1 つのプロバイダから多数のサーバを受け取っているなら、グループにまとめて Potatso にいちばん速いサーバを選ばせましょう。プロキシグループと速度テストをご覧ください。
よくある質問
- iPhone で AnyTLS は使えますか?
- AnyTLS に対応したクライアントアプリがあれば使えます。iPhone・iPad 向けの無料プロキシクライアント Potatso は、anytls:// リンク、Clash や Mihomo のサブスクリプション、Surge の構成、手動で入力した設定から AnyTLS サーバに接続できます。
- AnyTLS サーバにまったく接続できないのはなぜですか?
- いちばん多い原因はパスワードの誤りです。サーバは接続を閉じるだけなので、タイムアウトや遅延テストの失敗のように見えます。次に、サーバ名(SNI)と証明書の設定を確認してください。これらはサーバの TLS 証明書と一致している必要があります。
- 自己署名証明書のために insecure モードをオンにすべきですか?
- 避けてください。証明書の検証をスキップすると、あなたとサーバの間にいる誰もが通信を読めるようになります。代わりに、証明書の SHA-256 を証明書のピン(anytls:// リンクでは hpkp パラメータ)として入力し、サーバの証明書をピン留めしてください。
- AnyTLS サーバ経由で音声通話が使えないのはなぜですか?
- 通話や多くのゲームは UDP を使いますが、Potatso では Clash と同じく、AnyTLS サーバの UDP リレーが初期状態でオフになっています。サーバが UDP を中継する場合は、サーバの設定で UDP リレーをオンにしてください。