WireGuard slaagt er niet in zijn interface aan te maken, dus er is geen apparaat om te configureren, geen sleutel om uit te wisselen en geen handshake om te debuggen. De fout blijft volledig op de lokale machine, en de fouttekst zegt welk deel van de lokale stack weigerde. Die correct lezen is sneller dan de configuratie van de peer opnieuw installeren. De lagen zijn te scheiden, en het bericht noemt de laag die weigerde.

De fout treedt op voordat een peer spreekt

Een interface aanmaken is één netlink-verzoek aan de kernel om een apparaat van het type wireguard. De kernel heeft wel of geen stuurprogramma dat dat type begrijpt, en het antwoord komt meteen terug. Tijdens deze stap verlaat geen enkel pakket de machine, daarom kunnen eindpuntadressen en serversleutels niet de oorzaak zijn.

Die volgorde is belangrijk voor de diagnose. Als de opdracht nooit een apparaat heeft aangemaakt, kan het probleem geen verkeerde openbare sleutel of een geblokkeerde UDP-poort zijn. Repareer eerst het lokale aanmaakpad en kijk pas daarna naar buiten.

Welke implementatie hoort het apparaat te bezitten

Twee implementaties kunnen dat verzoek beantwoorden. De module in de kernel registreert het apparaattype wireguard, en een implementatie in de gebruikersruimte zoals wireguard-go biedt dezelfde interface via een ander mechanisme. Als de module ontbreekt, weigert de kernel het verzoek met een fout over een niet-ondersteund apparaat, en de oplossing is ofwel de module laden ofwel de hulpprogramma's op de implementatie in de gebruikersruimte richten.

Controleer wat er werkelijk aanwezig is voordat u tussen beide kiest. De eerste opdracht laat zien of de module geladen is en de tweede vraagt het de kernel rechtstreeks:

lsmod | grep wireguard
ip link add wgtest0 type wireguard

De tweede opdracht is de kleinst mogelijke reproductie: hij vraagt om een apparaat en niets anders. Als hij mislukt met een bericht over een niet-ondersteund type, is het ontbrekende stuk de implementatie en niet uw configuratiebestand.

Error textWhat refusedNext step
Unknown device type or operation not supportedThe kernel has no wireguard driverLoad the module or use the userspace implementation
Operation not permittedMissing privilegeUse the service context or grant the capability
File existsThe name is already in useInspect the owner before touching it
No such device in a containerNo tunnel device or capabilityAdd the device and NET_ADMIN to the container

Rechten en grenzen van de container

Het aanmaken en configureren van een netwerkapparaat vereist rechten, hetzij als root of met de mogelijkheid het netwerk te beheren. Een normale gebruikerssessie kan dat niet, en die beperking is het ontwerp en geen obstakel om te omzeilen door een installatieprogramma te draaien dat u niet hebt gecontroleerd.

Binnen een container verdubbelt de grens. De container heeft toegang tot het tunnelapparaat nodig en de mogelijkheid het te configureren, en de vlaggen die dat geven zijn dezelfde die een Linux VPN-container gebruikt. Een beperkte gast die normaal op het web kan browsen, kan nog steeds geen interface aanmaken, omdat browsen die mogelijkheid niet nodig heeft. Geef de mogelijkheid aan de dienst die haar nodig heeft en niet aan elke sessie op de host.

Los het naamconflict op en probeer het daarna opnieuw

Een interface die al bestaat is niet automatisch een restant. Een andere beheerder kan de naam bezitten en hem op dit moment gebruiken, dus inspecteer hem voordat u iets verwijdert:

ip link show wg0
sudo wg show wg0

Als de eigenaar een actieve dienst is, configureer die dienst in plaats van een tweede apparaat aan te maken. Als hij echt verouderd is, verwijder hem dan via het hulpprogramma dat hem heeft aangemaakt, en breng de interface daarna omhoog met de gedocumenteerde client of unit zodat de configuratie en het apparaat gelijk blijven lopen.

Zodra het aanmaken lukt, hoort de volgende fout bij een latere fase, en een unit die een fout meldt nadat het apparaat bestaat is een ander probleem dan een apparaat dat nooit is aangemaakt. Scheid beide voordat u opnieuw rechten wijzigt.

Gerelateerde artikelen