Güvenilmeyen bir VPN'de SSH parolanızı gerçekte kim görüyor?
VPN üzerinden parola yazmadan önce kimlik kontrollerini yapın, ardından sunucu kimliğini, kullanıcı kimlik doğrulamasını ve uç nokta güvenini üç karara ayırın.
SSH oturumunu kendi yönetmediğiniz bir VPN üzerinden geçirin; parola yine de SSH sunucusuna aittir, aradaki ağa değil. Doğrulanmış bir konağa giden taşıma düzgün korunuyorsa, o yoldaki pasif bir gözlemci parolayı okunabilir biçimde elde etmez. Ama tek bir koşulu değiştirin ve cevap değişir: doğrulanmamış bir konak, zayıflatılmış şifre listesi veya ele geçirilmiş bir iş istasyonu farklı sonuçlar verir. Aşağıdaki kontrolleri sırayla yapın ve her birini durma koşulu olarak görün.
Bir şey yazmadan önce alıcıyı adlandırın
Parola alanı bir kimlik doğrulama iletisinin içinde, o ileti de şifrelenmiş taşımanın içinde yol alır. Gizlilik taşımanın bir özelliğidir; yani korumanın müzakere edilmiş olmasına ve tam olarak amaçladığınız konakla müzakere edilmiş olmasına bağlıdır. İnsanların atladığı tam da bu ikinci yarıdır. Bir sahtekâra şifrelenmiş bağlantı aynı zamanda hem gizli hem de işe yaramazdır. VPN oturum açma işlemi SSH konağı hakkında hiçbir şey kanıtlamaz ve sağlayıcının itibarı anahtar kontrolünün yerini tutmaz.
İki yönü kafanızda ayrı tutun. Konak anahtarı hangi sunucuya ulaştığınızı yanıtlar. Parola veya anahtar kimlik doğrulaması sunucunun hangi kullanıcıyı kabul ettiğini yanıtlar. İkincisini iyileştirmek birincisini asla onarmaz.
Konak kimliğini, kaydı ve müzakereyi denetleyin
İstemcide zaten elinizde olan kayıtla başlayın. Güvenilir bir kaynakla karşılaştırılan yayımlanmış parmak izi ve hâlâ eşleşen bir known_hosts girdisi, kimlik doğrulama başlamadan önce önemli olan tek kanıtı verir.
ssh-keygen -F ssh.internal.example.net -f ~/.ssh/known_hosts
ssh -o StrictHostKeyChecking=yes ssh.internal.example.net
Sunucu tarafında, yayımlamayı düşündüğünüz parmak izlerini bellekten kopyalamak yerine yazdırın. Bunları kanal dışında dağıtmak asıl meseledir; konak adıyla aynı sohbet kanalından yapıştırılan bir parmak izi yalnızca ikisinin de aynı yerden geldiğini kanıtlar.
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub
sudo sshd -T | grep -E 'hostkey|kexalgorithms|cipher'
Müzakere edilen algoritmalar iki tarafın kesişiminden gelir. İstemci yapılandırması eski bir cihaza ulaşmak için eskimiş bir anahtar değişimini sabitliyorsa, bu seçim konuştuğu her konak için geçerlidir; bu yüzden onu genel yerine o konakla sınırlayın.
Sunucunun gerçekte kabul ettiği yöntemleri okuyun
Bir sunucunun hangi kimlik doğrulama yöntemlerine izin verdiğini bilmek, parolanın ne için olduğunu söyler. Yalnızca açık anahtarları kabul eden bir konağın korunacak parola alışverişi yoktur ve hâlâ parola kabul eden bir konak, miras alınan varsayılan yerine bilinçli bir kararı hak eder.
sudo sshd -T | grep -E 'passwordauthentication|pubkeyauthentication|permitrootlogin'
Bir kullanıcıyı anahtar kimlik doğrulamasına taşımak, o kullanıcının parolasını o alışverişten çıkarır. Bu, ele geçirilmiş bir iş istasyonunu güvenli kılmaz ve güvenilmeyen bir uzak oturumu zararsız kılmaz. Bunlar farklı kontrolleri olan farklı risklerdir. Aracı iletimine de karar verin. Bir aracıyı güvenilmeyen bir konağa iletmek, oturum sürdüğü sürece o konağa anahtarlarınızı kullanma yeteneği verir ve bu, her şeyin başladığı parola sorusundan daha büyük bir maruziyettir.
Konak anahtarı uyarısını bir olay adımı olarak ele alın
İstemci konak tanımlamasının değiştiği konusunda uyardığında durun ve aynı ağ yolundan geçmeyen bir kanaldan doğrulayın. Parmak izini sunucu konsoluyla veya onu yeniden kuran operatörle karşılaştırın. Uyarıyı susturmak için eski girdiyi silmek, reddetmeniz gereken tek eylemdir. Kanıtı çöpe atar ve olası bir araya girmeyi sıradan bir oturum açmaya dönüştürür.
Konak meşru olarak yeniden kurulduysa, eski girdiyi ancak yeni parmak izi onaylandıktan sonra kaldırın, ardından yeniden bağlanın ve müzakereyi tekrar denetleyin. Değişikliği tarih ve gerekçeyle kaydedin, çünkü sıradaki kişi aynı uyarıyı görecek ve bunun çözüldüğünü bilmesi gerekecek.
Bu kılavuzun kapsamadığı şeyler
Trafiği izleyen bir VPN operatörü, makinenizde yerel ayrıcalıklara sahip yazılımla aynı şey değildir. Uç noktanın ele geçirilmesi, düşmanca bir tarayıcı eklentisi veya bir klavye kaydedici, SSH'ın müzakere edebileceği her şeyin altında yer alır ve hiçbir tünel bunu değiştirmez. İş istasyonundan şüpheleniyorsanız, başka bir çıkıştan yeniden bağlanarak gizliliği test etmek yerine olay sürecini izleyin. Yeniden bağlanmak ağ yolunun değiştiğini kanıtlar ve uç nokta hakkında hiçbir şeyi kanıtlamaz.
Sıradan durumla bitirin: doğrulanmış konak, korunmuş taşıma, bilerek seçtiğiniz kimlik doğrulama yöntemi ve ihtiyaç duymadığınız hiçbir iletim. Bu bileşim başlıktaki sorunun yanıtıdır ve bu bir değil dört karardır.