Всем спасибо за помощь, без вас бы не справился. С праздником!
Причина проблем оказалась в том, что я поставил пароль на секретный ключ. Это полезно для безопасности вообще, но я запускал скрипт, который работает в НЕинтерактивном режиме.
В общем, та же проблема, с которой всё началось, только в первый раз я не мог ввести пароль к серверу.
В качестве проверки можно запустить
sftp user@server.ru
и он запросит пароль к секретному ключу.
А при запуске со скриптом запрос не высвечивается и сразу выдаётся ошибка доступа.
Снял пароль и всё заработало!