web-dev-qa-db-ja.com

scpを使用してファイルをAmazon ec2インスタンスに転送すると、常に許可が拒否されます(publickey、gssapi-with-mic)

ファイルをec2インスタンスに転送しようとしています。私はAmazonのドキュメントに従いました。これは私のコマンドのようです。

scp -i [the key's location] Documents/[the file's location] ec2-user@[public dns]:[home/[destination]]

すべての変数を適切なものに置き換えました。正しいキーであり、許可が400であると確信しています。コマンドを呼び出すと、RSAキーフィンガープリントが通知され、接続を続行するかどうかを尋ねられます。 「はい」と入力すると応答します

Permission denied (publickey,gssapi-with-mic)
lost connection

スタックオーバーフローに関する他の同様の質問の多くを見てきましたが、正しい方法を見つけることができません。

また、sshトラフィックはポート22で有効になっています。

25
Amre

Amazonが提供する例は正しいです。フォルダーのアクセス許可の問題のようです。コピー先のフォルダーを別のユーザーまたは別のユーザーが作成した場合、そのフォルダーにコピーまたは編集する権限がない可能性があります。

Sudoの能力がある場合は、自分でアクセスを開いてみてください。このままにしておくことはお勧めしませんが、次のコマンドを試すことができます。

Sudo chmod 777 /folderlocation

これにより、すべてのユーザーに完全な読み取り/書き込み/実行の許可が与えられます(したがって、777のままにしないでください)が、scpコマンドをテストして許可を除外する機会が与えられます。

その後、アクセス権に慣れていない場合は、それを読んでみることをお勧めします。これは一例です: http://www.tuxfiles.org/linuxhelp/filepermissions.html 保持されている情報の種類に応じて、できる限りフォルダをロックダウンすることをお勧めします。

それが原因ではない場合、他に確認したいことがあります。

  • 「scp -i keyname」コマンドを実行するときにキーのディレクトリにいますか?
  • 転送元のフォルダを使用する権限がありますか?

幸運を祈ります。

20
brettwmc

問題はユーザー名である可能性があります。ファイルをAmazonインスタンスにコピーし、最初にコマンドを使用しようとしました。

scp -r -i ../.ssh/Amazon_server_key_pair.pem ./empty.test [email protected]:~

エラー:許可が拒否されました(公開キー)。

次に、インスタンスがUbuntu環境であり、ユーザーユーザーが「ubuntu」であることに気付きました。

scp -r -i ../.ssh/Amazon_server_key_pair.pem ./empty.test [email protected]:~

ファイル「empty.test」は、テキスト「testing ...」を含むテキストファイルです。仮想サーバーのアドレスを、インスタンスのパブリックDNSの正しいアドレスに置き換えます。インスタンスのIPをxx.yy.zz.ttに置き換えました。

8
Lars Silen

Sshで端末にubuntu @が表示されていたときに、端末に表示される名前に変更してみてください。ec2-user@ではなく、ubuntu @を使用しなければなりません

また、コンピューターにpemファイルのアクセス許可を設定する必要があります

chmod 400 /path/my-key-pair.pem

以下のコードは、コンピューターからEc2インスタンスにファイルをコピーします。

scp -i ~/location_of_your_ec2_key_pair.pem ~/location_of_transfer_file/sample.txt ubuntu@ec2_your_ec2_instance.compute.amazonaws.com:~/folder_to_which_it_needs_to_be_copied

以下のコードは、Ec2インスタンスからコンピューターにファイルをコピーします

scp -i ~/location_of_your_ec2_key_pair.pem   ubuntu@ec2_your_ec2_instance.compute.amazonaws.com:~/location_of_transfer_file/sample.txt ~/folder_to_which_it_needs_to_be_copied
3
Shinto Joseph

間違ったユーザー名を使用している可能性があります。偶然にも、同じエラーメッセージ->許可が拒否されました(publickey、gssapi-keyex、gssapi-with-mic)。接続が切れました

0
Aleks Tkachenko

私は同じ問題に直面していました。これがあなたのために働くことを願っています。

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

この作業を行うには、許可も正しい必要があります。

0
Chandraprakash