Pi-hole in VPN na enem Pi: ali je operacijski sistem še podprt?
Preden Pi-hole in VPN postavite na en Raspberry Pi, uskladite podporo plošče, arhitekturo uporabniškega prostora, podporo storitev in pot posodobitve.
Na združeni škatli s Pi-hole in VPN se pomešata dve stvari: družina distribucije, ki ste jo namestili, ter izdaja in arhitektura, ki ju komponente dejansko podpirajo. Plošča, ki zažene sliko, dokazuje, da jedro teče; ne dokazuje, da binarna datoteka FTL Pi-hole in vaš namestitveni program VPN ciljata isti uporabniški prostor. Pravi preizkus je štiristransko prekrivanje podpore plošče, veje izdaje, arhitekture paketov in poti posodobitve, ki jo lahko vozite sami. Izgubite katero od teh štirih nog in naprava bo ta teden delovala, nato pa vas pustila na cedilu pri naslednji varnostni posodobitvi.
Podporo določa veja izdaje, ne ime družine
Vprašajte, proti kateri izdaji projekt še testira, nato odgovor zapišite kot niz različice, ne kot Debian. Stran s predpogoji Pi-hole našteva podprte operacijske sisteme in vnaprej zgrajene arhitekture FTL kot dve ločeni zahtevi, omejuje podporo na izdaje, ki jih sama distribucija še vzdržuje, in opozarja, da lahko različice ali nenavadne konfiguracije spodletijo tudi znotraj podprtega seznama. Ta formulacija je pomembna: podprta družina ne pokriva vsakega njenega člana.
Stara slika, ki se na vašem Pi še zažene, ni dokaz podpore. Plošča je v redu, indeks paketov je zastarel, neskladje pa se pokaže pozneje, ko namestitveni program potegne odvisnost, ki je izdaja ne more več zadovoljiti.
Stran VPN ima več delov, vsak s svojim oknom: demon tunela, namestitveni pomočnik, ki piše njegovo konfiguracijo, odjemalska aplikacija ponudnika in integracijski paket distribucije so štirje ločeni projekti. Namestitveni program, ki prepozna vašo distribucijo, in namestitveni program, ki ustvari storitev, ki jo izdaja lahko ohrani v teku, sta dve različni trditvi. Poglejte lasten seznam platform demona in nato, ali je bil pomočnik, ki ga nameravate zagnati, dotaknjen od izida te izdaje. Kjer projekt navaja podporo le do imenovane izdaje, obravnavajte naslednjo kot nepreizkušeno, dokler je sami ne zaženete.
Uskladite binarni cilj z uporabniškim prostorom, ki ga imate
Arhitektura je tišja napaka. 64-bitno jedro s 32-bitno uporabniško zemljo je resnična, podprta kombinacija na več ploščah in poganja 32-bitno binarno datoteko FTL brez pritožb, vse do trenutka, ko namestite nekaj, kar je objavljeno samo za arm64. Natisnite obe polovici, preden izberete sliko, in izpis hranite ob svojih zapiskih.
uname -m
dpkg --print-architecture
grep -E '^(PRETTY_NAME|VERSION_ID)=' /etc/os-release
apt-cache policy pihole-ftl
Če se ti dve vrstici arhitekture ne ujemata, ste na mešani postavitvi: izvedljivi za sam Pi-hole, krhki, ko druga storitev zahteva domače knjižnice. Ponovno pisanje čiste 64-bitne slike je običajno hitrejše od ponovne gradnje orodne verige, ki je ustvarila neskladje.
Trženje plošče tega tudi ne reši. Velikost pomnilnika in model CPU ne povedo ničesar o tem, na katero libc se vaši paketi povezujejo, zato se odločite po natisnjenih vrednostih, nikoli po strani izdelka.
Ena škatla, dve storitvi, en lastnik omrežja
Odločite, kdo ima naslavljanje, resolver in tunel, preden se naloži prvi paket, sicer si bosta dve storitvi lastili isto dolžnost in nobena ne bo zmagala čisto. Dajte Pi-ju statični naslov zunaj DHCP nabora, ki ga deli vaš usmerjevalnik, in imejte tunel v lastni podomrežju: 192.168.50.10 za Pi in 10.42.0.0/24 za tunel je ena izvedljiva delitev, same številke pa so poljubne, dokler ne trčijo v to, kar vaš usmerjevalnik že streže. Nato zapišite, katera komponenta odgovarja na vratih 53, katera deli DHCP, če ga uporabljate, in katera ima privzeto pot, dokler je tunel pokonci. Na sliki brez zaslona ta zadnja naloga pripada NetworkManageru ali systemd-networkd, in namestitev odjemalca ponudnika, ki prepisuje tudi konfiguracijo resolverja je pot, po kateri ljudje končajo z živim tunelom in mrtvim DNS.
Delitev škatle je v redu. Delitev vloge ni. Pi-hole želi biti edini poslušalec na vratih 53, demon VPN pa želi potisniti svojo nastavitev DNS do odjemalcev, zato izberite, kateremu od dveh naj odjemalci zaupajo, in drugega nastavite, da se umakne s poti.
Imejte pot upravljanja zunaj tunela, kadar lahko. Če resolver in tunel odpovesta skupaj, še vedno želite doseči SSH na naslovu LAN, kar pomeni, da storitev upravljanja ne sme biti odvisna od nobenega od njiju.
Naredite naslednjo posodobitev del izbire
Izdaja, ki je ne morete posodobiti, je zgornja meja podpore, ki ste jo že sprejeli. Preizkusite mehaniko posodobitve na rezervni kartici, preden naprava nosi DNS vašega gospodinjstva, in preberite, kaj projekti pravijo o preskakovanju vej, namesto da bi predpostavili, da posodobitev paketa zadostuje.
sudo apt update
apt-mark showhold
sudo apt full-upgrade
pihole -up
Zadržani paketi so običajen razlog, da posodobitev izgleda uspešna in ne spremeni ničesar. Zadržke sprostite namerno, enega za drugim, in zabeležite, katera storitev je potrebovala pripenjanje.
Pred skokom izvozite konfiguracijo Pi-hole, statične zakupke in vse profile tunela ter potrdite, da jih lahko obnovite na sveži sliki. Po skoku preizkusite običajen DNS odjemalcev, zasebni vir za tunelom, ponovno povezavo in katero koli pravilo posredovanja na prehodu. Škatla, ki se zažene in odgovori na ping, ni prestala skoraj ničesar.
Ko nobena posamezna izdaja ne ustreza obema storitvama
Včasih je prekrivanje prazno: pomočnik VPN je prešel na novejšo izdajo, kot je paket Pi-hole, ki ga lahko namestite, ali slika proizvajalca plošče zaostaja za obema. V tem primeru ločite vloge, namesto da bi urejali metapodatke izdaje, da bi zadovoljili namestitveni program. Dve majhni napravi ali ena naprava plus vsebnik za drugo storitev staneta manj kot naprava, katere zgodba o podpori sloni na laži.
Ponarejanje različice je edina bližnjica, ki jo je treba odločno zavrniti. Upravitelji paketov verjamejo temu, kar piše v datoteki izdaje, zato vam ponarejeni identifikator da namestitev, pri katere odpravljanju napak vam ne bo pomagal noben od obeh projektov.
Če dve trenutni izdaji zadovoljujeta vse, izberite tisto, katere opombe o posodobitvi lahko sledite brez ugibanja, in prenehajte iskati. Nato zabeležite različico, arhitekturo, lastnike storitev in korak obnovitve na enem mestu, ker bo naslednja oseba, ki se dotakne kartice SD, potrebovala vse štiri.