Od dawna używam takiej konfiguracji ssh_config. Loguję się po SSH po klucz i haśle, jeśli tego klucza nie ma na serwerze. Po aktualizacji z Fedora 33 do 34 mam taki problem, ze Krusader czy Nautilus nie chcą mnie logować po haśle (nie pytają o nie) na poniższej konfiguracji. Działają tak, jakby chciały koniecznie użyć klucza, którego nie ma dla niektórych serwerów.
Terminal SSH działa poprawnie.
Host *
ServerAliveInterval 120
#Legacy
KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
IdentityFile ~/.ssh/klucz1
IdentityFile ~/.ssh/klucz2
IdentityFile ~/.ssh/klucz3
IdentityFile ~/.ssh/klucz4
Część kluczy jest szyfrowana.
Jeśli usunę wszystkie IdentityFile, to wydaje się wszystko działać i w terminalu i w programach dla KDE, ale np terminal w PHP Storm nie widzi żadnego klucza, przez co zawsze forsuje hasło.
Poniekąd rozwiązaniem na ten problem jest to:
Host *
ServerAliveInterval 120
#Legacy
KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
Host hostnr4.com
IdentityFile ~/.ssh/klucz4
Ale w tym wypadku z PHP Storm z wbudowanego terminala zaloguje się po kluczu tylko na hostnr4.com. A chciałbym się logować wszędzie - tam gdzie jest użyty klucz SSH po klucz, a tam gdzie nie ma, to po haśle.
Co mam zmienić w ssh_config, zeby działalo po staremu?