many ssh pubkeys cause Too many authentication failures

Ich habe es nun heute geschafft, den 6. ssh Key auf meinem System einzubinden. Soweit sollte das ja nicht besonderes sein, jedoch arbeitet SSH so, dass es bei einem Verbindungsaufbau jeden eingetragenen Key durchprobiert, bis einer passt. Standartmäßig erlaubt ein SSH Server jedoch nur 5 Verbindungsversuche. Da kann man sich vorstellen, wie gut es bei 6 Schlüsseln läuft.

Dem SSH Manuel nach kann man jedoch mittels "-i keyfile" auch festlegen, welcher key genutzt werden soll. Also auf und ausprobiert und verwundert festgestellt, dass er zwar irgendwie eingelesen wurde, aber zum verbinden nicht verwendet wurde. Also rum probiert und gefragt ob die Option die richtige ist. Getestet ob der Key selbst einwandfrei funktioniert.

Letzendlich hatte ich die Nase voll und hab die Keys mittels "ssh-add -D" alle aus der Liste geworfen. Das war dann erst mal verwunderlich, weil nur meine beiden zuletzt per Hand hinzugefügten verschwanden, die vorherigen 4 die wohl durch "ssh-copy-id -i" wie im Ubuntu Wiki beschrieben, da rein kamen, waren immernoch da. Das war jedoch ganz gut, weil mir dadurch etwas anderes erstaunliches auffiel. Und zwar wurden auch weiterhin erst mal diese 4 Keys beim Verbindungsversuch ausprobiert, und danach erst der als Parameter mit gegebene Key. Nun weis ich nicht, ob ich irgendwann mal zu sehr an den SSH Configs rumgeschraubt habe oder ob das normal ist für SSH, aber ich wäre nich auf die Idee gekommen, dass configfiles eine höhere Rangordnung haben könnten, als direkt übergebene Parameter. Welche Frage sich mir auch noch stellt, wo sind eigentlich die Einträge von ssh-add gespeichert.

UPDATE

Wie ich nun inzwischen weiß, ab einer gewissen Zahl an Servern ist das anlegen eines "~/.ssh/config" files recht praktisch. Hier kann man nicht nur den verwendeten Key fest eintragen zu einem Server, es ist auch möglich Username und andere Parameter dort fest zu hinterlassen und dem ganzen sogar einen Alias zu geben damit es nicht mehr nötig ist die gesammte Domain mit anzugeben.

Das sieht dann in etwa so aus:

Host example
     HostName example.com
     User example_user
     IdentityFile ~/.ssh/example_server_private_key_rsa

genaueres kann dann unter "man ssh_config" gelesen werden.