Pada kotak gabungan Pi-hole dan VPN, dua perkara bercampur: keluarga pengedaran yang anda pasang dan keluaran serta seni bina yang benar-benar disokong oleh komponen. Papan yang but imej membuktikan kernel berjalan; ia tidak membuktikan bahawa binari FTL Pi-hole dan pemasang VPN anda menyasarkan ruang pengguna yang sama. Ujian sebenar ialah pertindihan empat penjuru: sokongan papan, cabang keluaran, seni bina pakej dan laluan peningkatan yang anda sendiri boleh kendalikan. Hilang mana-mana satu daripada empat kaki itu dan peranti berfungsi minggu ini, kemudian meninggalkan anda pada kemas kini keselamatan seterusnya.

Cabang keluaran menentukan sokongan, bukan nama keluarga

Tanya keluaran mana yang masih diuji oleh projek, kemudian tulis jawapannya sebagai rentetan versi, bukan Debian. Halaman prasyarat Pi-hole menyenaraikan sistem pengendalian yang disokong dan seni bina FTL yang telah dibina sebagai dua keperluan berasingan, mengehadkan sokongan kepada keluaran yang masih diselenggara oleh pengedaran itu sendiri, dan memberi amaran bahawa varian atau konfigurasi luar biasa boleh gagal walaupun dalam senarai yang disokong. Frasa itu penting: keluarga yang disokong tidak meliputi setiap anggotanya.

Imej lama yang masih but pada Pi anda bukan bukti sokongan. Papan itu elok, indeks pakej sudah lapuk, dan ketidakpadanan muncul kemudian, apabila pemasang menarik kebergantungan yang tidak lagi dapat dipenuhi oleh keluaran itu.

Bahagian VPN mempunyai lebih banyak komponen, setiap satu dengan tetingkapnya sendiri: daemon terowong, pembantu pemasangan yang menulis konfigurasinya, aplikasi klien pembekal dan pakej integrasi pengedaran ialah empat projek berasingan. Pemasang yang mengenali pengedaran anda dan pemasang yang menghasilkan perkhidmatan yang dapat dikekalkan oleh keluaran itu ialah dua dakwaan berbeza. Semak senarai platform daemon itu sendiri, kemudian semak sama ada pembantu yang anda mahu jalankan telah disentuh sejak keluaran itu dikeluarkan. Jika projek menyatakan sokongan hanya sehingga keluaran yang dinamakan, anggap yang seterusnya sebagai tidak diuji sehingga anda sendiri butnya.

Padankan sasaran binari dengan ruang pengguna yang anda ada

Seni bina ialah kegagalan yang lebih senyap. Kernel 64-bit dengan ruang pengguna 32-bit ialah gabungan sebenar yang disokong pada beberapa papan, dan ia menjalankan binari FTL 32-bit tanpa aduan, sehingga saat anda memasang sesuatu yang diterbitkan hanya untuk arm64. Cetak kedua-dua bahagian sebelum memilih imej, dan simpan output di sebelah nota anda.

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

Jika dua baris seni bina itu tidak sepadan, anda berada pada persediaan bercampur: boleh jalan untuk Pi-hole sahaja, rapuh apabila perkhidmatan kedua mahukan pustaka asli. Memflash semula imej 64-bit yang bersih biasanya lebih pantas daripada membina semula rantai alat yang menghasilkan ketidakpadanan itu.

Pemasaran papan juga tidak menyelesaikan ini. Saiz memori dan model CPU tidak menyatakan apa-apa tentang libc yang pakej anda pautkan, jadi putuskan berdasarkan nilai bercetak, jangan sekali-kali berdasarkan halaman produk.

Satu kotak, dua perkhidmatan, satu pemilik rangkaian

Putuskan siapa memiliki pengalamatan, penyelesai dan terowong sebelum pakej pertama dipasang, kerana jika tidak dua perkhidmatan akan menuntut tugas yang sama dan tiada satu pun menang bersih. Beri Pi alamat statik di luar kumpulan DHCP yang diberikan oleh penghala anda, dan kekalkan terowong pada subnetnya sendiri: 192.168.50.10 untuk Pi dan 10.42.0.0/24 untuk terowong ialah satu pembahagian yang boleh jalan, dan nombornya sendiri sewenang-wenangnya selagi ia tidak berlanggar dengan apa yang penghala anda sudah layan. Kemudian catat komponen mana yang menjawab pada port 53, mana yang mengagihkan DHCP jika anda menggunakannya, dan mana yang memiliki laluan lalai semasa terowong naik. Pada imej tanpa skrin, tugas terakhir itu milik NetworkManager atau systemd-networkd, dan memasang klien pembekal yang juga menulis semula konfigurasi penyelesai ialah cara orang berakhir dengan terowong hidup dan DNS mati.

Berkongsi kotak itu wajar. Berkongsi peranan tidak. Pi-hole mahu menjadi satu-satunya pendengar pada port 53, dan daemon VPN mahu menolak tetapan DNSnya sendiri kepada klien, jadi pilih mana antara kedua yang klien harus percaya dan konfigurasikan yang lain supaya menyingkir.

Jauhkan laluan pentadbiran daripada terowong jika boleh. Jika penyelesai dan terowong gagal serentak, anda masih mahu SSH boleh dicapai pada alamat LAN, dan itu bermakna perkhidmatan pengurusan tidak boleh bergantung pada mana-mana satu daripadanya.

Jadikan peningkatan seterusnya sebahagian daripada pilihan

Keluaran yang tidak boleh anda tingkatkan ialah siling sokongan yang sudah anda terima. Uji mekanik peningkatan pada kad simpanan sebelum peranti memikul DNS rumah anda, dan baca apa yang projek katakan tentang melompat antara cabang daripada menganggap peningkatan pakej sudah cukup.

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

Pakej yang dipegang ialah sebab biasa sesuatu peningkatan kelihatan berjaya dan tidak mengubah apa-apa. Lepaskan pegangan dengan sengaja, satu demi satu, dan catat perkhidmatan mana yang memerlukan pin itu.

Sebelum lompatan, eksport konfigurasi Pi-hole, pajakan statik dan sebarang profil terowong, dan pastikan anda boleh memulihkannya pada imej baharu. Selepas lompatan, uji DNS klien biasa, sumber peribadi di sebalik terowong, sambung semula, dan sebarang peraturan pemajuan pada get laluan. Kotak yang but dan menjawab ping hampir tidak lulus apa-apa.

Apabila tiada satu keluaran pun sesuai untuk kedua-dua perkhidmatan

Kadangkala pertindihan itu kosong: pembantu VPN telah berpindah ke keluaran yang lebih baharu daripada pakej Pi-hole yang boleh anda pasang, atau imej vendor papan ketinggalan daripada kedua-duanya. Dalam kes itu asingkan peranan daripada menyunting metadata keluaran untuk memuaskan hati pemasang. Dua peranti kecil, atau satu peranti tambah kontena untuk perkhidmatan kedua, lebih murah daripada peranti yang kisah sokongannya bergantung pada pembohongan.

Memalsukan versi ialah satu-satunya jalan pintas yang harus ditolak bulat-bulat. Pengurus pakej percaya pada apa yang dikatakan fail keluaran, jadi pengecam palsu memberi anda pemasangan yang tiada satu pun daripada kedua-dua projek akan membantu menyahpepijat.

Jika dua keluaran semasa memenuhi segala-galanya, pilih yang nota peningkatannya boleh anda ikuti tanpa meneka, dan berhenti mencari. Kemudian catat versi, seni bina, pemilik perkhidmatan dan langkah pemulihan di satu tempat, kerana orang seterusnya yang menyentuh kad SD akan memerlukan keempat-empatnya.

Artikel berkaitan