Hangi openvpn ikili dosyası çalışıyor? Başlatma yolunu denetleyin
Komut adı, hizmet yolu ve paket dosyası üç farklı nesne olabilir. Başlatma yolunu denetleyin, paket dosyalarını doğrulayın ve ardından sarmalayıcıyı kaldırın.
Eski bir geçici çözüm, OpenVPN çalıştırılabilir dosyasını başka bir yere taşıdı ve özgün yolda bir shell sarmalayıcısı bıraktı. Aylar sonra bir güncelleme gelir ve bu çözümü geri almak, hangi dosyanın gerçekten istemci olduğunu tahmin etme oyununa dönüşür. Komut adı, hizmette yapılandırılmış çalıştırılabilir dosya ve paketin kendi dosya listesi farklı nesnelere işaret edebilir; birini diğerleri olmadan onarmak, onarılmış görünen ama daha kötü davranan bir ana makine üretir.
Hizmetin başlattığı yoldan başlayın
Bir terminal ile bir systemd birimi çalıştırılabilir dosyaları aynı şekilde çözmez. Kabuk bir PATH içinde arar; birim bir yol adlandırır ve drop-in geçersiz kılmaları okuduğunuz dosyaya dokunmadan onu değiştirebilir. Bu fark, bu görevdeki karışıklığın çoğunu açıklar. Onarımuzun hangi dosyayı hedeflemesi gerektiğini de bu belirler.
Birime ne çalıştırdığını sorun, onu değiştiren drop-in dosyaları dahil, ve yetkili saydığınız parça yerine ortaya çıkan ExecStart satırını okuyun. Ardından bu yolu herhangi bir sembolik bağlantıdan geçerek son dosyaya kadar izleyin. Gizli bir dizine exec ile biten bir sarmalayıcı, bu eski düzeltmelerin yaygın bir düzenidir.
Herhangi bir şeyi değiştirmeden önce çözümlenmiş yolu yazın.
systemctl cat [email protected] | grep -n 'ExecStart'
readlink -f "$(command -v openvpn)"Komut adını hizmet yoluna karşılaştırın
İki yanıt sıklıkla farklıdır ve bu fark otomatik olarak bir arıza değildir. Bir NetworkManager eklentisi kendi yolunu başlatabilir ve bir kapsayıcı bir başkasını bağlayabilir.
Önemli olan, trafiğe hizmet eden süreci hangi sahibin başlattığını bilmektir. Birim /usr/local/sbin/openvpn-wrapper çalıştırırken kabuğunuz /usr/sbin/openvpn çözümlüyorsa, ikinci dosyayı onarmak hizmette hiçbir şeyi değiştirmez.
Her adayın hangi pakete ait olduğunu sorun, sonra dosyanın paket tarafından mı yönetildiğine yoksa yerel olarak mı yerleştirildiğine karar verin. Sahibi paketi olmayan bir dosya, birinin oraya bilerek koyduğu dosyadır ve silinmeden önce bir adı, bir sahibi ve bir gerekçesi olmalıdır. Ters hata da yaygındır: bir forum gönderisi aynı dizini kullandığı için paket dosyasının eski kaydedilmiş ikili dosyayla üzerine yazılması.
Paket dosyaları hakkında paket veritabanının konuşmasına izin verin
Yazılım bir Debian paketinden geldiyse, paket veritabanı dosyalarının kurulana hâlâ uyup uymadığını söyleyebilir. Bu, bütünlükle ilgili dar bir sorudur, güvenlik hükmü değildir ve neyi onaracağınıza karar verirken bu fark önemlidir. Uyuşmazlık, dosyanın kurulumdan sonra değiştiği anlamına gelir; bu, eski geçici çözümünüz ya da meşru bir yerel düzenleme olabilir. Çıktı hangisi olduğunu kesinleştirmez, bu yüzden onu sonuç değil ipucu olarak okuyun.
Doğrulamayı çalıştırın ve boş bir sonucu bir şeyin kanıtı saymak yerine çıktıyı okuyun.
dpkg -S /usr/sbin/openvpn
dpkg --verify openvpndpkg kılavuzu, doğrulamanın kurulu dosyaları yerel olarak kaydedilmiş üst verilerle karşılaştırdığını ve varsa saklanan sağlama toplamlarını kullandığını belgeler. Değişmiş bir paket dosyasını fark eder ve onun yerine başka bir ikili dosyanın başlatılıp başlatılmadığını söyleyemez.
Onarımdan önce durumu kaydedin
Çözümlenmiş başlatma yolunu, dosyanın paketle ilişkisini, sarmalayıcının konumunu ve onu getiren değişiklik kaydını toplayın. Daha sonra gerekecek entegrasyon işi içeriyorsa sarmalayıcıyı korumalı bir yere kopyalayın.
Okumadan önce sarmalayıcının içeriğini bir destek başlığına yapıştırmayın, çünkü bu betikler bazen kimlik bilgileri veya ağ geçidi ayrıntıları taşır.
Çalışırken hizmetin hangi profilleri kullandığını ve kimin bağlı olduğunu kaydedin, çünkü tüneli yeniden başlatmak ana makineyi yönettiğiniz oturumu kesebilir.
Başlatmayı doğrulayın, sonra sarmalayıcıyı kaldırın
Onarımdan sonra hizmeti başlatın ve sürecin amaçladığınız yolda çalıştığını doğrulayın. Elle çalıştırılan bir sürüm sorgusu dosyanın çalıştığını kanıtlar; birimin onu kullandığını kanıtlamaz.
Ardından bir istemciyi yeniden bağlayın ve profilin hâlâ kimlik doğrulayıp doğrulamadığını denetleyin, çünkü özgün seçenekleri yok sayan bir ikili dosya değişimi sertifika sorunu gibi görünen bir şekilde başarısız olur.
Yerinden edilmiş sarmalayıcıyı onu getiren aynı değişiklik kaydı üzerinden kaldırın. Tamamlanan onarım hangi çalıştırılabilir dosyanın çalıştığını, nedenini ve hangi dosyanın kaldırıldığını belirtir; bir dosya adını geri koyup ummak aynı şey değildir.