AWS VPN PSK'sını döndürme: hangi tünel düşer ve ne zaman
Bir AWS VPN tünelinin önceden paylaşılan anahtarını değiştirmek, iki taraf anlaşana kadar o tüneli düşürür. Önce alternatif yolu kanıtlayın, sonra tünelleri tek tek döndürün.
İki uç önceden paylaşılan anahtar konusunda anlaşamadığı anda tünel düşer ve iki taraf yeni değeri taşıyana kadar düşük kalır. Bu kısım beklenen bir durumdur: AWS değişikliği seçilen tünelin kesintisi olarak görür ve anahtarlar farklı olduğu sürece eş IKE'yi tamamlamaz. İnsanları şaşırtan şey ikinci yarıdır. Diğer tünel, taşıyabildiğini doğrulamadığınız sürece trafiği kendiliğinden devralmaz. Bu sırayla döndürün ve kesinti tek bir tünelin içinde kalır.
Anahtar değiştiğinde gerçekte ne olur
ModifyVpnTunnelOptions, dış IP adresiyle tanımlanan bir tünelin seçeneklerini yeniden yazar. Tünel yıkılır ve yeniden kurulur, bu nedenle IKE ve IPsec yeni anahtarla sıfırdan müzakere eder. AWS kesintinin birkaç dakika sürebileceğini belirtir; bu, bir yönlendirme protokolünün fark etmesi için yeterince uzundur. Aynı bağlantıdaki diğer tünel çağrıdan etkilenmez.
Herhangi bir şey göndermeden önce bilinmesi gereken ikinci bir etki var. Değişiklik işlemi tünel seçeneklerinin tamamını alır, bu nedenle dışarıda bıraktığınız alan varsayılan değeriyle geri yazılır. Faz 1 veya faz 2 ömürlerini ya da ölü eş algılama ayarlarını değiştirdiyseniz, geçerli değerleri aynı istekte iletin veya sonradan geri yüklemeyi planlayın.
Önce geçerli değerleri okuyun, sonra tek bir alanı değiştirin. Bu sıra bu işin tüm disiplinidir.
Önce AWS tünelini doğru eşle eşleştirin
Konsol tünelleri sıraya göre etiketler ve cihazınız bu etiketi kullanmaz. Tüneli dış IP adresinden tanımlayın ve müşteri ağ geçidindeki eş bölümüyle eşleştirin. Yerel bir yapılandırmadaki tünel 1, AWS'nin tünel 1 dediği tüneli düzenlediğinizin kanıtı değildir.
Bağlantının kendisinden başlayın; her iki tüneli ve her birinin şu anda tuttuğu anahtarı listeler:
aws ec2 describe-vpn-connections --vpn-connection-ids vpn-0123456789abcdef0 \
--query "VpnConnections[0].Options.TunnelOptions[].[OutsideIpAddress,PreSharedKey]"Dönen anahtar şu anda kullanılan anahtardır. Herhangi bir şeyi değiştirmeden önce eş yapılandırmasıyla karşılaştırın, çünkü zaten var olan bir uyumsuzluk hiçbir zaman kararlı olmayan bir tüneli açıklar.
Önce diğer tünelin trafiği taşımasına izin verin
Tek bir bağlantıdaki iki tünel, cihazınızın ikisini de yapılandırdığını, ikisinin de ihtiyaç duyduğunuz önekleri duyurduğunu veya trafiğin aralarında hareket ettiğini kanıtlamaz. Alternatif tünelin müzakere durumunu, rotalarını ve her iki yönde gerçek bir uygulama akışını kontrol edin. BGP'de canlı bir komşuluk yararlı bir kanıttır ancak önekleri doğrulamakla aynı şey değildir. Statik yönlendirmede ağ geçidinin yolu nasıl seçtiğini ve tercih edilen yol kaybolduğunda ne yaptığını doğrulayın.
Alternatif iş yükünü taşıyamıyorsa anahtara dokunmadan önce kesintiyi planlayın veya alternatif tüneli onarın. Konsol sayfasındaki durum ışığı kesintisiz hizmet sözü değildir.
Bir tüneli döndürün, ardından gerçek trafikle doğrulayın
Alternatif yol kanıtlandığında sıra kısadır. Tünel adresini, eşini ve gizli olmayan ayarları not edin ve ağ geçidine, kesmek üzere olduğunuz tünele bağlı olmayan bir yönetim yolu tutun.
- Seçilen dış adres için müşteri ağ geçidi eşini güncelleyin veya değişikliği API çağrısından saniyeler sonra yürürlüğe girecek şekilde hazırlayın.
- Değişiklik çağrısını yeni anahtarla birlikte geçerli ömürler ve DPD değerleriyle gönderin.
- IKE ve IPsec geri dönene kadar bekleyin, ardından rotaları ve gerekli önekleri doğrulayın.
- Temsili bir uygulama akışını o tünelden geçirin ve iki yönü de izleyin.
Uçlar anlaşmadığı ve AWS değişikliği uyguladığı sürece tünel kullanılamaz, bu nedenle eş güncellemesi öğle yemeğinden sonra değil hemen ardından gelmelidir. Yalnızca değiştirilen tünel gerçek trafik taşıdığında işlemi diğerinde tekrarlayın.
İlk tünelden sonra kurtarma veya yönlendirme hâlâ belirsizse durun. Yarı çalışan iki tünel, çalıştığını bildiğiniz bir tünelden daha kötüdür.
Kurtarma tıkandığında IKE tarafını okuyun
İki uç yeni anahtarı tuttuktan sonra da düşük kalan bir tünel genellikle döndürmenin ortaya çıkardığı, yaratmadığı bir ilke uyumsuzluğudur. Teklifler, eşin gönderdiği kimlik ve trafik seçicileri AWS tarafıyla uyuşmalıdır ve kurulmuş bir tüneli atlatan bir değer yeni bir müzakerede yine de reddedilebilir. Anahtarı ikinci kez değiştirmeden önce müzakere durumunu ve ona eklenen iletiyi okuyun.
aws ec2 describe-vpn-connections --vpn-connection-ids vpn-0123456789abcdef0 \
--query "VpnConnections[0].VgwTelemetry[].[OutsideIpAddress,Status,StatusMessage]"Değişikliğin geri alınması gerekiyorsa eski anahtarı sırf eskiden çalıştığı için geri yüklemeyin. Ele geçirilmiş bir anahtarı ele geçirilmiş sayın ve bunun yerine müzakereyi düzeltin. İki tüneli de doğrulayıp her eşin hangi değeri tuttuğunu kaydetmesi için sır envanterini güncelleyerek bitirin ve AWS tünel seçenekleri belgelerini runbook'un yanında tutun.