WireGuard өз интерфейсін жасай алмайды, сондықтан конфигурациялайтын құрылғы да, алмасатын кілт те, жөндейтін қол алысу да жоқ. Сәтсіздік толығымен жергілікті машинада қалады, және қате мәтіні жергілікті стектің қай бөлігі бас тартқанын айтады. Оны дұрыс оқу әріптес конфигурациясын қайта орнатудан жылдамырақ. Қабаттарды бөлуге болады, және хабарлама бас тартқан қабатты атайды.

Қате кез келген әріптес сөйлеуінен бұрын орын алады

Интерфейс жасау — ядроға wireguard түріндегі құрылғы туралы жіберілген бір netlink сұранысы. Ядрода сол түрді түсінетін драйвер бар немесе жоқ, және жауап бірден қайтады. Бұл қадамда ешбір пакет машинадан шықпайды, сондықтан шеткі нүкте мекенжайлары мен сервер кілттері себеп бола алмайды.

Бұл реттілік диагностика үшін маңызды. Егер команда ешқашан құрылғы жасамаған болса, мәселе қате ашық кілт немесе бұғатталған UDP порты бола алмайды. Алдымен жергілікті жасау жолын түзетіңіз, содан кейін ғана сыртқа қараңыз.

Қай іске асыру құрылғыға ие болуы керек

Бұл сұранысқа екі іске асыру жауап бере алады. Ядро ішіндегі модуль wireguard құрылғы түрін тіркейді, ал wireguard-go сияқты пайдаланушы кеңістігіндегі іске асыру сол интерфейсті басқа механизм арқылы ұсынады. Егер модуль жоқ болса, ядро сұраныстан қолдау көрсетілмейтін құрылғы қатесімен бас тартады, және шешім модульді жүктеу немесе құралдарды пайдаланушы кеңістігіндегі іске асыруға бағыттау.

Олардың арасында таңдау жасамас бұрын шын мәнінде не бар екенін тексеріңіз. Бірінші команда модульдің жүктелгенін көрсетеді, ал екіншісі ядродан тікелей сұрайды:

lsmod | grep wireguard
ip link add wgtest0 type wireguard

Екінші команда — мүмкін болатын ең кішкентай қайталау: ол құрылғы сұрайды және басқа ештеңе. Егер ол қолдау көрсетілмейтін түр туралы хабарламамен сәтсіз болса, жетіспейтін бөлік — іске асыру, сіздің конфигурация файлыңыз емес.

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

Рұқсаттар мен контейнер шекаралары

Желілік құрылғыны жасау және конфигурациялау рұқсатты қажет етеді, не root ретінде, не желіні басқару мүмкіндігімен. Қарапайым пайдаланушы сеансы мұны істей алмайды, және бұл шектеу — дизайнның өзі, ал тексермеген орнатушыны іске қосу арқылы айналып өтетін кедергі емес.

Контейнер ішінде шекара екі еселенеді. Контейнерге туннель құрылғысына қатынас және оны конфигурациялау мүмкіндігі қажет, және оны беретін жалаушалар Linux-тегі VPN контейнері қолданатындармен бірдей. Қарапайым түрде вебті шолуға қабілетті шектелген қонақ әлі де интерфейс жасай алмайды, өйткені шолуға ондай мүмкіндік қажет емес. Мүмкіндікті оған мұқтаж қызметке беріңіз, хосттағы әр сеансқа емес.

Атау қақтығысын шешіп, содан кейін қайталап көріңіз

Бұрыннан бар интерфейс автоматты түрде қалдық емес. Басқа менеджер атауға ие болып, оны дәл қазір қолданып жатқан болуы мүмкін, сондықтан бірдеңені жоймас бұрын оны тексеріңіз:

ip link show wg0
sudo wg show wg0

Егер иесі белсенді қызмет болса, екінші құрылғы жасаудың орнына сол қызметті конфигурациялаңыз. Егер ол шынымен ескірген болса, оны жасаған құрал арқылы жойыңыз, содан кейін конфигурация мен құрылғы үйлесімде қалуы үшін интерфейсті құжатталған клиентпен немесе бірлікпен көтеріңіз.

Жасау сәтті болған соң, келесі сәтсіздік кейінгі кезеңге жатады, ал құрылғы бар болғаннан кейін сәтсіздік туралы хабарлайтын бірлік ешқашан жасалмаған құрылғыдан басқа мәселе. Рұқсаттарды қайта өзгертуден бұрын екеуін ажыратыңыз.

Қатысты мақалалар