Назад | Перейти на главную страницу

scp - В доступе отказано (publickey, gssapi-keyex, gssapi-with-mic)

Попытка скопировать файлы с serverB на serverA и получить следующую ошибку:

root@server:~# scp /root/test.txt root@111.111.111.111:/home/somefolder/
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
lost connection

На serverA я создал пару открытого и закрытого ключей без парольной фразы. На serverB я добавил открытый ключ в файл .ssh / authorized_keys. И папка, и файл принадлежат пользователю root.

Изначально я пробовал это с парольной фразой ... поскольку она не работала, я создал другой ключ без парольной фразы. Оба дают одинаковые результаты.

Это не проблема брандмауэра. serverA - это centos. serverB - это убунту.

Оказывается, мне нужно было указать идентификатор в команде scp примерно так:

scp -rp -i /root/.ssh/server /home/user-data/* root@111.111.111.111:/home/user-data

где '/root/.ssh/server' - это расположение используемого закрытого ключа. Разрешения и права собственности также должны быть правильными.

Я столкнулся с той же проблемой. Надеюсь, это сработает для вас.

scp -rp -i yourfile.pem ~/local_directory username@instance_url:directory

Разрешение также должно быть правильным, чтобы эта работа работала.

Запустите scp в подробном режиме (-vvv) и посмотрите, сможете ли вы определить проблему там. Возможно, права доступа к вашему файлу .ssh / authorized_key в месте назначения (или даже источнике) слишком открыты.

Проблема, с которой я столкнулся, заключалась в том, что учетная запись пользователя была заблокирована. В поле пароля / etc / shadow был восклицательный знак (восклицательный знак), что означало, что учетная запись заблокирована. Чтобы это исправить, мне пришлось

sudo vi /etc/shadow

И измените "!!" в '*'. В качестве альтернативы вы можете установить пароль для учетной записи

sudo passwd newacct

Смотрите также Что означает * в файле passwd

Что ты видишь в /var/log/secure файл? Наверное .ssh/* имеют плохие разрешения.

Так что вы можете попробовать бежать ssh -v команду, чтобы узнать, в чем проблема.