VPN deposu əlavə edildikdən sonra apt yeniləməsi NO_PUBKEY ilə uğursuz olur
NO_PUBKEY və çatışmayan Release faylı şəbəkə nasazlığı deyil, etibar nasazlığıdır. Təchizatçının açarını signed-by ilə bərkidəcəyinizi, yoxsa mənbəni siləcəyinizi qərar verin.
VPN təchizatçınızın apt mənbəyi paket menecerinizi sındırdı və düzəliş əmr deyil, qərardır. NO_PUBKEY, ya da deponun Release faylı olmadığına dair şikayət, apt-ın həmin mənbəyə etibar etməkdən imtina etdiyini bildirir, ona görə də sonrakı hər paket əməliyyatı eyni xəbərdarlığı çap etməyə davam edir. Tunelin özü çox güman ki, günahsızdır. Həmin mənbəni hələ də istəyib-istəmədiyinizlə bağlı üç suala cavab verin və düzgün təmir demək olar ki, mexaniki şəkildə gəlir.
Birincisi: nasazlığı düzgün kateqoriyaya qoyun
Etibar nasazlığı mənbə faylını və ya çatışmayan açarı, ya da olmayan Release faylını adlandırır. Nəqliyyat nasazlığı fərqli görünür: TLS sertifikat xətaları, bağlantının rədd edilməsi, vaxt aşımı və ya CONNECT-i rədd edən proksi. Bu fərq hansı məqaləni oxuduğunuzu müəyyən edir, çünki TLS-i tutan və ya təchizatçının hostunu bloklayan VPN imza xətaları deyil, nəqliyyat xətaları yaradır.
Yalnız sudo apt update əmrini işə salın və yuxarıdakı keşlənmiş nəticələri nəzərə almadan sonuncu sətirləri oxuyun. Vacib sətir /etc/apt/sources.list.d/ qovluğunu göstərir və hansı faylı açmalı olduğunuzu deyir.
Nasazlıq tunel qalxdıqdan sonra görünürsə, tunel söndürülmüş halda və DNS sistem həlledicisi ilə həll olunarkən yoxlayın. VPN olmadan işləyən mənbə marşrutlaşdırma və ya müdaxilə məsələsidir və heç bir açar idarəetməsi onu düzəltməyəcək.
Yolu seçən üç sual
Bu mənbədən hələ də paket quraşdırır və ya yeniləyirsinizmi? Müştəri aktiv istifadədədirsə, etibarı təmir edin. Müştəri bir dəfə quraşdırılıb və indi NetworkManager-ə adi profil idxal edirsinizsə, mənbə artıq yükdür və silmək dürüst düzəlişdir.
İkincisi: təchizatçı kanaldan kənar yoxlaya biləcəyiniz açar və barmaq izi dərc edirmi? Üçüncüsü: bu hostda açarları kim idarə edir, distributiv yoxsa siz? Yoxlaya bilmədiyiniz açarla imzalanmış mənbə, verməməli olduğunuz yeniləmə səlahiyyətidir.
Birinci suala yox cavabı təhlili bitirir. Hər üç nöqtəyə hə cavabı signed-by təmirini göstərir, hansı ki həm işləyən, həm də auditə açıq qalan yeganə quruluşdur. İki yolu qarışdırmaq, yəni mənbəni saxlayıb onu zorla keçirmək, açıq şəkildə istisna edilməli olan yeganə variantdır.
Niyə trusted=yes düzəliş kimi görünür və əslində deyil
sources.list təlimat səhifəsi birbaşa bunu deyir. Trusted seçimini yes dəyərinə qoymaq apt-a mənbəni autentifikasiyadan keçməsə belə qəbul etməyi tapşırır və bu, həmin depo üçün apt-secure-u söndürür. Səhifə bunu, əgər ümumiyyətlə istifadə olunursa, yerli kontekst üçün saxlayır.
Bu, təchizatçıya etibarın daha dar versiyası deyil. Bu, indeksi kimin imzaladığı sualını ortadan qaldırır, yəni həmin host adı üçün cavab verə bilən hər kəs maşınınıza root kimi quraşdırılan paketlər verə bilər.
Təmir yolu: açarı götürün, sonra bərkidin
Açarı təchizatçının sənədləşdirdiyi yerdən götürün və onu administrator tərəfindən idarə olunan açar halqasına çıxarın, sonra depo sətrini həmin fayla yönləndirin ki, etibar sürüşməsin.
- Uğursuz sətri oxuyub açar ID-sini və mənbə faylının adını götürün.
- Təchizatçının ASCII ilə qablaşdırılmış açarını endirin və
gpg --dearmorəmrini çalışdıraraq/etc/apt/keyrings/vendor-name.gpgfaylına yazın. - Əlavə edin
[signed-by=/etc/apt/keyrings/vendor-name.gpg]sətrini həmin təchizatçının.listfaylındakı girişə. - Çalışdırın
sudo apt updatevə mənbənin imza xəbərdarlığını təkrarlamaq əvəzinə indeks götürdüyünü təsdiqləyin.
Paketlə gələn açarlar üçün /usr/share/keyrings üstünlük verin, əl ilə yerləşdirdiyiniz açarlar üçün isə /etc/apt/keyrings. Bu bölgü kosmetik deyil: növbəti administratora hansı açarların paket yeniləməsindən sonra qalacağını və hansıların insan tələb etdiyini bildirir.
Etibar etməzdən əvvəl barmaq izini təchizatçının dərc etdiyi dəyərlə yoxlayın. Forum yazısından kopyalanmış açar ID-si maşının heç kimin adlandıra bilmədiyi yeniləmə səlahiyyətinə etibar etməsinin yoludur.
Silmə yolu və xəta niyə qayıda bilər
Quraşdırıcının həqiqətən nə yazdığına baxın, çünki bir neçə fayl eyni təchizatçıdan bəhs edə bilər və onlardan biri adətən qalıq surətdir.
grep -r . /etc/apt/sources.list.d/
sudo rm /etc/apt/sources.list.d/vendor.listapt həmin qovluqdan yalnız .list və .sources fayllarını oxuyur, ona görə .save və ya .distUpgrade surəti artıq nəzərə alınmır; hər halda onu silmək sonrakı oxuyucunun onu təsadüfən bərpa etməsinin qarşısını alır. Mənbəni silmək heç nəyi quraşdırmadan çıxarmır və apt sonra quraşdırılmış VPN paketini yerli quraşdırılmış və ya artıq mövcud olmayan kimi təsvir edə bilər, bu da etibar xətasının qayıtması deyil, paket vəziyyəti mesajıdır.
Təkrarlanan hal açarları apt-key ilə qlobal etibarlı halqaya quraşdıran köhnə təlimatlardır. Bu yol köhnəlmişdir və buraxılış yeniləməsi açarı düşmüş və ya sadəcə istifadə olunmamış vəziyyətdə qoya bilər, bu da bir il səssiz qalan xətanın yeniləmə etdiyiniz həftə görünməsinin səbəbidir. /etc/apt/trusted.gpg.d/ qovluğunu yoxlayın, sonra etibar qərarını aid olduğu depo sətrinə köçürün. Təchizatçı hələ də apt-key təlimatları çap edirsə, yenə də signed-by istifadə edin; bu, təlimatın sənədləşdirdiyi quruluşdur və yeniləmədən sonra qalan da elə budur.