ZWID_Pierwszy film AI za darmo - 10 kredytów na start, potem od 3 zł. Bez abonamentu.1. film za 0 złZrób film →
✨ Świeża dostawa•nowe kody na kinetyka.pl: Gemini Pro 18 mies. 170 zł•Cursor, ElevenLabs, Lovable i więcej, roczne plany AI w ułamku ceny Zobacz →
Przejdź do treści
Artykuły

Cloudflare Tunnel i Ollama: lokalny model AI w sieci bez portów

Quick Tunnel z Cloudflare wystawia lokalną Ollamę pod adresem HTTPS jednym poleceniem. Pokazuję pułapkę z błędem 403, którą sprawdziłem u siebie, i trzy sposoby, żeby nie oddać karty graficznej obcym.

5 min czytania
cloudflare-tunnel-ollama

👁 120 przeczytań

// w skrócie
  • Lokalny model Ollama można udostępnić przez internet bez otwierania portów, używając cloudflared tunnel z flagą --http-host-header localhost:11434.
  • Ollama 0.35.1 odrzuca ruch z obcą nazwą hosta kodem 403, gdy nagłówek Host wskazuje domenę inną niż localhost, np. *.trycloudflare.com.
  • Quick Tunnel od cloudflared 2026.9.3 obsługuje flagę --allowed-mail, która wpuszcza tylko wskazane adresy e-mail, ale działa wyłącznie w przeglądarce, nie dla skryptów i API.

Cloudflare Tunnel pozwala udostępnić lokalny model AI z Ollamy przez internet bez publicznego adresu IP i bez otwierania portów w routerze, a wersja Quick Tunnel nie wymaga nawet konta. Jest jedna pułapka, którą sprawdziłem u siebie: Ollama 0.35.1 odrzuca ruch z obcą nazwą hosta kodem 403, więc tunel trzeba uruchomić z flagą --http-host-header. Druga sprawa to bezpieczeństwo - Ollama nie ma haseł, więc publiczny adres oznacza darmowy dostęp do Twojej karty graficznej dla każdego, kto go zna. Szerzej o Cloudflare: przewodnik.

Stan na 5 października 2026

  • Quick Tunnel: jedno polecenie, losowy adres *.trycloudflare.com, bez konta i opłat, bez gwarancji dostępności, do 200 równoległych zapytań.
  • Nowość z 2 października: od cloudflared 2026.9.3 flaga --allowed-mail wpuszcza tylko wskazane adresy e-mail (kod PIN, bez konta Cloudflare).
  • Ograniczenie ochrony e-mailem: działa tylko w przeglądarce, nie dla skryptów i API.
  • Co sprawdziłem: zachowanie Ollamy 0.35.1 przy obcej nazwie hosta i nagłówku Origin (na moim komputerze z RTX 4090).
  • Czego nie sprawdziłem: samego tunelu - nie mam na tym komputerze cloudflared i nie instalowałem go do tego tekstu. Polecenia tunelu podaję za dokumentacją Cloudflare.

Po co wystawiać lokalny model do sieci

  • Chcesz używać modelu z domowego komputera z dobrą kartą graficzną na telefonie albo laptopie poza domem.
  • Chcesz pokazać komuś swój czat z lokalnym modelem bez wdrażania go na serwer.
  • Hostowany asystent (na przykład agent w chmurze) ma wywołać Twój lokalny serwer MCP albo model.

Tradycyjnie wymagało to publicznego IP, przekierowania portów w routerze i certyfikatu SSL. Tunnel robi to inaczej: program cloudflared na Twoim komputerze sam łączy się z Cloudflare, a ruch z internetu przychodzi tym połączeniem. Router nie musi mieć otwartego żadnego portu, a adres dostaje od razu HTTPS.

Mój test: dlaczego Ollama odpowie 403

Ollama od dłuższego czasu chroni się przed atakami typu DNS rebinding: gdy nasłuchuje tylko na localhost, odrzuca zapytania, w których nagłówek Host wskazuje inną domenę. Przez tunel przychodzi właśnie taki ruch - z nagłówkiem Host: coś-losowego.trycloudflare.com. Sprawdziłem to, symulując zapytanie z tunelu:

Zapytanie do Ollamy 0.35.1 na localhost:11434Odpowiedź
zwykłe, Host: localhost200
Host: przyklad-abc.trycloudflare.com (/api/version)403
Host: przyklad-abc.trycloudflare.com (/api/tags)403
Origin: https://przyklad-abc.trycloudflare.com403

Polecenia, którymi to sprawdzałem (możesz powtórzyć u siebie):

curl -s -o /dev/null -w "%{http_code}\n" http://localhost:11434/api/version
curl -s -o /dev/null -w "%{http_code}\n" -H "Host: przyklad-abc.trycloudflare.com" http://localhost:11434/api/version
curl -s -o /dev/null -w "%{http_code}\n" -H "Origin: https://przyklad-abc.trycloudflare.com" http://localhost:11434/api/tags

Wniosek: sam tunel cloudflared tunnel --url http://localhost:11434 zwróci Ci błąd 403 przy każdym zapytaniu. Rozwiązania są dwa:

  1. Lepsze: kazać cloudflared podmieniać nagłówek Host na localhost:11434 flagą --http-host-header. Ollama dalej nasłuchuje tylko lokalnie.
  2. Gorsze: uruchomić Ollamę z OLLAMA_HOST=0.0.0.0. Wtedy sprawdzanie hosta jest wyłączone, ale model staje się dostępny dla każdego w Twojej sieci lokalnej.

Jeśli z modelu ma korzystać aplikacja działająca w przeglądarce pod adresem tunelu, dodatkowo ustaw zmienną OLLAMA_ORIGINS z tym adresem, inaczej zapytania z nagłówkiem Origin też dostaną 403.

Krok po kroku: Quick Tunnel do Ollamy

  1. Zainstaluj cloudflared. Na Windows: winget install --id Cloudflare.cloudflared, na macOS: brew install cloudflared. Pobieraj tylko z oficjalnych źródeł Cloudflare (GitHub cloudflare/cloudflared, winget, Homebrew).
  2. Sprawdź, czy Ollama działa: curl http://localhost:11434/api/version.
  3. Uruchom tunel:
    cloudflared tunnel --url http://localhost:11434 --http-host-header localhost:11434

    W konsoli pojawi się adres w rodzaju https://slowo-slowo-slowo.trycloudflare.com.

  4. Przetestuj z telefonu albo innej sieci:
    curl https://TWOJ-ADRES.trycloudflare.com/api/tags
  5. Wyłącz tunel klawiszami Ctrl+C, gdy skończysz. Adres przestaje działać od razu, a przy następnym uruchomieniu dostaniesz nowy.

Bezpieczeństwo: tego nie pomijaj

Nie przepłacaj za te subskrypcje

Prowadzę sklep z rocznymi dostępami do narzędzi AI - te same konta, o których piszę wyżej, tylko taniej niż w cenniku producenta.

Zobacz, co jest dostępne

Ollama nie ma logowania ani kluczy API. Każdy, kto zna adres tunelu, może:

  • generować tekst na Twojej karcie graficznej (i Twoim prądzie);
  • pobierać nowe modele (/api/pull), zapychając dysk;
  • usuwać modele (/api/delete).

Losowy adres trycloudflare.com jest trudny do zgadnięcia, ale to nie zabezpieczenie - link wystarczy wkleić w niewłaściwe miejsce. Dlatego:

Opcja A: tunel tylko na chwilę

Do szybkiego pokazu - uruchamiasz, pokazujesz, wyłączasz. Nie zostawiaj gołej Ollamy w tunelu na noc.

Opcja B: interfejs z logowaniem zamiast surowego API

Wystaw przez tunel nie Ollamę, tylko interfejs, który ma konta użytkowników, na przykład Open WebUI. Wtedy możesz dodać nową ochronę e-mailem:

cloudflared tunnel --url http://localhost:3000 --allowed-mail [email protected]

Osoba otwierająca adres podaje e-mail, dostaje kod PIN od Cloudflare i dopiero wtedy widzi stronę. Lista dozwolonych adresów zostaje na Twoim komputerze - Cloudflare wie tylko, że tunel wymaga logowania. Zastrzeżenie: Quick Tunnels nie obsługują Server-Sent Events, a część interfejsów czatu używa ich do strumieniowania odpowiedzi. Jeśli odpowiedzi pojawiają się dopiero w całości albo wcale, to prawdopodobnie ten powód.

Opcja C: stały tunel z kontem Cloudflare

Do codziennego używania lepszy jest nazwany tunel z własną domeną i Cloudflare Access (darmowe do 50 użytkowników). Wtedy masz stały adres, logowanie przez Google lub GitHub i tokeny serwisowe dla skryptów - czyli to, czego nie da ochrona e-mailem w Quick Tunnel, która działa tylko w przeglądarce.

Quick TunnelQuick Tunnel + -allowed-mailNazwany tunel + Access
Konto Cloudflarenienietak
Adreslosowy, zmienia sięlosowy, zmienia sięstały, Twoja domena
Ochronabrakkod PIN na e-maillogowanie, polityki, tokeny
Dostęp ze skryptów i APItaknie (tylko przeglądarka)tak (tokeny serwisowe)
Do czegoszybki testpokaz dla konkretnych osóbcodzienne używanie

Agenci i tunele

Cloudflare pisze, że Quick Tunnels są dziś popularniejsze niż kiedykolwiek, bo agenci kodujący sami je uruchamiają, żeby pokazać wynik pracy. 18 września 2026 strona o Quick Tunnels trafiła na szczyt Hacker News (ponad 800 punktów). Jeśli Twój agent (Claude Code, Codex, Cursor) ma uprawnienia do terminala, dopisz w pliku AGENTS.md regułę, by każdy tunel uruchamiał z --allowed-mail i Twoim adresem. Cloudflared wypisuje w logu, czy tunel ma ochronę, więc łatwo sprawdzić, czy agent posłuchał.

Jeśli zaczynasz z lokalnymi modelami, zacznij od przewodnika Ollama: instalacja i mój test na RTX 4090, a o bezpieczeństwie agentów pisałem w tekście sandbox nie istnieje.

Google · Twoje źródłaPromptowy wyżej w Twoim Google - jednym kliknięciemDodaj do preferowanych źródeł →

Źródła

// Newsletter

Cały tydzień w AI, w jednym mailu

Wybrane premiery, narzędzia i analizy. Raz w tygodniu, prosto do skrzynki.

Zapisz się za darmo →
Za darmo. Wypisujesz się jednym kliknięciem.

Najczęstsze pytania

Dlaczego Ollama zwraca błąd 403 przez Cloudflare Tunnel?

Ollama 0.35.1 odrzuca zapytania, w których nagłówek Host wskazuje inną domenę niż localhost - to ochrona przed atakami DNS rebinding. Rozwiązaniem jest uruchomienie tunelu z flagą --http-host-header localhost:11434, która nakazuje cloudflared podmieniać ten nagłówek.

Czy Quick Tunnel Cloudflare wymaga konta i płatności?

Quick Tunnel nie wymaga konta ani opłat - wystarczy jedno polecenie w terminalu. Adres jest losowy w domenie trycloudflare.com, obsługuje do 200 równoległych zapytań i nie daje gwarancji dostępności.

Jak zabezpieczyć Ollamę wystawioną przez Cloudflare Tunnel?

Ollama nie ma logowania ani kluczy API, więc każdy znający adres może generować tekst, pobierać i usuwać modele. Zalecane opcje to krótkotrwały tunel wyłączany zaraz po użyciu, wystawienie Open WebUI z kontami użytkowników zamiast surowego API, lub nazwany tunel z Cloudflare Access dla stałego dostępu.

Co to jest flaga --allowed-mail w cloudflared i jak działa?

Flaga --allowed-mail dostępna od cloudflared 2026.9.3 wpuszcza tylko wskazane adresy e-mail - użytkownik podaje e-mail i otrzymuje kod PIN od Cloudflare. Ochrona działa wyłącznie w przeglądarce i nie chroni dostępu ze skryptów ani API.

// czytaj też

Podobne tematy na Promptowym

Piotr Olszewski

Piotr Olszewski

AUTOR I WYDAWCA

Piotr Olszewski - twórca i autor Promptowego, polskiego serwisu o sztucznej inteligencji. Codziennie śledzi premiery modeli, narzędzia i regulacje AI, i tłumaczy je prostym, konkretnym językiem.

// mapa strony

🛒 Sklep Kinetyka Google AI Gemini Pro 170 zł CapCut Pro 460 zł/rok Lovable Pro 450 zł/rok Zobacz wszystko →
promptowy w liczbach 0tekstów w archiwum0newsów z ostatnich 7 dni0modeli wideo w obserwatorium0zagadek w grach
× ‹ powiększenie ›