На една комбинирана кутија со Pi-hole и VPN се мешаат две работи: семејството на дистрибуцијата што сте ја инсталирале и изданието плус архитектурата што компонентите навистина ги поддржуваат. Плочата што подига слика докажува дека јадрото работи; таа не докажува дека FTL бинарната датотека на Pi-hole и вашиот инсталатер за VPN целат на истиот кориснички простор. Вистинската проверка е четиристрано преклопување на поддршката на плочата, гранката на изданието, архитектурата на пакетите и патеката за надградба што можете сами да ја водите. Изгубете која било од овие четири нозе и уредот работи оваа недела, а потоа ве остава на следното безбедносно ажурирање.

Поддршката ја одредува гранката на изданието, не името на семејството

Прашајте против кое издание проектот сѐ уште тестира, потоа запишете го одговорот како низа за верзија, а не како Debian. Страницата со предуслови на Pi-hole ги наведува поддржаните оперативни системи и однапред изградените FTL архитектури како два одделни барања, ја ограничува поддршката на изданија што самата дистрибуција сѐ уште ги одржува и предупредува дека варијанти или необични конфигурации можат да не успеат дури и во поддржаниот список. Таа формулација е важна: поддржаното семејство не го покрива секој негов член.

Стара слика што сѐ уште се подига на вашиот Pi не е доказ за поддршка. Плочата е во ред, индексот на пакети е застарен, а несовпаѓањето се појавува подоцна, кога инсталатерот ќе повлече зависност што изданието веќе не може да ја задоволи.

VPN страната има повеќе делови, секој со свој прозорец: демонот на тунелот, инсталацискиот помошник што ја пишува неговата конфигурација, клиентската апликација на провајдерот и интеграцискиот пакет на дистрибуцијата се четири одделни проекти. Инсталатер што ја препознава вашата дистрибуција и инсталатер што произведува услуга што изданието може да ја одржува во работа се две различни тврдења. Погледнете го сопствениот список платформи на демонот, потоа погледнете дали помошникот што сметате да го стартувате е допрен од излегувањето на тоа издание. Кога проект наведува поддршка само до именувано издание, третирајте го следното како непроверено додека сами не го подигнете.

Усогласете ја бинарната цел со корисничкиот простор што го имате

Архитектурата е потивкиот неуспех. 64-битно јадро со 32-битна корисничка земја е вистинска, поддржана комбинација на неколку плочи и таа извршува 32-битна FTL бинарна датотека без поплаки, сѐ до моментот кога ќе инсталирате нешто објавено само за arm64. Испечатете ги двете половини пред да изберете слика и чувајте го излезот до вашите белешки.

uname -m
dpkg --print-architecture
grep -E '^(PRETTY_NAME|VERSION_ID)=' /etc/os-release
apt-cache policy pihole-ftl

Ако тие две линии за архитектура не се совпаѓаат, вие сте на мешана поставеност: изводлива за самиот Pi-hole, кревка штом втора услуга побара нативни библиотеки. Препишувањето на чиста 64-битна слика обично е побрзо од повторното градење на синџирот алатки што го создал несовпаѓањето.

Маркетингот на плочата исто така не го решава ова. Големината на меморијата и моделот на CPU не кажуваат ништо за тоа кон која libc се поврзуваат вашите пакети, затоа одлучете по испечатените вредности, никогаш по страницата на производот.

Една кутија, две услуги, еден сопственик на мрежата

Одлучете чие е адресирањето, резолверот и тунелот пред да се инсталира првиот пакет, инаку две услуги ќе полагаат право на истата должност и ниту една нема да победи чисто. Дајте му на Pi статична адреса надвор од DHCP базенот што го дели вашиот рутер и држете го тунелот на сопствена подмрежа: 192.168.50.10 за Pi и 10.42.0.0/24 за тунелот е една изводлива поделба, а самите броеви се произволни додека не се судрат со она што вашиот рутер веќе го служи. Потоа запишете која компонента одговара на портата 53, која дели DHCP ако го користите и која го има стандардниот маршрут додека тунелот е подигнат. На слика без екран, таа последна задача им припаѓа на NetworkManager или systemd-networkd, а инсталирањето на клиент на провајдер што ја препишува и конфигурацијата на резолверот е патот по кој луѓето завршуваат со жив тунел и мртов DNS.

Споделувањето на кутијата е во ред. Споделувањето на улога не е. Pi-hole сака да биде единствениот слушател на портата 53, а демонот на VPN сака да ја турка сопствената DNS поставка кон клиентите, затоа изберете на кој од двата клиентите треба да му веруваат и конфигурирајте го другиот да остане настрана.

Држете ја административната патека надвор од тунелот каде што можете. Ако резолверот и тунелот паднат заедно, сѐ уште сакате SSH да е достапен на LAN адресата, а тоа значи дека услугата за управување не смее да зависи од ниту еден од двата.

Направете ја следната надградба дел од изборот

Издание што не можете да го надградите е поддржувачки максимум што веќе сте го прифатиле. Тестирајте ја механиката на надградба на резервна картичка пред уредот да го носи DNS-от на вашето домаќинство и прочитајте што велат проектите за прескокнување меѓу гранки, наместо да претпоставите дека надградбата на пакет е доволна.

sudo apt update
apt-mark showhold
sudo apt full-upgrade
pihole -up

Задржаните пакети се вообичаената причина надградбата да изгледа успешна, а да не промени ништо. Ослободете ги задржувањата намерно, едно по едно, и забележете која услуга барала прицврстување.

Пред скокот извезете ја конфигурацијата на Pi-hole, статичните закупи и сите профили на тунелот, и потврдете дека можете да ги вратите на свежа слика. По скокот тестирајте го обичниот клиентски DNS, приватниот ресурс зад тунелот, повторното поврзување и кое било правило за проследување на портата. Кутија што се подига и одговара на ping не поминала речиси ништо.

Кога ниту едно издание не одговара на двете услуги

Понекогаш преклопувањето е празно: помошникот за VPN преминал на поново издание од пакетот Pi-hole што можете да го инсталирате, или сликата на производителот на плочата заостанува зад двете. Во таков случај одвојте ги улогите, наместо да уредувате метаподатоци за издание за да задоволите инсталатер. Два мали уреда, или еден уред плус контејнер за втората услуга, чинат помалку од уред чија приказна за поддршка зависи од лага.

Фалсификувањето на верзијата е единствениот кратен пат што треба директно да го одбиете. Менаџерите на пакети веруваат на она што го вели датотеката за издание, затоа фалсификуван идентификатор ви дава инсталација во чие отстранување грешки ниту еден од двата проекти нема да ви помогне.

Ако две тековни изданија задоволуваат сѐ, изберете го тоа чии белешки за надградба можете да ги следите без погодување и престанете да барате. Потоа запишете ја верзијата, архитектурата, сопствениците на услугите и чекорот за враќање на едно место, бидејќи следниот човек што ќе ја допре SD картичката ќе ги побара сите четири.

Поврзани статии