3行でいうと
- Ollamaの公式文書では、標準の窓口は自分のパソコン内だけで、認証(ログイン確認)は要りません。
- Tailscaleは、自分の端末同士だけをつなぐ専用ネットワーク(tailnet)を作り、ポート開放を要しないと公式が説明しています。
- Personalプランは、公式の料金ページで月額0ドル、ユーザー6人まで、端末数は無制限です。
- Tailscale Funnelは、インターネットの誰からでも届くようにする機能です。AIの窓口には使わないほうが安全だと見ています。
この記事は、実際に使って確かめた記録ではありません。この記事は公式の文書や論文を読んでまとめたものです。
先に結論
外出先から家のAIを使うなら、「家のルーターにポートを開けて、インターネットに直接見せる」のではなく、「自分の端末だけが入れる専用ネットワークをかぶせる」のが、公式資料を読んだ限りでは筋のよい方法です。そのための道具の一つが、Tailscaleです。
見立てです。AIの窓口を、認証のないままインターネットに出すと、誰でもあなたのパソコンのAIを使えてしまいます。Tailscaleのような仕組みで、見える相手を自分の端末だけにするのが、手間と安全のつり合いがよいと考えます。
前提:言葉の整理
- ポート:パソコンの中にある「窓口の番号」です。Ollamaの標準は11434番、LM Studioは1234番、llama.cppのサーバーは8080番です(前の記事のとおり)。
- localhost(127.0.0.1):「自分自身」を指すアドレスです。ここだけで待ち受けていると、同じパソコンの中からしか届きません。
- 認証:「誰が使っているか」を確かめる仕組みです。パスワードやキーがこれに当たります。
- VPN:離れた端末同士を、安全な専用の道でつなぐ仕組みです。
- Tailscale:公式の説明では、WireGuardという暗号化の仕組みを使い、端末同士を直接つなぐネットワークを作る道具です。このネットワークをtailnetと呼びます。
- MagicDNS:端末に付けた名前で相手を呼べるようにする機能です。IPアドレスの数字を覚えなくて済みます。
なぜ、ポートを直接公開してはいけないのか
公式資料から、4つの事実が拾えます。
- Ollamaの窓口は、認証がありません。 Ollamaの公式文書は「http://localhost:11434 のローカルAPIは認証を要求しない」と書いています。認証が要るのは、クラウドのモデルを使うときなどです。
- 標準では、外から届かない設計です。 Ollamaは標準で127.0.0.1のポート11434を使い、
OLLAMA_HOSTで変えられます。つまり、アドレスを変えて外に開くのは、自分で選んだときだけです。 - llama.cppも、認証は標準でありません。 サーバーのREADMEでは、
--api-keyの既定は「なし」です。公開するときは、APIキーを設定し、リバースプロキシ(間に立つ中継のサーバー)を置くことを勧めています。/healthは、キーの確認がない公開の窓口だとも書かれています。 - Ollamaの公式リポジトリのセキュリティ文書は、利用者側の対策を促しています。 最新版に保つこと、公開した場合はアクセスを守ること、不審な動きを監視することが挙がっています。
もう一つ、見立てです。AIの窓口が外から使えると、攻撃者に中身を覗かれるだけでなく、あなたのパソコンの計算力やメモリを勝手に使われる可能性があります。公式資料にこの点の記述は見つけられなかったので、僕らの推測です。
ソフトに弱点が見つかることもあります。たとえばアメリカの脆弱性データベース(NVD)には、Ollamaの0.1.34より前の版で、モデルのファイルの場所を決める部分の入力確認が足りないという記録(CVE-2024-37032)があります。個別の影響の判断はここではしません。古い版を外に出さない理由の例として挙げました。
Tailscaleがやること
公式の説明を、要点だけ並べます。
- 端末を2台以上ログインさせると、自動で専用ネットワーク(tailnet)ができます。
- 通信は、WireGuardで暗号化された端末同士の接続です。
- ファイアウォールやNAT(家庭用ルーターの住所変換)を越えて動き、ポート開放やルーターの複雑な設定は要らない、と公式の概要ページに書かれています。
- 接続は、できるだけ端末同士が直接つながります。直接つながらないときは、Tailscaleの中継サーバー(DERP)を経由します。どちらも暗号化されていて、違いは速さです。
- 誰が誰にアクセスできるかは「アクセス制御」で決まります。公式によると、設定を変えていない新しいtailnetでは、既定で全端末が互いに通信できます。
設定の流れ(見立て)
ここからは、公式資料の部品を組み合わせた、僕らの流れです。実行していません。
- 家のMacと、外出先で使う端末(スマホやノート)に、Tailscaleを入れます。Macの入れ方は3種類あり、公式は「Tailscaleのサーバーから入れる単体版」を推奨しています。iPhoneはApp Storeからです。
- 同じアカウントでログインします。2台とも画面に出れば、同じtailnetに入っています。
- 家のMacでAIの窓口を動かします。標準のままなら、localhost限定です。
- Tailscale Serveで、その窓口をtailnetの中にだけ見せます。公式文書の例は次のとおりです。
tailscale serve 3000
Available within your tailnet:
https://amelie-workstation.pango-lin.ts.net
|-- / proxy http://127.0.0.1:3000
公式文書の例です。この記事では、実行していません。3000番は公式の例で、Ollamaなら11434番に読み替えるのが自然ですが、見立てです。バックグラウンドで動かす --bg というオプションもあります。
- 外出先の端末からは、
https://自分のMacの名前.tailnet名.ts.netに向けてつなぎます。OpenAI互換の接続先を設定できるアプリなら、前の記事のとおり、この住所を接続先に入れます。
3つの出し方を比べる
| 方法 | 見える範囲 | 公式の説明の要点 |
|---|---|---|
| Tailscale Serve | tailnetの端末だけ | ローカルのサービスを、tailnetの他の端末に見せる。アクセス制御の規則が適用される |
| Tailscale Funnel | インターネットの誰でも | 公式の文書では、Tailscaleを使わない人にも見せる機能。使うには、設定ファイルへの許可の属性が要る。ポートは443、8443、10000のみ |
| OLLAMA_HOSTを0.0.0.0にする | 同じ場所のネットワーク全体 | 見立てでは、ルーターで外に開けない限り、家の中のネットワーク内。Ollama側に認証はなし |
FunnelとServeは、同じポート番号に同時には使えません。最後に設定したほうの状態になります。なお、Funnelが標準で有効かどうかは、Serveのページ(有効)とFunnelのページ(無効)で書き方がそろっていません。使わない端末では、自分で設定を確認してください。
Serveは、対象のサービスにユーザー情報のヘッダーを付けて渡します。ただし、これを認証に使うときは、サービスをlocalhostだけで待ち受けさせるのがよい、と公式は書いています。同じ考え方で、AIの窓口もlocalhost限定のままにしておくのが整合的です。見立てです。
料金
Tailscaleの料金ページ(2026年10月8日確認)では、Personalプランは月額0ドルで「無期限に無料」とあります。ユーザーは6人まで、ユーザーの端末数は無制限です。上位のStandardは1ユーザー月8ドル、Premiumは18ドルです。通貨はドル、料金は変わることがあります。
公式の入門によると、gmail.comのような一般のメールで登録すると、Personalプランになります。
よくあるつまずき
- 外出先から届かない:家のMacがスリープしていると、つながりません。常駐の方法は、次の記事で扱います。
- 遅い:直接ではなくDERPの中継経由になっているかもしれません。公式によると、
tailscale statusの表示に「direct」か「relay」か出ます。中継は直接より遅く、性能の不満の原因としてよくあるとも書かれています。 - ある日つながらなくなった:端末の認証キーには期限があります。公式の既定は新しいドメインで180日です。切れると接続が止まり、再ログインが要ります。信頼できるサーバーでは、期限を無効にできると書かれています。
- Ollamaに接続を拒否される:公式FAQの中継の例(NginxやNgrok)は、Hostヘッダーを
localhost:11434に書き換えています。理由は書かれていません。Serve経由で同じ問題が起きるかは、確認できていません。
気をつけること
- この記事は、この構成を実際に組んで確かめた記録ではありません。各社の文書を組み合わせた、見立てが含まれます。
- Tailscale Serveで、Ollamaなどの窓口がそのまま動くかは、確認できていません。上のHostヘッダーの件も同じです。
- Tailscaleの文書は、機能の名前や画面が変わりやすいです。たとえばFunnelは、文書上ベータ版とされています。
- 同じtailnetに入った端末は、既定では互いに届きます。家族の端末や、人から招待された端末を入れる前に、アクセス制御を見直してください。
- Funnelを有効にすると、インターネットに公開されます。AIの窓口には、使わないほうがよいと見ています。
- セキュリティの対策に「これで十分」はありません。この記事は公式資料の紹介で、個別の判断は専門家にご相談ください。
- NVDの記録は例として挙げたもので、今のOllamaの安全性を評価するものではありません。
出典
- Ollama Authentication(Ollama Docs、Ollama、2026年10月8日確認)
- Ollama FAQ(Ollama Docs、Ollama、2026年10月8日確認)
- SECURITY.md(GitHub、Ollama、2026年10月8日確認)
- LLaMA.cpp HTTP Server README(llama.cpp、ggml-org、2026年10月8日確認)
- CVE-2024-37032(NVD API、米国国立標準技術研究所、2026年10月8日確認)
- What is Tailscale?(Tailscale Docs、Tailscale、2026年10月8日確認)
- Tailscale quickstart(Tailscale Docs、Tailscale、2026年10月8日確認)
- Tailscale Serve(Tailscale Docs、Tailscale、2026年10月8日確認)
- tailscale serve command(Tailscale Docs、Tailscale、2026年10月8日確認)
- Tailscale Funnel(Tailscale Docs、Tailscale、2026年10月8日確認)
- MagicDNS(Tailscale Docs、Tailscale、2026年10月8日確認)
- Connection types(Tailscale Docs、Tailscale、2026年10月8日確認)
- Key expiry(Tailscale Docs、Tailscale、2026年10月8日確認)
- Manage permissions using ACLs(Tailscale Docs、Tailscale、2026年10月8日確認)
- Install Tailscale on macOS(Tailscale Docs、Tailscale、2026年10月8日確認)
- Install Tailscale on iOS(Tailscale Docs、Tailscale、2026年10月8日確認)
- Pricing(Tailscale、2026年10月8日確認)
更新履歴
- 2026年10月25日 書き方を直しました。
- 前:運営者が使っていないと読める書き方 → いま:「この記事は、実際に使って確かめた記録ではありません」。公式の資料を読んでまとめた記事で、使い心地は書いていない、という意味に直した
