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?
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>
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.
Dropbear kullanıyorsanız, "-s
"şifre kimlik doğrulamasını devre dışı bırakma seçeneği.
Komut satırında (veya ~/.ssh/config
) PreferredAuthentications
ayarını yapabilirsiniz.
PreferredAuthentications=publickey