Файлы авторизованных ключей на обеих машинах одинаковы. Итак, я не знаю, что еще проверить ..
На том, что работает (хост A-> B) получаю ..
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering DSA public key: foo.macbook.air
debug1: Server accepts key: pkalg ssh-dss blen 433
debug1: Authentication succeeded (publickey).
На том, что не работает (хост B-> A), я получаю:
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /home/foo/.ssh/id_rsa
debug1: Trying private key: /home/foo/.ssh/id_dsa
В /etc/ssh/ssh_config
файлы одинаковы на обоих хостах. и мой ~/.ssh/authorized_keys
идентичен на обоих хостах, с разрешениями 600. ~/.ssh
также имеет разрешения 600.
Возможна ли проблема в том, что открытый ключ по какой-то причине не «предлагается» хостом B? Я в растерянности, так как все работает в одну сторону, но не в другую, и я не вижу очевидных различий между двумя серверами.
Проблема была связана с SecureCRT. Я удалил файл hostsmap.txt.
C:\Documents and Settings\%user%\Application Data\VanDyke\Known Hosts\hostsmap.txt
Каким-то образом проблема сводилась к проблеме с ключом хоста.
На B должен быть закрытый ключ, публичным аналогом которого будет запись в authorized_keys
на; и наоборот.
Если на обоих хостах будут одинаковые authorized_keys, это не сработает. Хосту A нужен открытый ключ от B в его authorized_keys, а хосту B нужен открытый ключ A.