Argo Tunnel cloudflared segítségével
Az Argo Tunnel lehetővé teszi, hogy a Cloudflare hálózaton keresztül biztonságosan hozzáférj egy szerverhez anélkül, hogy közvetlenül ki kellene tenni azt az internetre. A cloudflared
CLI eszközzel állíthatod be és kezelheted az Argo Tunnel-t.
1. Lépés: Cloudflare fiók és domain beállítása
Először szükséged lesz egy Cloudflare fiókra és egy domainre, amit a Cloudflare DNS szervereire irányítottál.
- A domain DNS beállításai között győződj meg róla, hogy a domain Cloudflare DNS szerverekre mutat.
2. Lépés: cloudflared
telepítése
Telepítsd a cloudflared
eszközt a gépedre. A telepítési lépések operációs rendszertől függően változnak. Debian alapú rendszereken a köv. módon telepíthető:
wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
sudo dpkg -i cloudflared-linux-amd64.deb
3. Lépés: Cloudflare hitelesítő kulcs (Token) beszerzése
Ahhoz, hogy kapcsolatot létesíthess a Cloudflare és a szerver között, hitelesítési kulcsra lesz szükséged.
- Nyisd meg a Cloudflare dashboardot, válaszd ki a megfelelő domaint.
- Navigálj a Zero Trust Dashboard-ra, és ott kattints az Access menüpontra.
- Itt válaszd ki az Tunnels opciót és kattints a Create a Tunnel gombra.
- Adj egy nevet a tunnelnek, majd futtasd ezt a parancsot a saját szervereden, hogy megkapd a szükséges hitelesítési fájlokat:
cloudflared tunnel login
4. Lépés: Tunnel létrehozása
Miután hitelesítetted magad, létre kell hoznod a Tunnel-t. Ehhez használd az alábbi parancsot:
cloudflared tunnel create <tunnel-nev>
Ez létrehozza a Tunnel-t a megadott névvel. Jegyezd meg a Tunnel UUID-t, amit a Cloudflare visszaad, mert erre később szükséged lesz.
5. Lépés: Konfigurációs fájl beállítása
Készíts egy config.yml
fájlt a cloudflared
konfigurációhoz. Helyezd ezt a fájlt a /etc/cloudflared/
könyvtárba.
Példa config.yml
fájl:
tunnel: <tunnel-uuid>
credentials-file: /etc/cloudflared/<tunnel-uuid>.json
ingress:
- hostname: <subdomain>.yourdomain.com
service: http://localhost:8080
- service: http_status:404
Ebben a fájlban:
- A
tunnel
mezőbe a tunnel UUID kerül. - A
hostname
mezőbe a Cloudflare DNS aldomain, ami a szerveredre fog mutatni. - A
service
mezőbe azt a helyi szolgáltatást kell megadnod, amit a tunnel-ön keresztül el akarsz érni, pl.http://localhost:8080
a helyi szerver elérési útja.
6. Lépés: Tunnel futtatása
Miután elkészítetted a konfigurációs fájlt, elindíthatod a tunnel-t:
cloudflared tunnel run <tunnel-nev>
Ez elindítja a tunnel-t, és a Cloudflare elkezdi továbbítani a kéréseket a szervered felé.
7. Lépés: DNS bejegyzés létrehozása
Annak érdekében, hogy a forgalom a tunnel-en keresztül érkezzen, hozz létre egy CNAME DNS bejegyzést a Cloudflare DNS felületén:
- Menj a DNS részhez a Cloudflare dashboardban.
- Hozz létre egy új CNAME rekordot, ahol a név a beállított aldomain (pl.
subdomain.yourdomain.com
), és a cél auuid.cfargotunnel.com
, ahol azuuid
a tunnel UUID-je.
8. Lépés: Tunnel daemon-ként futtatása (opcionális)
Ha szeretnéd, hogy a tunnel automatikusan induljon a rendszer indulásakor, futtathatod daemon-ként. Használd a systemd
-t a szolgáltatás telepítéséhez:
sudo cloudflared service install
Indítsd el a szolgáltatást:
sudo service cloudflared start
A cloudflared
segítségével könnyen kezelheted a tunnel-t és ellenőrizheted annak működését.