OpenVPN cihaz rotası: yapılandırma sahibi mi, başlangıç betiği mi?
Bir yeniden başlatmayı atlatan bir şube rotası, GUI’den kaydetme veya ürün yazılımı güncellemesinden sonra yine de kaybolabilir. Desteklenen yapılandırma sahibini bir yama betiğiyle karşılaştırın.
Bir şube rotası eklersiniz, çalışır ve sonra bir ürün yazılımı güncellemesi veya web arayüzünden kaydetme onu kaldırır. O anda iki düzeltme eşit derecede makul görünür: rotayı cihazın desteklenen yapılandırma kaynağına koymak veya başlangıç betiğinden oluşturulan dosyaya eklemek. Bir hafta aynı davranırlar ve ikinci yükseltmede ayrışırlar. Bu makale her birinin gerçekte neyi sahiplendiğini karşılaştırır.
İki aday farklı şeylere sahiptir
Desteklenen yapılandırma kaynağı, cihazın girdi olarak gördüğü her şeydir: bir GUI alanı, içe aktarılmış bir profil, istemci başına belgelenmiş bir dizin, yönetim paketinin okuduğu bir ayar veritabanı. Oluşturulan server.conf çıktıdır. Çıktıyı düzenlemek, üretici yeniden çalışana kadar çalışır ve bu kaydetmede, yeniden başlatmada ve yükseltmede olur.
Betik yaklaşımı, üretici bittikten sonra o çıktıya yama uygular. Bir laboratuvar için meşru bir tekniktir ve bir şube ofisi için yanlış varsayılandır, çünkü rotayı belgelenmiş bir alan yerine metin eşleşmesine bağımlı kılar.
| Question | Supported config source | Post-generation script |
|---|---|---|
| Survives a GUI save | Yes | Only if the save does not regenerate the file |
| Survives a package upgrade | Usually, when the field is documented | No guarantee; the wrapper can be replaced |
| Supportable by the vendor | Yes | No |
| Obvious to the next admin | Yes, it is in the UI | No, it lives in a wrapper |
Cihaz neyi yeniden üretir ve ne zaman
Yönetim paketleri genellikle ayarları bir veritabanında veya şablon kümesinde tutar ve başlangıçta daemon yapılandırmasını oluşturur. Web arayüzünden kaydetme çoğu zaman tek bir satıra yama uygulamak yerine dosyanın tamamını yeniden yazar. Değişikliğiniz o dosyada yaşıyorduysa artık gitmiştir ve hiçbir şey uyarı kaydetmez, çünkü cihazın bakış açısından hiçbir şey kaybolmamıştır.
Başlangıç sarmalayıcılarının ikinci bir arıza modu vardır. Belirli boşluklara sahip bir yönerge için grep, şablon değişikliğinden sonra eşleşmeyi bırakır ve betik sessizce hiçbir şey yapmaz. Daha kötüsü, bir ürün yazılımı güncellemesi sarmalayıcıyı yeni bir sürümle değiştirip yamayı da yanında götürebilir. O zaman bir yıl var olmuş ve kimsenin yönlendirmeyle ilişkilendirmediği bir bakım sırasında kaybolmuş bir rotanız olur.
Desteklenen sahibin neyi ifade etmesi gerekir
Bir şube öneki bir değil üç ifade gerektirir. İstemci rotayı öğrenmeli, sunucu hangi kimliği doğrulanmış istemcinin öneke sahip olduğunu bilmeli ve şube tarafı trafiği kendisine verilen tünel adresine geri göndermelidir. OpenVPN terimleriyle bu, itilen bir route, istemciye bağlı eşleşen bir iroute ve diğer tarafta bir dönüş yolu anlamına gelir.
Cihaz arayüzlerinin yanılttığı yer burasıdır. «İstemcilerin sunucunun LAN’ına erişmesine izin ver» etiketli bir onay kutusu, sunucunun kendi ağına doğru trafiği tanımlar. Sizin şubeniz ters yöndür: bir istemcinin arkasındaki ağ, sunucu tarafından erişilebilir. Aynı etiket bunun için destek anlamına gelmez ve bir dosyadaki geçerli yönerge, paketin onu koruyacağına dair bir söz değildir.
Desteklenen bir denetim olmadığında
Bazen kurulu sürüm gerçekten eşe özgü bir rotayı ifade edemez. O zaman dürüst seçenekler, sizin denetlediğiniz başka bir ağ geçidi veya iki uçta desteklenen bir siteden siteye kipidir. İki uç da bunu konuşmalıdır. Siteden siteye diyen bir ürün sayfası, rastgele bir OpenVPN profilini başka bir protokolün tüneliyle değiştirilebilir yapmaz ve bu eşleştirmeyi zorlamak genellikle durum sayfasında iyi görünen yarı bağlı bir tünel üretir.
Ağı devralacak kişiye tek bir cümleyle anlatabileceğiniz seçeneği seçin. Yanıt bir betik yolu ve bir metin deseni belirtmeyi gerektiriyorsa tasarım zaten kırılgandır.
Niyeti denetlenebilir kılın
Sözleşmeyi cihazın dışında kaydedin: geçerli istemci kimliği, önek, dönüş ağ geçidi ve her birini sağlayan desteklenen alan. Yapılandırmayı desteklenen mekanizma üzerinden dışa aktarın ki yeniden derlemenin bir referansı olsun ve hizmeti yalnızca değişiklikten sonra değil, yeniden bağlanma, yeniden başlatma ve yükseltmeden sonra doğrulayın.
Bir şey bozulduğunda, açıklanamayan bir satırı geri yükleyip ummak yerine oluşturulan sonucu o kayıtla karşılaştırın.OpenVPN 2.6 referansı bir arayüzle tartışmadan önce route ve iroute’un nasıl etkileştiğini doğrulayacağınız yerdir.
Sonraki değişiklik için kontrol listesi: sahibi adlandırın, üç parçalı sözleşmeyi belirtin, niyeti dışa aktarın ve düzenlemenizden sonra değil, cihazın kendi yaşam döngüsü olaylarından sonra yeniden test edin.