Как я могу аутентифицироваться с помощью ключевого файла при использовании ssh-copy-id?

Это возможно? Если так, то как?

Сервер, на который я хочу скопировать ключ ssh, разрешает аутентификацию только с помощью ключевого файла, а не имени пользователя и пароля.

Я могу войти на сервер с помощью ssh -i ...

Я только что проверил, и ssh-copy-id поддерживает опцию -i [identity_file] так же, как вы используете ее для ssh.

Если это не работает для вас, вы можете увидеть, если ваша версия может сделать эту опцию:

 -o ssh -o IdentityFile ~/backups/.ssh/id_dsa 

Затем вы можете попробовать обновить вашу версию ssh-copy-id. Наконец, вы можете просто скопировать / вставить открытый ключ после входа в ssh.

Если у вас работает ssh-agent и загружен старый ключ, с которым вы уже можете войти, он должен работать следующим образом:

 ssh-copy-id -i new-key user@host 

или же

 ssh-copy-id -i new-key host-alias-from-config 

Мне пришлось добавить -f но я не уверен, было ли это ошибкой с моей стороны.