VPN · Návod

Jak použít konfigurační soubor WireGuard

Aktualizováno September 23, 2026 14 min čtení

Na této stránce
  1. Co je uvnitř souboru .conf, řádek po řádku
  2. Windows: import tunelu
  3. Android a iPhone: naskenujte QR kód nebo importujte soubor
  4. macOS a Linux
  5. Na routeru, aby byla pokrytá celá domácnost
  6. Připojí se, ale nic se nenačte — a další skutečné problémy
  7. Kde konfigurační soubor získat
  8. FAQ

Připojení WireGuard je textový soubor. Opravdu nic víc — pár řádků s vašimi klíči, adresou serveru a pravidly, co se má posílat tunelem. Jakmile ten soubor máte, připojit se k WireGuard VPN serveru znamená jen předat ho aplikaci WireGuard na zařízení, které právě používáte.

Tento návod dělá dvě věci. Nejdřív projde skutečný konfigurační soubor řádek po řádku, abyste věděli, co každé nastavení dělá a které změnit, když něco nefunguje. Pak ukáže, jak soubor importovat a připojit se na Windows, Android, iPhone, macOS, Linux a routeru, a nakonec probere těch pár problémů, za kterými stojí téměř každá stížnost na WireGuard: handshake, který se nikdy nedokončí, a tunel, který se připojí, ale nenačte žádnou stránku.

Co je uvnitř souboru .conf, řádek po řádku

Každá konfigurace WireGuard má stejnou dvoudílnou strukturu. [Interface] popisuje váš konec tunelu; [Peer] popisuje stroj, ke kterému se připojujete. Tady je kompletní klientská konfigurace, v níž jsou tajné údaje nahrazeny zástupnými hodnotami:

[Interface]
PrivateKey = YOUR_PRIVATE_KEY_KEEP_THIS_SECRET
Address    = 10.7.0.4/32
DNS        = 10.7.0.1

[Peer]
PublicKey           = THE_SERVER_PUBLIC_KEY_FROM_YOUR_PROVIDER
Endpoint            = 198.51.100.10:51820
AllowedIPs          = 0.0.0.0/0, ::/0
PersistentKeepalive = 25
Oba klíče výše jsou zástupné hodnoty a adresa 198.51.100.10 je dokumentační adresa vyhrazená v RFC 5737 — nic z toho se nikam nepřipojí. Použijte hodnoty z vlastního souboru.

Blok [Interface]: vaše strana

  • PrivateKey — to je vaše identita ve VPN. Kdokoli ho má, může vystupovat jako vy. Má 44 znaků base64 a končí na =; pokud má váš jinou délku, soubor se někde při kopírování zkrátil.
  • Address — IP adresa, kterou vaše zařízení má uvnitř tunelu, ne vaše veřejná IP. /32 znamená „jen tato jedna adresa“, což je u klienta normální.
  • DNS — resolver, který se používá, dokud je tunel aktivní. Bez něj se vaše zařízení dál ptá starého resolveru, což jednak prozrazuje, co vyhledáváte, jednak často nedokáže přeložit nic na druhé straně.
  • MTU — volitelný a zároveň nejužitečnější řádek, o kterém je dobré vědět. Ve většině souborů chybí, protože výchozí hodnota sedí; případ, kdy nesedí, najdete v části řešení problémů.

Blok [Peer]: strana serveru

  • PublicKey — veřejný klíč serveru. Ten váš se ve vašem souboru nikdy neobjeví; drží ho server.
  • Endpoint — kam posílat pakety, ve tvaru host:port. WireGuard funguje jen přes UDP a 51820 je obvyklý port, ne povinný.
  • AllowedIPs — které cíle jdou tunelem. 0.0.0.0/0, ::/0 znamená všechno, k čemuž VPN pro soukromí slouží. Užší seznam — třeba jen interní rozsah vaší firmy — pošle tunelem jen to a zbytek nechá na běžném připojení. Takovému uspořádání se říká split tunnel (dělený tunel) a je to záměrná volba, ne rozbitý plný tunel.
  • PersistentKeepalive — každých 25 sekund pošle malý paket, aby zařízení NAT mezi vámi a serverem udrželo zpáteční cestu otevřenou. Potřebujete ho vždy, když jste za NAT, a na telefonu nebo domácím připojení za ním jste vždycky.
Detail, který vysvětluje častý zmatek. Address a DNS vůbec nejsou nastavení WireGuardu — jsou to pokyny pro pomocný nástroj wg-quick, který konfiguruje vaše síťové rozhraní. Samotný WireGuard je nikdy nevidí. Můžete si to ověřit: wg-quick strip wg0 vypíše konfiguraci, kterou jádro skutečně dostane, a oba řádky v ní prostě chybí. Záleží na tom, pokud někdy nastavíte tunel přes wg setconf místo wg-quick — pak vám nikdo nepřidělí adresu ani resolver a tunel naběhne připojený k ničemu.

Potřebujete konfigurační soubor k importu? Služba HytHost VPN vám dá hotovou konfiguraci WireGuard od €0.99/měs.

Zobrazit tarify VPN

Windows: import tunelu

Pro Windows existuje oficiální aplikace WireGuard a import souboru do ní je celá práce.

  1. Nainstalujte WireGuard z wireguard.com/install.
  2. Klikněte na Přidat tunel vlevo dole; otevře se výběr souborů filtrovaný na Konfigurace souborů (*.zip, *.conf). Vyberte svůj .conf a objeví se v seznamu tunelů pod názvem souboru.
  3. Nebo ho vložte. Šipka vedle tlačítka Přidat tunel nabízí Přidat prázdný tunel…, který vám dá textové pole — hodí se, když konfigurace přišla ve zprávě, a ne jako soubor. Pole je předvyplněné novým privátním klíčem, takže ten řádek smažte a vložte přes něj celou svou konfiguraci.
  4. Klikněte na Aktivovat. Stav se změní na Aktivní a panel začne počítat přenesené bajty. Tohle počítadlo je nejrychlejší kontrola, jakou máte: pokud ukazuje odchozí data a nic se nevrací, handshake se nedokončuje.
V této aplikaci stojí za to znát dvě volby. Blokovat netunelovaný provoz (kill-switch) na obrazovce úprav tunelu zastaví vše, co by odcházelo mimo tunel, když tunel spadne — správné nastavení, pokud je smyslem VPN, aby z ní nic neuniklo. A Exportovat záznam do souboru je místo, kde vám aplikace srozumitelně řekne, proč tunel odmítl naběhnout.

Android a iPhone: naskenujte QR kód nebo importujte soubor

Na telefonu máte dvě cesty a QR kód existuje právě proto, že psát 44znakový klíč na dotykové obrazovce je utrpení.

Android

  1. Nainstalujte WireGuard z Play Store a klepněte na tlačítko +.
  2. Obrazovka Vytvořit WireGuard tunel nabízí Skenovat z QR kódu, Importovat ze souboru nebo archivu a vytvoření tunelu od nuly. Vyberte to, co odpovídá tomu, co jste dostali.
  3. Pokud se aplikace zeptá, pojmenujte tunel a pak přepněte jeho přepínač. Android se jednou zeptá na povolení přidat konfiguraci VPN — ten dotaz pochází od operačního systému, ne od aplikace.

iPhone a iPad

  1. Nainstalujte WireGuard z App Store a klepněte na Add a tunnel.
  2. V části Add a new WireGuard tunnel zvolte Create from QR code nebo Create from file or archive. Obrazovka skeneru má název Scan QR code; po úspěšném naskenování vás požádá o pojmenování tunelu.
  3. Zapněte ho a povolte konfiguraci VPN, když se iOS zeptá.

Jak vytvořit QR kód z konfiguračního souboru, který už máte

QR kód není něco, co vám musí dát poskytovatel — je to jen váš konfigurační soubor nakreslený jako obrázek a můžete si ho vytvořit sami jedním příkazem. Aplikace WireGuard to sama doporučuje:

# prints the code straight into the terminal, ready to scan off the screen
qrencode -t ansiutf8 < wg0.conf

# or write it to an image file
qrencode -o wg0.png < wg0.conf

Na Debianu nebo Ubuntu získáte qrencode přes apt install qrencode; na macOS přes brew install qrencode.

QR kód WireGuard obsahuje váš privátní klíč. Není to odkaz ani identifikátor — je to celá konfigurace včetně klíčů, v podobě, kterou přečte jakýkoli fotoaparát. Nikdy ho nezveřejňujte na Discord serveru, ve vlákně na fóru ani v tiketu podpory a dávejte pozor na snímky obrazovky. Pokud kód skenujete z obrazovky, potom ho zavřete. Zacházejte s obrázkem přesně tak jako se souborem.

macOS a Linux

macOS

Nainstalujte WireGuard z Mac App Store. Aplikace pro Mac není aplikace pro iPhone na větší obrazovce: žije v liště nabídek a její okno se otevírá přes Manage Tunnels. Klikněte na Import tunnel(s) from file (v liště nabídek najdete totéž jako Import Tunnel(s) from File…), vyberte svůj .conf, pak označte tunel a klikněte na Activate. Na Macu není žádná čtečka QR kódů — QR kódy jsou pro telefony — takže použijte přímo soubor, nebo zvolte Add Empty Tunnel… a konfiguraci do něj vložte.

Pokud dáváte přednost terminálu, brew install wireguard-tools vám dá stejné příkazy wg-quick jako na Linuxu, popsané dále.

Linux

  1. Nainstalujte nástroje. Na Debianu nebo Ubuntu: sudo apt install wireguard. Většina distribucí má balíček se stejným názvem.
  2. Umístěte soubor tam, kde ho wg-quick hledá. Tady lidé chybují nejčastěji, protože název souboru se stane názvem rozhraní:
    sudo install -m 600 -o root -g root wg0.conf /etc/wireguard/wg0.conf
    Na 600 záleží — soubor obsahuje váš privátní klíč a ostatní uživatelé počítače by ho neměli mít možnost číst. Název držte krátký a jednoduchý; musí to být platný název síťového rozhraní.
  3. Spusťte ho:
    sudo wg-quick up wg0
    sudo wg show
    wg show je jediný příkaz, který stojí za to si zapamatovat. Vypíše peer, endpoint, řádek latest handshake a počítadla přenosu. Časové razítko handshaku, které se nikdy neobjeví, je typický znak problému z další části.
  4. Spouštění při startu: sudo systemctl enable --now wg-quick@wg0. Ručně tunel zastavíte příkazem sudo wg-quick down wg0.
Dvě chyby, které je dobré poznat na první pohled. wg-quick: `/etc/wireguard/wg0.conf' does not exist znamená, že zadaný název neodpovídá žádnému souboru v té složce — požádali jste o wg0 a soubor se jmenuje jinak. A pokud tunel odmítá naběhnout se stížností na resolvconf, jde o řádek DNS: wg-quick potřebuje k jeho použití resolvconf nebo systemd-resolved. Jeden z nich nainstalujte, nebo řádek DNS odstraňte a resolver nastavte sami.

Na routeru, aby byla pokrytá celá domácnost

Tunel na routeru pokryje každé zařízení za ním, včetně těch, na kterých aplikace VPN vůbec nepoběží — herní konzole, televize, chytrý reproduktor. Jestli to jde, záleží výhradně na firmwaru.

FirmwarePodpora WireGuardKde hledat
OpenWrtAno, s balíčkemNainstalujte luci-proto-wireguard, pak přidejte rozhraní s protokolem WireGuard VPN a vyplňte pole podle svého souboru
Asus (novější originální firmware)Ano, u mnoha modelůSekce VPN má klienta WireGuard, který přímo importuje .conf
Asuswrt-MerlinAnoStejný princip, s větší kontrolou nad směrováním
Mikrotik RouterOS 7AnoWireGuard je vestavěný; RouterOS 6 ho nemá vůbec
Běžný router od poskytovatele internetuObvykle neŽádný WireGuard a žádný způsob, jak ho přidat — viz níže

Pokud je váš router krabička, kterou vám dal poskytovatel internetu, reálné možnosti jsou zapojit za ni router, který máte pod kontrolou, nebo dál používat konfigurace pro jednotlivá zařízení. Ani jedno není prohra; nastavení po zařízeních je často i lepší, protože tunel můžete nechat vypnutý na zařízeních, která ho nepotřebují.

Nepoužívejte znovu konfiguraci, která už je na jiném zařízení. Konfigurační soubor je jeden peer a jeden peer je jedno zařízení. Když konfiguraci z telefonu nahrajete do routeru, budou se obě zařízení přetahovat o stejnou identitu a obě připojení budou nespolehlivá. Objednejte si druhou konfiguraci, nebo na vlastním serveru přidejte druhý peer.

Jednu věc je dobré rozhodnout, než celou domácnost pošlete tunelem: tunelem pak jde všechno. Bankovní weby, které nemají rády zahraniční adresy, streamovací služby kontrolující váš region a cokoli, co komunikuje se zařízeními ve vaší vlastní síti, se mohou chovat jinak. Tady si užší AllowedIPs zaslouží své místo — posílejte tunelem jen to, co jím jít musí, a zbytek nechte být.

Připojí se, ale nic se nenačte — a další skutečné problémy

WireGuard při selhání neobvykle mlčí, a to je záměr — na neověřený paket nepřijde vůbec žádná odpověď, takže skener nepozná, jestli něco naslouchá. Vedlejším efektem je, že špatný klíč, špatný port i zablokovaná síť vypadají z vaší strany stejně: ticho. Postupujte podle příznaku.

Co vidíteCo to obvykle jeKde hledat
Nikdy žádný handshake; odeslané bajty rostou, přijaté zůstávají na nuleNic neodpovídá, nebo se odpověď nemůže vrátitEndpoint, PublicKey serveru, blokované UDP
Handshake v pořádku, drobnosti fungují, webové stránky se zaseknou napůl načtenéMTUPřidejte řádek MTU do [Interface]
Připojeno, ale nic se nepřeložíDNSŘádek DNS a resolvconf na Linuxu
Připojeno, názvy se překládají, ale tunelem neprochází žádný provozPříliš úzké AllowedIPsAllowedIPs v [Peer]
Funguje, pak po minutě či dvou nečinnosti přestaneVypršelo mapování NATPersistentKeepalive = 25

"Handshake did not complete"

Vaše zařízení odeslalo iniciační paket a nic se nevrátilo. Zkontrolujte v tomto pořadí:

  • Endpoint. Správný host, správný port a port je UDP. Překlep tady způsobí přesně tento příznak a nic jiného.
  • Jestli se UDP vůbec dostane ven. Wi-Fi pro hosty, hotelové sítě, některé firemní sítě a pár mobilních operátorů povolují na běžných portech jen TCP. Pokud stejná konfigurace funguje doma a selhává v jedné konkrétní síti, konfigurace je v pořádku a problém je v síti.
  • Klíče nejsou prohozené. PublicKey v [Peer] je veřejný klíč serveru a server musí zvlášť mít veřejný klíč odpovídající vašemu PrivateKey. Konfigurace zkopírovaná pro jiné zařízení selže právě tady.
  • Vaše hodiny. Handshake WireGuardu obsahuje časové razítko a odmítne takové, které je hodně mimo. Stává se to zřídka, ale na zařízeních, která ztratila správný čas, ano.

Pokud tunel funguje z domova, ale nikdy z mobilního připojení, příčina může být na straně vašeho poskytovatele, ne u vás — carrier-grade NAT a podobná řešení mění, co se k vám dostane. Návod na přesměrování portů vysvětluje, jak to za pár minut zjistit z vlastního routeru.

Problém s MTU, který stojí za to jednou pochopit

Tohle je klasický případ „připojeno, ale internet je rozbitý“ a vzorec je typický: ping funguje, DNS funguje, malé stránky fungují a cokoli většího se navždy zasekne.

Příčinou je velikost. Zabalení provozu do tunelu přidává hlavičky, takže paket, který se přesně vešel do běžného připojení, se uvnitř WireGuardu už nevejde. Malé pakety projdou; velké se zahodí. Normálně síť odesílateli řekne, ať použije menší pakety, ale zpráva, která to dělá, bývá často filtrovaná, takže místo chyby prostě čekáte.

Řešením je říct WireGuardu, ať používá menší pakety od začátku. wg-quick se o to už snaží: vezme MTU vaší běžné trasy a odečte 80 bajtů na režii tunelu, takže na obyčejném 1500bajtovém připojení dostanete 1420. Když je to pořád moc — některé mobilní sítě, většina připojení, která už běží přes jiný tunel — nastavte hodnotu výslovně a postupně ji snižujte:

[Interface]
MTU = 1420      # what wg-quick would have picked
# still stalling? try 1380, then 1280

1280 je spodní hranice, kterou má smysl zkusit, protože je to nejmenší velikost paketu, kterou podle IPv6 musí přenést všechno, takže projde prakticky jakoukoli cestou. Stojí to trochu efektivity a je to mnohem lepší než tunel, který visí.

Tunel běží, ale nic jím neprochází

Nejdřív zkontrolujte AllowedIPs. Není to firewall ani seznam oprávnění — určuje, které cíle se do tunelu vůbec směrují. Pokud neobsahuje 0.0.0.0/0, provoz do zbytku internetu tunelem nikdy jít neměl a vaše připojení se chová přesně podle konfigurace. Na Linuxu ip route show table all | grep wg0 ukáže, co se skutečně nasměrovalo.

Pokud je směrování v pořádku a jen se nepřekládají názvy, jde o řádek DNS — buď chybí, nebo tam je, ale neuplatní se, protože není nainstalovaný resolvconf.

Kde konfigurační soubor získat

Všechno výše předpokládá, že soubor máte. Získat ho lze přesně dvěma způsoby.

Provozujte server sami

Vygenerujete pár klíčů, nainstalujete WireGuard na stroj s veřejnou adresou, přidáte své zařízení jako peer a klientskou konfiguraci napíšete ručně. Není to těžké a opravdu stojí za to se to naučit. Náklady jsou ale průběžné: server, za který platíte a který musíte aktualizovat, a ruční úprava na obou koncích pokaždé, když přidáte zařízení — protože pamatujte, jeden peer je jedno zařízení.

Získejte ho od poskytovatele

Alternativou je, že se soubor vygeneruje za vás a vy si ho stáhnete. U HytHost VPN od €0.99/měs ho najdete tady:

  1. Objednejte službu a přihlaste se do klientské zóny, pak v seznamu otevřete svou službu VPN.
  2. Najděte sekci WireGuard Configuration. Nabízí dvě tlačítka — Copy to Clipboard, které zkopíruje text konfigurace do schránky, a Download Configuration, které vám dá hotový soubor.
  3. Pokud jste ho zkopírovali, vložte ho do obyčejného textového editoru a uložte s příponou .confwg0.conf je dobrý název. Ověřte, že editor nepřidal na konec .txt.
  4. Importujte ho podle části výše pro vaše zařízení. Na telefonu z něj nejdřív vytvořte QR kód pomocí qrencode.

Stejná stránka ukazuje, jestli je tunel právě připojený k serveru, což vyřeší otázku „je chyba u mě, nebo u nich“ dřív, než začnete měnit nastavení. Tlačítko pro QR kód tam není — vytvořte si ho sami ze souboru, což zároveň znamená, že kód nikdy necestuje tam, kam nemusí.

Potřebujete konfigurační soubor k importu? Služba HytHost VPN vám dá hotovou konfiguraci WireGuard od €0.99/měs.

Zobrazit tarify VPN
FAQ

Často kladené otázky

Nainstalujte oficiální aplikaci WireGuard, importujte konfigurační soubor, který vám dal váš server nebo poskytovatel, a zapněte tunel. Na Windows to znamená Přidat tunel a pak Aktivovat; na Androidu a iPhone můžete soubor místo importu naskenovat jako QR kód; na Linuxu umístěte soubor do /etc/wireguard/ a spusťte wg-quick up s jeho názvem. Časové razítko handshaku a přijatá data v aplikaci potvrzují, že spojení funguje.

Obyčejný textový soubor, obvykle s příponou .conf, se dvěma bloky. [Interface] popisuje vaše zařízení: jeho privátní klíč, adresu, kterou dostane uvnitř tunelu, a resolver, který má používat. [Peer] popisuje server: jeho veřejný klíč, host a UDP port a které cíle se mají směrovat tunelem. Ten soubor je celé připojení — nic jiného se ve vašem zařízení nikde neukládá.

Spolehlivě ne, a důvod stojí za to znát. Konfigurace je jeden peer identifikovaný jedním párem klíčů a server si u každého peeru pamatuje jedinou aktuální polohu. Připojíte-li telefon a notebook se stejným souborem, server posílá zpáteční provoz tomu, kdo provedl handshake naposledy, takže obě připojení vypadávají. Každé zařízení potřebuje vlastní konfiguraci s vlastním párem klíčů.

Vygenerujete ho z konfiguračního souboru, který už máte — QR kód WireGuard je prostě ten soubor zakódovaný jako obrázek. Spusťte qrencode -t ansiutf8 < wg0.conf, čímž ho vypíšete v terminálu a naskenujete z obrazovky, nebo qrencode -o wg0.png < wg0.conf, čímž uložíte obrázek. Protože kód obsahuje privátní klíč, zacházejte s ním jako se samotným souborem: nikdy ho nikde veřejně nezveřejňujte.

Ne. Privátní klíč identifikuje vaše zařízení ve VPN, takže kdokoli má soubor, se může připojit jako vy. Nikdy ho nezveřejňujte v chatu, na fóru, v issue trackeru ani v tiketu podpory; totéž platí pro QR kód nebo snímek obrazovky souboru. Pokud byla konfigurace vyzrazena, řešením je vygenerovat nový pár klíčů a nahradit peer, ne doufat, že ji nikdo nečetl.

Tato zpráva znamená, že iniciační paket odešel a nic se nevrátilo, a WireGuard vám nemůže říct proč, protože nikdy nedostal odpověď. Zkontrolujte host a port v Endpoint, ověřte, že síť, ve které jste, povoluje odchozí UDP, a ověřte, že PublicKey v [Peer] je klíč serveru a server má veřejný klíč odpovídající vašemu privátnímu. Pokud stejný soubor funguje v jiné síti, soubor je správně a síť filtruje UDP.

Tento vzorec — handshake v pořádku, ping v pořádku, webové stránky se zasekávají — je téměř vždy MTU. Jakmile se provoz zabalí do tunelu, každý paket naroste, takže pakety, které se dřív vešly, se zahazují, a zpráva, která by to normálně ohlásila, bývá filtrovaná. Přidejte řádek MTU do [Interface]: 1420 je hodnota, kterou by wg-quick spočítal na obyčejném připojení, a 1380 nebo 1280 funguje tam, kde je to pořád moc.

Pro použití konfiguračního souboru ne. Klient navazuje odchozí UDP spojení se serverem a odpověď se vrací přes mapování, které toto spojení vytvoří — a právě to udržuje otevřené PersistentKeepalive. Port je potřeba otevřít jen na straně, která WireGuard server provozuje a musí přijímat příchozí spojení.

Od poskytovatele, který ji vygeneruje za vás. Služba HytHost VPN od €0.99/měs zobrazuje v klientské zóně sekci WireGuard Configuration s tlačítkem pro zkopírování textu konfigurace a tlačítkem pro stažení hotového souboru. Odtud ji importujete do aplikace WireGuard na jakémkoli zařízení a stejná stránka ukazuje, jestli je tunel právě připojený.

Konfigurační soubor, který vám zůstane

HytHost VPN vám dá konfiguraci WireGuard, kterou jednou stáhnete a importujete na jakékoli zařízení — Windows, Android, iPhone, macOS, Linux nebo váš router. Od €0.99/měs.

Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hours

Byl tento návod užitečný?