開発解説

ローカルAIのAPIを外部公開する前に確認すること|localhostで十分かも考える

ローカルAIのAPIを外部公開する前に確認すること — localhostで十分かも考える
目次

ローカルAIのAPIを別PCやスマートフォンから使いたくなっても、最初からインターネットへ公開する必要はない。

まず考えるのは、localhostの外から本当に接続する必要があるかだ。同じPC上のアプリから使うだけなら、同じPCからしか到達できない待受設定が最も分かりやすい。

最初に「どこで待ち受けているか」を確認する

LM Studio、Ollama、llama.cppはいずれもローカルAPIとして利用できるが、ネットワーク設定や認証の方法は同じではない。

まずポート番号だけでなく、どのアドレス・インターフェースで待ち受けているかを見る。

  • localhost・loopbackだけか
  • LAN側からも到達できるか
  • DockerやVMを介して別の範囲へ公開されていないか
  • ルーターで外部向けの転送設定をしていないか

接続時にlocalhostというURLを使っていても、サーバー自体の待受範囲は別に確認する。

LANへ公開すると情報と計算資源の両方へ入口が増える

AIの推論APIは静的なWebページではない。構成によっては、

  • プロンプトや会話内容
  • 利用するモデルの指定
  • 長い生成処理
  • CPU・GPU・RAM
  • 実行ログ

などを扱う。

そのため、認証なしで到達できる範囲を広げると、情報だけでなく計算資源を使われる可能性も増える。

認証だけで安全になったとは考えない

API tokenなどの認証は重要だが、それだけですべての公開設定を代替できるわけではない。

確認項目 見ること
待受先 必要なネットワークだけから到達できるか
認証 資格情報なしの要求を拒否できるか
Firewall 不要な端末から到達できないか
通信 遠隔通信を必要以上に平文で広げていないか
ログ 会話内容やtokenが不要に残っていないか
利用量 長時間の処理を無制限に受けないか

一つずつ確認する。

ソフトごとの初期設定を別のソフトへ当てはめない

Ollama、LM Studio、llama-serverでは、待受先や認証に関する仕様・既定値が異なる。

さらにDocker、WSL、VPN、reverse proxyなどを追加すると、ネットワークの境界も変わる。構成を変えたときは、以前の確認結果をそのまま使わず再確認する。

遠隔利用が必要でも公開範囲を小さくする

別端末から使う場合は、まず同じLAN内で足りるかを考える。離れた場所から必要なら、利用者を限定できるVPNなどの方法も候補になる。

reverse proxyを入れたことだけで安全性が保証されるわけではない。認証、TLS、接続元の制限などはそれぞれ確認する。

誰が、どこから、どのAPIへ接続する必要があるのかを書き出し、必要な範囲だけを公開する。同じPCだけで十分なら、localhostのままにするのが最も単純だ。

APIへ最初の要求を送る方法は、ローカルLLM APIへcurlで最初の要求を送る方法で確認できる。Ollamaをlocalhostで起動する場合は、Ollama APIをlocalhostで始める方法へ進む。

まとめ

  • 同じPCから使うだけなら、APIをlocalhostだけで待ち受ける構成が最も単純
  • LANや外部ネットワークへ公開すると、会話内容だけでなくCPU・GPUなどの計算資源へ到達できる範囲も広がる
  • 認証を付けても、待受先、Firewall、ログ、通信経路、利用量の制御は別に確認する必要がある
  • インターネットへの直接公開を前提にせず、必要な利用者とネットワークだけへ範囲を絞る

公式サイトで次に進む

この記事で明示的に扱うソフトだけを表示します。配布・手順は各公式ページで確認してください。

local-gen.jpがファイルを配布するものではなく、互換性を保証するものでもありません。

同じテーマから

この記事で扱ったデータ

モデル・GPU・実行ソフトの確認済みデータを、記事とは別に確かめられます。

サイト内検索