it-swarm.asia

Ortak anahtar kimlik doğrulaması başarısız olursa, ssh'den parola sor yerine nasıl başarısız olurum?

SSHes ortak anahtar kimlik doğrulaması kullanan birkaç sunucu var bir komut dosyası var. Sunuculardan biri, bir yapılandırma sorunu nedeniyle komut dosyasının oturum açmasına izin vermeyi durdurdu, yani komut dosyasının bir "Parola:" İstemi ile sıkışıp kaldığı açıktır, bu nedenle sunucuların geri kalanını bile denemez listede.

Anahtar kimlik doğrulaması başarısız olursa, ssh istemcisine parola sormamasını söylemenin bir yolu var, bunun yerine yalnızca bir hata bağlanıyor ve betiğimin devam etmesine izin veriyor mu?

110
rjmunro

OpenSSH için, şifre istemini devre dışı bırakmanın yanı sıra, anahtarlar için parola (lar) için sorgulamayı devre dışı bırakması gereken BatchMode vardır.

Toplu modu

“Evet” olarak ayarlanırsa, parola/parola sorgusu devre dışı bırakılır. Bu seçenek, parola sağlamak için hiçbir kullanıcının bulunmadığı komut dosyalarında ve diğer toplu işlerde kullanışlıdır. Argüman “evet” veya “hayır” olmalıdır. Varsayılan "hayır" dır.

Örnek kullanım:

ssh -oBatchMode=yes -l <user> <Host> <dostuff>
145
  • Geçerli ssh bağlantısı girişimi için parola kimlik doğrulamasını devre dışı bırakmak için, komut satırına bu seçeneği iletin:

    -o PasswordAuthentication=no
    
  • Herhangi bir Ana Bilgisayara gelecekteki tüm bağlantılar için şifre kimlik doğrulamasını devre dışı bırakmak için ~/.ssh/config:

    PasswordAuthentication no
    
  • Yalnızca bazı ana bilgisayarlar için devre dışı bırakmak üzere aşağıdakileri ~/.ssh/config dosyasına ekleyin:

    Host host1 Host2 Host3...
        PasswordAuthentication no
    

Yukarıdaki seçenekler giden ssh bağlantıları, yani uzak bir ssh sunucusuna bağlanmaya çalıştığınız yerler için geçerlidir.

Bir ssh sunucusunda parola kimlik doğrulamasını devre dışı bırakmak için (yani tüm gelen ssh bağlantıları için geçerlidir) PasswordAuthentication no ila /etc/ssh/sshd_config ve sshd'yi yeniden başlatın.

24
cas

Dropbear kullanıyorsanız, "-s "şifre kimlik doğrulamasını devre dışı bırakma seçeneği.

12
sybreon

Komut satırında (veya ~/.ssh/config) PreferredAuthentications ayarını yapabilirsiniz.

PreferredAuthentications=publickey
8
Rory