中級 10 分ネットワーク

ローカルネットワークでOllamaを共有する(家族、 チーム)

Ollama をローカルネットワーク上のサーバーとして動かすと、使い方が大きく変わります。1台の GPU を複数のユーザーで共有できます。パートナーは MacBook から、開発者はデスクトップ PC から、子どもはタブレットから、全員が同じデーモンにアクセスするため、30 GB のモデルを重複して保存する必要はありません。このガイドでは、インターネット全体に公開せずに、Ollama をローカルネットワーク上で適切に公開する方法を説明します。

著者 Mohamed Meguedmi·更新 2026-08-27·Windows・macOS・Linuxでテスト済み

#ローカルネットワーク上でOllamaサーバーを使う理由は?

デフォルトでは、Ollamaは127.0.0.1:11434でのみ待ち受けるため、アクセスできるのはOllamaが動作しているマシンだけです。安全ではありますが、GPUを十分に活用できません。RTX 4090やMac Studio M4 Maxなら、7B〜14BのQ4モデルで3〜5人のユーザーに同時に対応しても、問題なく動作します。

VRAMを共有する
家庭やチーム全体でメモリにロードされるモデルは一つのみ — 冗長なコピーはありません。
モデルを一元管理する
150GBのGGUFファイルをサーバーに一度だけ保存し、ノートPCには一切保存しません。
バージョンの標準化
全員が同じ Qwen 3.5 9B Q4 を使うため、端末ごとの品質のばらつきがなくなります。
バッテリーの消費を抑える
ノートPC側では計算を行わず、据え置きのサーバーにHTTP POSTリクエストを送信します。
i
ローカルネットワークのみ
このガイドは、家庭用LANまたはチームのサブネット(10.0.0.0/8、192.168.0.0/16、172.16.0.0/12)を対象としています。Ollama をインターネットに公開するにはHTTPS、強力な認証、レート制限が必要です——さらに複雑な設定になります。

#前提条件

ローカルAIキット

お使いのマシンで、プライベートかつ無料のChatGPTを1時間で構築 — LM Studio、Ollama、Open WebUI、ご自身のドキュメント、クラウド不要。

  • 永久に利用できるオンラインスペース
  • PDF + ファイル
  • 生涯アップデート
Ollama インストール済み
サーバーをホストするマシン(Linux、macOS または Windows)上です。理想的には、GPU が最も優れたマシンです。
固定IPまたはローカルDNS
サーバーは同じIPを維持する必要があります。ルーター側でDHCP予約または静的IPを設定してください。そうでなければ、mDNSによるhostname.localを使用します。
信頼できるネットワーク
WPA2/3を使用する家庭用Wi-Fi、またはチーム用VLAN。共用の公衆Wi-Fiは使用しないでください。
管理者権限
ファイアウォールやシステムサービス(systemd、launchd、services.msc)を変更する場合。

#1. OLLAMA_HOST=0.0.0.0 で Ollama を公開

Ollama は 2 つの重要な環境変数を読み取ります。OLLAMA_HOST はリッスンインターフェースを定義し、OLLAMA_ORIGINS は許可される CORS のオリジンを定義します。サーバーモードに切り替えるには、OLLAMA_HOST を 127.0.0.1 から 0.0.0.0(すべてのインターフェース)に変更します。

#Linux (systemd)

最近のディストリビューションでは、Ollamaはsystemd経由で動作します。サービスの元のファイルではなく、オーバーライドを編集します。こうすることで、パッケージを更新しても設定が保持されます。

ターミナル
sudo systemctl edit ollama.service

開くエディタで、コメント行の間に入れるようにこのブロックを貼り付けます。

/etc/systemd/system/ollama.service.d/override.conf
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"
Environment="OLLAMA_ORIGINS=*"
再ロードおよび再起動
sudo systemctl daemon-reload
sudo systemctl restart ollama.service
sudo systemctl status ollama.service

ss -tlnp の表示で、Ollamaが127.0.0.1:11434だけでなく、0.0.0.0:11434で待ち受けていることを確認してください。

#Windows

Windowsでは、Ollamaは起動時にユーザー環境変数を読み取ります。適切な方法は、ユーザー環境変数にOLLAMA_HOSTを追加し、タスクバーからサービスを再起動することです(アイコンを右クリック → Quit Ollamaを選択 → 再度起動)。

PowerShell(管理者)
[Environment]::SetEnvironmentVariable('OLLAMA_HOST', '0.0.0.0:11434', 'User')
[Environment]::SetEnvironmentVariable('OLLAMA_ORIGINS', '*', 'User')
→
ポートを確認してください
再起動後、netstat -an | findstr 11434 で 0.0.0.0:11434 LISTENING が表示されることを確認してください。まだ 127.0.0.1 が表示される場合は、変数が反映されていません。Ollamaを完全に終了してから(システムトレイのアイコン → Quit)、再度起動してください。

#2. ファイアウォールでLANからの接続を許可する

Ollamaが0.0.0.0でリスニングしている場合、ファイアウォールはローカルネットワークからのみポート11434を許可する必要があります。インターネット上では11434を公開しないでください:Ollamaにはネイティブな認証機能がありません。

#UFW(Ubuntu、Debian)

ターミナル
# Autoriser le port 11434 depuis le LAN seulement
sudo ufw allow from 192.168.1.0/24 to any port 11434 proto tcp
sudo ufw reload
sudo ufw status

192.168.1.0/24を実際のサブネットに合わせて変更してください(ip aで確認できます)。送信元を制限せずにufw allow 11434を設定したままにし、さらにマシンがポート転送で外部に公開されていると、世界中の誰もが匿名でOllamaを利用できる状態になります。

#iptables(UFWなし)

ターミナル
sudo iptables -A INPUT -p tcp -s 192.168.1.0/24 --dport 11434 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 11434 -j DROP
# Sauvegarder selon la distrib (iptables-persistent, netfilter-persistent)
sudo netfilter-persistent save

#Windows Defender Firewall

PowerShell(管理者)
New-NetFirewallRule `
  -DisplayName 'Ollama LAN' `
  -Direction Inbound `
  -Protocol TCP `
  -LocalPort 11434 `
  -RemoteAddress 192.168.1.0/24 `
  -Action Allow
!
インターネット上に11434を絶対に公開しない
Ollama の API はトークンもパスワードも要求しません。そのポートにアクセスできる人なら誰でも、トークンを生成して電気代を増やしたり、任意のモデルをダウンロードしたり、/api/create でコンテキストを汚染したりできます。必ず接続元 IP アドレスに基づいてアクセスを制限してください。

#3. macOSの特徴

macOSでは、OllamaはGUIアプリとして動作(メニューバーにアイコンが表示)し、バックグラウンドでデーモンを起動します。シェル内で定義された環境変数はGUIアプリに反映されません。launchctlを使用するか、アプリ自体を編集する必要があります。

  1. 01
    Ollamaを完全に終了する
    メニューバーのラマのアイコンをクリックし、→「Quit Ollama」を選択してください。ps aux | grep ollamaで、何も動作していないことを確認してください。
  2. 02
    launchctlレベルで変数を設定する
    ターミナルでlaunchctl setenv OLLAMA_HOST "0.0.0.0:11434"を実行し、続いてlaunchctl setenv OLLAMA_ORIGINS "*"を実行します。これらの変数は、その後に起動されるすべてのGUIアプリケーションに継承されます。
  3. 03
    Ollama.appを再起動
    アプリケーション → Ollama.app を開いてください。アプリは環境を再読み込みし、0.0.0.0 でリスニングします。
  4. 04
    再起動後も設定を保持する
    launchctl setenvで設定した内容は、再起動後には保持されません。永続化するには、~/Library/LaunchAgents/com.ollama.env.plistにLaunchAgentを作成するか(Appleのドキュメントを参照)、起動スクリプトからsetenvを再実行してください。
→
macOSのファイアウォール
macOSのアプリケーションファイアウォール(System Settings → Network → Firewall)は、最初の着信接続時に「Ollamaが着信接続を受け入れることを許可しますか?」と確認します。Allowをクリックしてください。ウィンドウが一度も表示されない場合は、一時的にステルスモードを無効にして表示を確認してください。

#4. クライアントを接続する

LAN内の別のマシンから実行する場合、サーバーのIPアドレスがすべてのコマンドおよび設定で localhost に代わって使用されます。

クライアントからテスト
# Remplacer 192.168.1.42 par l'IP réelle du serveur
curl http://192.168.1.42:11434/api/tags

# Génération directe
curl http://192.168.1.42:11434/api/generate -d '{
  "model": "qwen3.5:9b",
  "prompt": "Bonjour",
  "stream": false
}'

ollama 用の CLI では、クライアント側で OLLAMA_HOST をエクスポートします — サーバー側へのコマンド ollama run pointe を実行します。

Linux/macOS クライアント
export OLLAMA_HOST=http://192.168.1.42:11434
ollama list           # liste les modèles du serveur
ollama run qwen3.5:9b # tourne en remote, affichage local
Open WebUI
Settings → Connectionsで、http://192.168.1.42:11434 をOllama API URLとして追加してください。インターフェースはLAN内の任意のマシンで動作します。
Continue.dev (VS Code)
config.json では、ollama プロバイダーの apiBase フィールドが http://192.168.1.42:11434 を指しています。
LangChain Python
Ollama(base_url="http://192.168.1.42:11434", model="qwen3.5:9b") — ローカル環境での localhost と同様です。

#5. Nginxによるリバースプロキシ + 基本認証

Ollamaを認証などを付けずにLAN上で公開する形でも家族で使うには十分ですが、チームで使うなら、最低限HTTP Basic認証と簡単なログ記録を追加するのがよいでしょう。Nginxなら20行で実現できます。

Nginxのインストールとhtpasswdの生成
sudo apt install nginx apache2-utils
# Créer le fichier htpasswd avec un premier utilisateur
sudo htpasswd -c /etc/nginx/.htpasswd alice
# Ajouter d'autres utilisateurs (sans -c pour ne pas écraser)
sudo htpasswd /etc/nginx/.htpasswd bob
/etc/nginx/sites-available/ollama
server {
    listen 8080;
    server_name ollama.local;

    # Limite par IP source : LAN seulement
    allow 192.168.1.0/24;
    deny all;

    location / {
        auth_basic "Ollama LAN";
        auth_basic_user_file /etc/nginx/.htpasswd;

        proxy_pass http://127.0.0.1:11434;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;

        # Streaming SSE : désactiver le buffering Nginx
        proxy_buffering off;
        proxy_cache off;
        proxy_read_timeout 600s;
        chunked_transfer_encoding on;
    }
}
有効化および再読み込み
sudo ln -s /etc/nginx/sites-available/ollama /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

重要:この構成では、Ollamaの待ち受けアドレスを127.0.0.1:11434に戻す必要があります(0.0.0.0ではありません)。Nginxは外部からアクセスできるポート8080で待ち受け、IPアドレスとパスワードを確認してから、ローカルのOllamaに転送します。以後、クライアントは http://alice:motdepasse@192.168.1.42:8080 にアクセスします。

!
HTTP Basic は暗号化されていません
HTTPSを使わない場合、パスワードはLAN上を平文で送信されます。家庭内のWPA2/3で保護されたWi-Fi環境なら許容できますが、共有オフィスには適しません。本格的な運用には、自己署名証明書を使うCaddy、または設定不要で通信全体をWireGuardで暗号化するTailscaleを使います。

#セキュリティに関するベストプラクティス

ファイアウォールで送信元 IP アドレスに基づいてアクセスを制限する
念には念を入れて、Nginxを使っていてもUFW/iptablesのルールは維持してください。Nginxのバグや誤ったバインド設定によって、ポート11434が直接公開される可能性があります。
外部からの /api/create を無効にする
このエンドポイントでは、任意のModelfileを送信できます。Nginxを使用している場合は、location /api/create { return 403; } を追加してください。
リクエストのログ記録
Nginxのaccess_logには、誰が何を呼び出しているかが記録されます。サーバーのIPアドレスの漏えいや、設定ミスでリクエストを大量送信しているクライアントを見つけるのに役立ちます。
ユーザーごとのクォータ
Ollama には標準では備わっていません。午前 3 時に大規模な生成ジョブを実行する Bob の利用を制限したい場合は、ミドルウェアとして LiteLLM や Open WebUI を検討してください。
~/.ollamaをバックアップする
中央に集約したサーバーは単一障害点になります。モデルのフォルダは100 GB以上になることがあります。最低限、外部ディスクへバックアップするrsyncスクリプトを用意してください。

#トラブルシューティング

クライアントから接続すると「Connection refused」が表示される
Ollamaがまだ127.0.0.1で待ち受けています。サーバー上でss -tlnp | grep 11434を実行して確認してください。127.0.0.1:11434が表示される場合、サービスがOLLAMA_HOST変数を認識していません。systemctl show ollama | grep Environmentで再確認してください。
Connection timed out
ファイアウォールがブロックしています。クライアントから nc -zv 192.168.1.42 11434 を実行してみてください。タイムアウトした場合はファイアウォールが原因です。拒否された場合は Ollama がリスニングしていません。
Open WebUIにおけるCORSエラー
OLLAMA_ORIGINS=*が設定されていないか、適用されていません。デバッグには、curl -H "Origin: http://autre-machine" -I http://192.168.1.42:11434を実行してください。レスポンスにはAccess-Control-Allow-Originが含まれている必要があります。
macOS:再起動後に変数が無視されます
launchctl setenvの設定は再起動後に保持されません。LaunchAgentが必要です。実用的な代替案は、launchctl setenvとopen Ollama.appを実行するスクリプト~/start-ollama.shを用意し、再起動するたびに手動で実行することです。
複数ユーザーでの急激な遅延
Ollama はモデルごとにリクエストをキューで処理します。14B モデルで3人のユーザーが同時にアクセスした場合、3番目のユーザーは待機します。OLLAMA_NUM_PARALLEL=2(環境変数)を設定することで、並列リクエストを2つ可能にできますが、VRAM の使用量が増加します。
リクエストの合間にモデルがアンロードされる
デフォルトでは、Ollamaは最後のリクエストから5分後にモデルをメモリからアンロードします。OLLAMA_KEEP_ALIVE=24hを設定すると、モデルをVRAMに保持するよう強制できます。共有サーバーでは極めて重要です。

#さらに詳しく

共有のOllamaサーバーは、複数ユーザーで利用する環境の基盤です。そこからの自然な発展方向は3つあります。

共有チャットインターフェースを追加する
「Open WebUIとOllama:完全ガイド」では、このサーバーに接続する、複数ユーザー向けのChatGPT風フロントエンドの構築方法を詳しく説明しています。
Dockerで本番環境にデプロイ
「LLMをDocker Composeでプロダクション環境にデプロイする」ガイドでは、TraefikとHTTPSを用いたコンテナ化された同じアーキテクチャが示されています。
イントラネット用チャットボットへ拡張する
ガイド「イントラネット上でチーム向けAIチャットボットを導入する」では、SSO認証、モニタリング、会話のバックアップを追加します。
このガイドは役に立ちましたか?

ご意見、誤りのご指摘、補足はありますか?ぜひお知らせください。皆さんにとってより良いガイドにするために役立ちます。