Использование scp для копирования файла в экземпляр Amazon EC2?



Я пытаюсь использовать мой терминал Mac для scp файл из загрузки (phpMyAdmin я скачал онлайн) на мой экземпляр Amazon EC2.

команда, которую я использовал, была:

scp -i myAmazonKey.pem phpMyAdmin-3.4.5-all-languages.tar.gz  hk22@mec2-50-17-16-67.compute-1.amazonaws.com:~/.

ошибка, которую я получил: предупреждение: идентификационный файл myAmazonKey.pem недоступен: нет такого файла или каталога. Отказано в доступе (открытый ключ). потерянное соединение

оба мои myAmazonkey.pem и phpMyAdmin-3.4.5-все языки.смола.gz находятся в загрузках, поэтому я попробовал

scp -i /Users/Hello_Kitty22/Downloads/myAmazonKey.pem /Users/Hello_Kitty22/Downloads/phpMyAdmin-3.4.5-all-languages.tar.gz  hk22@mec2-50-17-16-67.compute-1.amazonaws.com:~/.

и ошибка, которую я получил: внимание: Identity file / User/Hello_Kitty22/Downloads / myAmazonkey.pem недоступен: нет такого файла или каталога. Отказано в доступе (открытый ключ). потерянное соединение

может кто-нибудь пожалуйста, скажите мне, как исправить мои проблемы?

p. s. есть похожий пост: scp (безопасная копия) в экземпляр ec2 без пароля но это не ответ на мой вопрос.

222   12  

12 ответов:

попробуйте указать пользователя ec2-user, например,

scp -i myAmazonKey.pem phpMyAdmin-3.4.5-all-languages.tar.gz ec2-user@mec2-50-17-16-67.compute-1.amazonaws.com:~/.

посмотреть подключение к экземплярам Linux / UNIX с помощью SSH.

второй каталог является вашим целевым назначением, не используйте имя сервера там. Другими словами, вам не нужно указывать имя машины для машины, в которой вы находитесь в данный момент.

scp -i /path/to/your/.pemkey -r /copy/from/path user@server:/copy/to/path

-R, если это каталог.

ваш ключ не должен быть общедоступным для работы SSH. При необходимости используйте эту команду:

chmod 400 yourPublicKeyFile.pem

вы должны быть на вашей локальной машине, чтобы попробовать приведенную выше команду scp.

на локальном компьютере попробовать:

scp -i ~/Downloads/myAmazonKey.pem ~/Downloads/phpMyAdmin-3.4.5-all-languages.tar.gz  hk22@mec2-50-17-16-67.compute-1.amazonaws.com:~/.

У меня была точно такая же проблема, мое решение было

scp -i /path/pem -r /path/file/ ec2-user@public aws dns name: (оставить его пустым здесь)

Как только вы закончите эту часть, войдите в ssh-сервер и MV-файл в нужное место

вот подробности того, что работает на EC2 например:

scp -i /path/to/whatever.pem /users/me/path-to-file ec2-user@ec2-55-55-555-555.compute-1.amazonaws.com:~

несколько замечаний для начала:

  1. обратите внимание на пробелы между тремя параметрами, приведенными после -i
  2. scp расшифровывается как протокол безопасного копирования. Знание слов облегчает запоминание команды.
  3. -i диктует, что вам нужно дать .pem файл в качестве следующего параметра. Если нет -i, чем вам не нужно а .pem.
  4. Примечание :~ в конце назначения для экземпляра EC2.
scp -i ~/path to pem file/file.pem -r(for directory) /PATH OF LOCAL/localfile user@hostname:PATH OF SERVER/serverdirectory

Регистрация разрешения на .файл PEM...openssh обычно не любит читаемые в мире закрытые ключи и потерпит неудачу (iir, scp не делает большой работы по предоставлению этой обратной связи пользователю).

можете ли вы просто ssh с этим ключом к вашему хосту AWS?

сначала вы должны изменить режим .pem файл из режима чтения и записи в режим только для чтения. Это может быть сделано только с помощью одной команды в терминале sudo chmod 400 your_public_key.pem

Я попробовал все предложения, упомянутые выше, и ничего не получалось. Я завершил текущий экземпляр, запустил другой и повторил тот же самый точный процесс. На этот раз без проблем. Иногда это может быть ошибка удаленной АМИ.

процесс использования SCP для копирования файлов с локального компьютера на экземпляр AWS EC2 Linux рассматривается шаг за шагом (включая пункты, упомянутые ниже) в видео.

чтобы исправить эту конкретную проблему с помощью SCP:

  1. необходимо указать правильного пользователя Linux. От Амазонка:

    • для Amazon Linux имя пользователя-ec2-user.
    • для RHEL имя пользователя-ec2-user или корень.
    • для Ubuntu имя пользователя-ubuntu или root.
    • для Centos имя пользователя-centos.
    • для Fedora имя пользователя-ec2-user.
    • для SUSE имя пользователя-ec2-user или root.
    • в противном случае, если ec2-user и root не работают, обратитесь к поставщику AMI.
  2. ваш закрытый ключ не должен быть виден. Выполните следующую команду, чтобы только пользователь root мог прочитать файл.

    chmod 400 /path/to/yourKeyFile.pem
    

Я хотел бы использовать:

scp -i "path to .pem file" "file to be copeide from local machine" username@amazoninstance: 'destination folder to copy file on remote machine'

    Ничего не найдено.

Добавить ответ:
Отменить.