Geçerli bir tek kullanımlık kod neden yine de VPN girişinde başarısız olur
Reddedilen bir kod genellikle istem sırası, kayıt veya zamanlama sorunudur, yanlış kod değildir. Bir şeyi yeniden kaydetmeden önce bunları sırayla kontrol edin.
VPN istemcisini açıyorsunuz, parolayı yazıyorsunuz ve doğrulayıcınızdan gelen altı hane geçersiz olarak dönüyor — iki kez, sonra üçüncü kez. Hesapta dünden beri hiçbir şey değişmedi, bu yüzden ilk dürtü doğrulayıcıdaki kaydı silip yeniden taramak — genellikle yanlış onarım budur. Tek kullanımlık kod ikinci bir parola değildir: ağ geçidinin onu belirli bir adımda, belirli bir kayıtlı kayıttan, belirli bir pencere içinde istemesi gerekir ve reddetmelerin çoğu haneler karşılaştırılmadan önce gerçekleşir. Kayda dokunmadan önce hangi adımda olduğunuzu belirleyin.
İstemlerin sırası hangi akışta olduğunuzu söyler
Kod içeren neredeyse her VPN girişi üç biçimden birine girer. İki adımlı biçimde istemci parolayı gönderir, sunucu bir meydan okuma yayınlar ve istemci yeniden sorar. Birleşik biçimde ağ geçidi parola ve kodu tek bir gönderimde ister — bazen birleştirilmiş, bazen yalnızca operatörün belgelediği bir ayırıcıdan sonra. Tarayıcı biçiminde istemcinin hiç alanı yoktur: kod bir web sayfasına girilir ya da bir push onayı onun yerini alır ve masaüstü istemcisi sonucu bekler.
Yanlış biçim kötü kod gibi görünür. Yeni bir kodu yalnızca parola alanına yapıştırın, sunucu onu parolanın parçası olarak okur. İstemci tarafında OpenVPN 2.4 ve sonrası farkı görünür kılar: AUTH_FAILED,CRV1: ile yanıt veren sunucu bir meydan okuma yanıtı bekler, bu yüzden profil için static-challenge ya da SCRV1: biçiminde bir parola dosyası gerekir. Yalnızca auth-user-pass taşıyan eski bir profil parolayı doğrular ve sonra durur; bu, günlükte kod gönderilmediği hâlde OTP hatası gibi görünür.
WireGuard istisna olarak anılmayı hak eder: insanları değil anahtar çiftlerini doğrular, bu yüzden kod için alan yoktur. Bir sağlayıcı böyle bir şey duyuruyorsa tünelin dışındaki bir şey onu kabul ediyordur.
Sunucu altı haneyle ne yapar
Zamana dayalı kodlar, RFC 4226'daki eski sayaç tabanlı yapıyı saran RFC 6238 izler: hareketli bir faktör üzerinde HMAC, varsayılan olarak altı haneye kısaltılır. TOTP'de hareketli faktör, geçerli Unix zamanının bir adıma bölünmesidir; operatör değiştirmediyse 30 saniye. Doğrulayıcı hanelerinizi hiçbir zaman saklanan bir değerle karşılaştırmaz; beklenen kodu paylaşılan tohumdan yeniden hesaplar ve genellikle komşu adımları da kabul eder, böylece yavaş bir gidiş dönüş girişi başarısız kılmaz.
İki sonuç gözden kaçar. Telefonun saat dilimi önemsizdir, çünkü tohum hiçbir zaman yerel saat görmez — yalnızca gerçek UTC'den sapma önemlidir ve iki dakika ileri giden bir cihaz temiz bir geri sayım gösterirken her kodda başarısız olur. Kod tasarım gereği tek kullanımlıktır: doğrulayıcı o tohum için kabul ettiği son sayaç değerini hatırlar, bu yüzden aynı haneler yeniden gönderildiğinde aynı pencerede bile reddedilir. Zaman aşımından sonra yeniden deneyen bir istemci, az önce gönderdiği kodu yakabilir.
Sayaç tabanlı belirteçler her basışta sayaçlarını ilerletir, bu yüzden kodlar üretilip hiç gönderilmediğinde senkronizasyondan çıkarlar; olağan onarım, ileriye dönük birkaç değeri kabul eden bir yeniden senkronizasyon penceresidir. Operatör HOTP kaydettiyse ve uygulamanız TOTP gösteriyorsa, her değer saat sorunu gibi görünen bir biçimde yanlıştır. QR kodun arkasındaki sağlama URI'si türü, haneleri, dönemi ve karmayı adlandırır.
Yanlış kod gibi görünen hatalar
En yaygın suçlu kayıtlı kayıttır. Doğrulayıcı uygulamalar kayıtları veren ve hesaba göre etiketler, bu yüzden aynı VPN'de iki kimliği olan biri etiketleri bir karakter farklı iki kayda sahip olabilir. Kod yalnızca onu üreten tohum için geçerlidir, başka hiçbir şey için değil. Telefondaki etiketi sunucunun kaydettiği kullanıcı adıyla karşılaştırın, yazdığınızı hatırladığınızla değil.
İkincisi uyuşmayan bir parametre kümesidir. Sekiz hane, 60 saniyelik dönem veya SHA-256 ile kaydedilen tohum, altı hane, 30 saniye ve SHA-1 bekleyen doğrulayıcının reddettiği kodlar üretir ve istemcide bu yanlış koddan ayırt edilemez. QR kodun fotoğrafından kaydın yeniden eklendiği veya belirteç kaydının varsayılan değerlerle yeniden oluşturulduğu geçişlerden sonra ortaya çıkar.
Üçüncüsü kodla ilgili değildir. Ağ geçitleri genellikle yanlış parola, süresi dolmuş kod ve devre dışı hesap için tek bir genel kimlik doğrulama hatası döndürür, bilerek, kimse hangi faktörün başarısız olduğunu araştıramasın diye. İstemcinin başlığı yerine ağ geçidi veya RADIUS günlüğünü okuyun: hiç yayınlanmayan meydan okuma, OTP özniteliği olmayan erişim reddi ve ilke reddi ekranda aynı görünür ve farklı sonraki adımlara götürür.
Bunu daraltan kısa bir sıra
En ucuz denetimle başlayın ve tutmayan ilk adımda durun.
- Yeni bir kod bekleyin, bir kez gönderin ve meydan okumanın parola kabul edilmeden önce mi sonra mı göründüğünü not edin.
- Doğrulayıcıdaki etiketi sunucunun sakladığı kullanıcı adıyla eşleştirin.
- Profilin bir meydan okumaya yanıt verebildiğini doğrulayın, yukarıdaki
CRV1durumunda olduğu gibi. - Cihazın saatini bilinen bir zaman kaynağıyla karşılaştırın; birkaç düzine saniyeyi aşan sapma TOTP'yi kendi başına bozar.
- Belirtecin TOTP mi HOTP mi olduğunu ve hangi hane, dönem ve karmanın kaydedildiğini operatöre sorun.
İki kural bunun daha kötüye gitmesini önler. Birçok kez yeniden denemeyin: birçok ağ geçidi hesap başına hataları sayar ve hesabı ya kilitler ya da yanıtları geciktirmeye başlar, böylece bir patlama küçük bir yapılandırma hatasını destek biletiine dönüştürür. Ve belirteci tanı amacıyla yeniden kaydetmeyin, çünkü bu eski tohumu geçersiz kılar; gerçek arıza istemcinin hiç göndermediği bir meydan okumaysa, şimdi bir değil iki değişikliği açıklamanız gerekir.
Tohumu ve kurtarma kodlarını döngünün dışında tutun
Altı hane ve arkalarındaki sır birbirinin yerine geçmez. Sağlama QR kodu veya Base32 tohumu hesabın gelecekteki her kodunu üretir, bu yüzden parolayla aynı kategoriye girer: ekran görüntüsünde değil, bilet yorumunda değil, sizinle ilk iletişime geçen kişiyle sohbette de değil. Kurtarma kodları ayrı bir mekanizmadır — tek kullanımlık, çoğu zaman kod istemini tamamen atlar ve hesabı test etmek için birini harcamak daha sonra ihtiyaç duyabileceğiniz bir yedek yolu ortadan kaldırır.
Kod giriş sayfasını güvenilir de kılmaz: benzer bir alan adındaki OTP istemi geçerli bir kodu toplar ve pencere içinde yeniden oynatır, nereye yazdığınızı hâlâ sertifika söyler.
Sıra bir meydan okumaya yanıt veremeyen bir profilde biterse profili düzeltin ve tek bir yeni kodla yeniden test edin. Uyuşmayan kayıt parametrelerinde biterse, kimse bir şey taramadan önce operatörün belirteç kaydını okumasını isteyin. Bir kilitlemede biterse istemci değiştirmek yerine geçmesini bekleyin — engel uygulama değil hesap durumudur.