Kimlikleri çoğaltmadan bir VPN sunucusu nasıl geri yüklenir
Geri yüklenen bir VPN sunucusu dosyaları getirir, güncel erişimi değil. İkinci bir kopya bir el sıkışmaya yanıt vermeden önce iptalleri, eş anahtarlarını ve uç noktaları uzlaştırın.
Yedeği geri yüklediniz, hizmet başladı ve bir istemci ilk denemede bağlandı. Bu başarı tuzağın kendisidir. Geri yükleme, sunucunun anlık görüntü anında sahip olduğu dosyaları geri getirir, o zamandan beri değişen erişim durumunu değil, ve eski uç nokta hâlâ erişilebilirse artık tek bir kimliğe yanıt veren iki makineniz var. Çözüm daha iyi bir yedek değil; çözüm, geri yüklenen ana makinenin tek bir el sıkışmaya yanıt vermeden önce ne olabileceğine karar vermektir.
Yedek dosyaları geri getirir, yetkiyi değil
Anlık görüntü, yedek çalıştığı sıradaki sunucu yapılandırmasını, özel anahtarları, sertifika otoritesini, eş listesini ve güvenlik duvarı kurallarını içerir. Sonradan değişeni içeremez: iptal ettiğiniz cihazı, yeniden verdiğiniz anahtarı, bir dizüstü satıldığında kaldırdığınız eşi, taşıdığınız alt ağı. Geri yükleme dosyaları o ana geri sarar. İnsanların o zamandan beri verdiği kararları geri sarmaz.
Hasar tam olarak bu boşluktan gelir. Yedekten iki hafta sonra iptal edilen çalıntı dizüstü, geri yüklenen ağaçtaki eski CRL'ye karşı hâlâ doğrulanan bir sertifika sunar ve sunucu hizmetten çıkardığınız cihazı kabul eder. WireGuard daha doğrudandır: eş, listede olmakla yetkilendirilir, bu yüzden anlık görüntüden sonra silinen eş yeniden oradadır. Kimse o erişimi yeniden onaylamadı. Eski dosya onayladı.
Sunucu kimliği ve istemci kimliği farklı biçimlerde başarısız olur
WireGuard'da sunucunun kimliği wg0.conf içindeki özel anahtardır, bu yüzden o dosyayı ikinci erişilebilir ana makineye kopyalamak, aynı kimliğe sahip ve birbirini tanımayan iki sunucu oluşturur. Her biri kendi eş listesini tutar. Yeni ana makinede bir eşi kaldırın, eski hâlâ onu kabul eder; birinde wg show komutunu kontrol edin ve gerçeğin yarısını görün. İstemciler de kendi kendine geçmez: profil tek bir Endpoint taşır, bu yüzden cihaz yapılandırıldığı adresle konuşmaya devam eder, bu da hizmetten çıkarmak istediğiniz ana makine olabilir.
OpenVPN aynı katmanda bir sunucu sertifikası, özel anahtarı ve tls-auth veya tls-crypt statik anahtarıyla çoğalır. Üçünü de kopyalayın ve istemci örnekleri ayırt edemez; ikisi de erişilebilirse yeniden bağlanma herhangi birine düşebilir ve her günlük dosyası yarım bir hikâye anlatır. Sertifika otoritesi daha derin kopyadır. Geri yüklenen easy-rsa ağacı, verdiğiniz herhangi bir ad için geçerli sertifika düzenleyebilen ikinci bir doğruluk kaynağıdır.
İstemciler de çoğalır, genellikle geçişin kendisi sırasında. Bir profili «sadece test için» yedek bir cihaza kopyalamak, aynı anahtar ve aynı ortak ada sahip ikinci bir cihaz üretir. duplicate-cn ile iki oturum aynı anda açık kalabilir ve ccd veya ifconfig-pool-persist içindeki statik adres ataması özgün cihazla çakışabilir. Bunlar tek kimlik giyen iki makinedir ve sunucu yapılandırmasında hiçbir şey onları ayırt etmez.
Eski uç nokta için üç durumdan birini seçin
Geri yükleme ancak eski uç noktanın kaderi belirlendiğinde güvenlidir. Hizmetten çıkarın: eski hizmet, yeni ana makine başlamadan önce VPN bağlantı noktasını kabul etmeyi bırakmalıdır ve makineye ulaşamıyorsanız o bağlantı noktasını ağ kenarında yönetici kaynağınız dışındaki herkes için engelleyin. Aynı ana makineyi onarın: kimliği yeniden kullanmak sorun değildir çünkü tek makine onu tutar, ancak ardından eski anahtarın disk kopyasını veya VM anlık görüntüsünü yok edin ki geri dönemesin. Bir kullanılabilirlik çifti kurun: iki ana makine farklı ana makine kimliklerine ve bir paylaşılan uç noktaya ihtiyaç duyar; örneğin kayan adres, yük dengeleyici veya taşıyabileceğiniz DNS. Özel anahtarı kopyalamak bir failover tasarımı değildir; tek bir ad iddia eden iki sunucudur.
İstemcilere dokunmadan önce gerçekte hangi durumda olduğunuzu doğrulayın. VPN bağlantı noktasında yanıt veren eski ana makine, DNS taşınmış olsa bile iptal edilen cihazı kabul edecek olandır. Dinleyicileri ve genel anahtarı kontrol edin:
ss -lunp | grep -E ':51820|:1194'
wg show wg0
wg pubkey < /etc/wireguard/server.key
Önce eşleri, iptalleri ve adresleri uzlaştırın
Geri yüklemenin ne iddia ettiğini şu anda yetkilendirilmiş olanla karşılaştırarak listeleyin. WireGuard'da wg show wg0 her eşin anahtarını, uç noktasını, son el sıkışmasını ve aktarım sayaçlarını verir; artık sahibi olmadığınız bir cihazı fark etmeye yeter. Onu canlı olarak wg set wg0 peer <key> remove ile kaldırın, ardından yapılandırmayı da düzenleyin, yoksa eş sonraki başlatmada geri döner. wg show wg0 allowed-ips ikinci sorunu açığa çıkarır: tek adreste iki eş veya zaten yeniden atadığınız bir adres.
OpenVPN'de iptal listesi tarihli bir dosyadır ve bir geri yükleme eski bir tanesini geri getirebilir. İstemciler bağlanmadan önce kontrol edin:
openssl crl -in /etc/openvpn/crl.pem -noout -lastupdate -nextupdate
grep -E 'crl-verify|reneg-sec' /etc/openvpn/server.conf
Son güncelleme iptalden önceyse, sunucu iptal ettiğiniz bir sertifikayı hâlâ onurlandırıyor. OpenVPN 2.4 ve sonrası her yeni bağlantı için CRL dosyasını yeniden okur, bu yüzden dosyayı değiştirmek yeni oturumları durdurur, ancak kurulmuş tüneller yeniden müzakereye kadar sürer; reneg-sec varsayılanı 3600 saniyedir ve onu düşürmek veya hizmeti yeniden başlatmak değişikliği size şimdi verir. Daha eski derlemeler dosyayı o kadar güvenilir almayabilir, bu yüzden sürümün davranışını doğrulayamıyorsanız yeniden başlatın. wg(8) kılavuzu eş kaldırmayı ve yukarıda kullanılan allowed-ips sözdizimini kapsar.
Artık var olmayan cihazlar için statik atamaları da temizleyin. Eski profil hâlâ kuruluyken hizmetten çıkarılmış bir cihazın adresini yenisine yeniden kullanmak, tam olarak kaçınmaya çalıştığınız kopyayı oluşturur.
İptal ettiğiniz bir istemciyle doğrulayın
Kontrolleri sırayla, tünelin dışındaki bir ağdan çalıştırın. Önce yetkili cihaz bağlanır, itilen çözümleyici aracılığıyla DNS'i çözer ve özel bir kaynağa ulaşır. Sonra iptal edilen cihaz yeni değil mevcut profiliyle başarısız olmalıdır. Ardından eski uç noktayı dışarıdan deneyin: VPN bağlantı noktası hâlâ bir el sıkışma tamamlıyorsa eski ana makine yaşıyor ve çoğaltma gerçek, teorik değil.
Geri yüklenen ana makineyi yeniden başlatın ve yetkili ile iptal edilmiş kontrolleri yineleyin, çünkü yapılandırma dosyası çalışma zamanında değiştirdiğinizi o zaman yener. Ana makinenin genel anahtarını veya sertifika parmak izini, hizmetten çıkarılan makinenin kullandığıyla karşılaştırın. İki canlı makinede eşleşen parmak izleri, geri yüklemenin kimliği klonladığı anlamına gelir; tek makinede eşleşen parmak izleri normaldir. Geri yüklenen sürümleri, anahtar parmak izlerini ve iptal edilen seri numarasını veya eş anahtarını kaydedin, ardından bu uzlaşmadan sonra bir sonraki yedeği alın, böylece hizmeti bugünkü hâliyle temsil etsin. İşe yarayan test bir istemcinin bağlanması değildir. Kaldırdığınız istemcinin dışarıda kalması ve eski uç noktanın kapalı kalmasıdır.