SSH ile Kimlik Doğrulama Sırası


22

Ssh ile giriş -vyaptığımda ssh'ın şu şekilde kimlik doğrulaması yaptığını görüyorum

debug1: Authentications that can continue: publickey,gssapi-with-mic,password,hostbased

Sırayı değiştirmek istiyorum ... nasıl bir fikir?

Benim en büyük sorunum, kilitli hesapları olan kullanıcının yine de ortak anahtarlarla giriş yapabilmesi. Ben "ssh-kilitli" bir gruba kullanıcı sshing den reddetme eklemek için kullanıcı ekleyebilir buldum, ama yine de ssh'd söylemek için bir yol olup olmadığını merak ediyorum: Lütfen anahtarları önce şifre kontrol ...


1
Sanırım buna yanlış yaklaşıyorsunuz - anahtarlar (genellikle) şifrelerden daha güvenlidir. Hesap kilitliyse, sshd arka plan programına, kimlik doğrulama yönteminden bağımsız olarak kullanıcının oturum açmasına izin vermemesini söylemeniz gerekir.
— EightBitTony

Dediğim gibi DenyGroups aracılığıyla bir çözüm buldum. Bunu ilgi uğruna istiyorum.
— Oz123

Yanıtlar:


31

Ssh sunucusu hangi kimlik doğrulama seçeneklerine izin verdiğine karar verir, ssh istemcisi bunları hangi sırayla deneyeceğine karar verecek şekilde yapılandırılabilir.

Ssh istemcisi PreferredAuthenticationsbunu belirlemek için ssh config dosyasındaki seçeneği kullanır .

Gönderen man ssh_config( buradan çevrimiçi görün ):

PreferredAuthentications
             Specifies the order in which the client should try protocol 2 authentication methods.  This allows a client to prefer
             one method (e.g. keyboard-interactive) over another method (e.g. password).  The default is:

                   gssapi-with-mic,hostbased,publickey,
                   keyboard-interactive,password

Kaynakla oynamadan OpenSSH sunucusuna belirli bir siparişi tercih etmesini söylemenin mümkün olduğuna inanmıyorum - eğer düşünürseniz, bu zaten mantıklı değil.


Windows için Git Bash kullanıyorsanız, ssh yapılandırmanızı~/.ssh/config
— Spencer Williams

Bir yöntem bir öncekine bağlıysa sipariş mantıklı olabilir. Örneğin, klavyeyle etkileşimli altındaki 2FA, ilk olarak geçerli bir parola sağlayan kullanıcıya bağlı olabilir.
— steveayre

Yukarıdaki PreferredAuthentications bilgisini kopyaladığınız bir kaynak gönderebilir misiniz? Bunu içinde görmüyorum man sshne de, /etc/ssh/ssh_configne de içinde /etc/ssh/sshd_config. Bu bilgiye nereden ulaştın?
— Gabriel Staples

Buldum! İçindeydi man ssh_config. Cevabınızı bu kaynağı içerecek şekilde güncellemek için inceleme için bir düzenleme gönderdim. Lütfen bir dahaki sefere kaynakları belirtin! Çok teşekkürler.
— Gabriel Staples

18

Bu ekleniyor:

PreferredAuthentications keyboard-interactive,password,publickey,hostbased,gssapi-with-mic

... bunu çözmeme /etc/ssh/ssh_configyardım etti ve çok zaman kazandı!

"Ayrıntılı" anlamına ssh -v user@hostgelen connect komutunu kullanarak çalışıp çalışmadığını kontrol edebilirsiniz -v.


2
Doğru dosyaya bu ekliyoruz emin olun ssh_configve değil sshd_config. İkincisi ssh'nizin başarısız olmasına neden olur!
— Oranges13

0

PreferredAuthenticationsSeçeneği belirten diğer iki cevaba ekleyerek, istemiyorsanız bu ayarı yapmak için herhangi bir dosyayı düzenlemenize gerek olmadığını eklemek istiyorum . Aksine, sadece olabilir için tek çağrı için komut satırında ayarlayınssh ile, -oaşağıdaki gibi, seçenek:

ssh -o PreferredAuthentications=publickey,gssapi-with-mic,hostbased,keyboard-interactive,password user@hostname

Referanslar:

  1. PreferredAuthenticationsSeçenek hakkında daha fazla bilgi için , bkz. man ssh_config( Çevrimiçi olarak buradan görün ). Ayrıca manuel sayfalardaki ( çevrimiçi burada ) ssh -oseçenek hakkında da bilgi edinin .man ssh
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.