Silinen WireGuard peer neden yeniden başlatmadan sonra geri gelir
Peer listesini iki durum tutar: çalışan arayüz ve açılışta onu yazan şey. Her ikisinden de kaldırın ve herhangi bir şeyi değiştirmeden önce SaveConfig'i kontrol edin.
Kimlik çalışan arayüzden kaybolur ve değişiklik tamamlanmış görünür. Hizmet yeniden başladıktan sonra geri gelir; bu, WireGuard komutu yok sayıyormuş gibi okunur. Gerçekte olan daha basittir: açılış yapılandırması o peer'i hâlâ içeriyor.
Bu listeyi iki durum tutar. İptal ancak ikisi de onu kaybettiğinde gerçek olur.
wg set gerçekte neyi değiştirir
wg set wg0 peer <public-key> remove komutu çekirdekteki çalışan arayüzü düzenler. Diske hiçbir şey yazmaz. Yapılandırma dosyası, NetworkManager profili veya yönlendiricinin kayıtlı durumu dokunulmadan kalır. Bu bir tasarımdır, hata değil.
Bu ayrım bilinçlidir, çünkü araç arayüzün sahibinin kim olduğunu bilmez. Çalışma zamanı komutu başka bir şeyin yönettiği bir arayüze karşı güvenli olmalıdır. Kalıcı kopyanın nerede yaşadığını tahmin edemez. Sonuç kolayca söylenir: çalışma zamanındaki kaldırma yapısı gereği geçicidir.
Böylece peer bir sonraki yeniden başlatmada geri gelir ve özgün izin verilen önekleriyle geri gelir. Üzerinden yönlendirilen her şey de yeniden oluşturulur. Sözde iptal edilmiş bir kimlik, yeniden yüklemeden sonra eski hedeflerine ulaşabilir. Çalışma zamanı çıktısında hiçbir şey kimseyi uyarmamıştı.
Bir dosyayı düzenlemeden önce yazanı bulun
Arayüzün bir sahibi vardır. Bu, dosya okuyan wg-quick, profil uygulayan NetworkManager, yönlendiricinin kendi arayüz yapılandırması veya başlangıçta arayüzü yeniden oluşturan bir konteyner giriş noktası olabilir. Sahibinin hiç okumadığı bir dosyayı düzenlemek hiçbir kalıcı değişiklik üretmez.
Çalışan arayüzden başlayın ve genel anahtarları belirleyin, çünkü adlar ve adresler anahtarın kendisinden daha zayıf tanımlayıcılardır. Sonra bu listeyi sahibin gerçekten okuduğu kayıtlı yapılandırmayla karşılaştırın.
wg show wg0 peers
wg show wg0 allowed-ips
systemctl status wg-quick@wg0 --no-pager
ls -l /etc/wireguard
Peer listesi ile dosya içeriği uyuşmayan canlı bir arayüz, tanının tamamıdır. Açılışta kayıtlı yapılandırma kazanır, çalışma zamanı durumu kaybeder. Herhangi birini değiştirmeden önce ikisini karşılaştırın.
SaveConfig tuzağı
wg-quick, dosyaları elle düzenleyenleri yakalayan bir kıvrım ekler. SaveConfig etkinken, belgelenmiş kapanma davranışı geçerli çalışma zamanı durumunu yapılandırma dosyasının üzerine yazar.
Bu, kalıcılığın olağan yönünü tersine çevirir. Bir peer'i dosyadan kaldırırsınız, sonra hizmet durur. Çalışan durum sizin düzenlemenizin üzerine yazılır ve az önce sildiğiniz peer'i geri getirir.
Bu yüzden sıra önemlidir: dosyayı arayüz kapalıyken düzenleyin ya da düzenlemeden önce SaveConfig'i devre dışı bırakın, sonra arayüzü tekrar kaldırın ve neyin yüklendiğini doğrulayın. Arayüz açıkken elle yapılan düzenleme, kapanma yazımıyla bir yarıştır.
İki durumu da değiştirin, sonra yeniden yükleyin
Çalışma zamanında peer'i anahtarıyla kaldırın. Kayıtlı yapılandırmada aynı bloğu sahibin desteklediği işlemle kaldırın, çevresini düzenleyerek değil.
Sonra peer'in ne taşıdığını gözden geçirin. İptal edilen kimliğe ait olan yönlendirilmiş ağ, bilinçli olarak yeniden atanmalı ya da kaldırılmalıdır; sıradaki düzenlenecek peer tarafından sessizce miras alınmamalıdır.
Geçit yönetici erişiminizi de taşıyorsa bir kurtarma yolu açık tutun. Yanlış peer'i kaldıran bir yeniden başlatma, kendi kendinize açtığınız bir kesintidir. Aynısı yanlış rotayı kaldıran yeniden başlatma için de geçerlidir.
Geçen bir test nasıl görünür
Hizmeti yeniden yükleyin veya yeniden başlatın, sonra peer listesini yeniden okuyun. Eski anahtar bulunmamalı, tutmak istediğiniz peer'ler hâlâ var olmalı ve çalışmalıdır.
wg show wg0 peers
wg show wg0 allowed-ips
sudo wg-quick down wg0 && sudo wg-quick up wg0
wg show wg0 peers
Durumun izin verdiği yerlerde, eski kimliğin artık eski kaynaklarına ulaşmadığını doğrulayın. Yeniden başlatmadan önceki düzenli arayüz listesi testin yarısıdır. Diğer yarısı, kimliğin bundan sonra hâlâ ne yapabildiğidir.
Bir yönetici peer'i sürekli geri getiriyorsa, düşük seviyeli kaldırmayı tekrarlamayı bırakın. O yazanın okuduğu envanteri düzeltin, çünkü o zamana kadar her yeniden başlatma, kimliğin yeniden belirmesi için bir davettir.