キーを使用してリモート サーバーにログインしましたが、scp を使用してファイルをアップロードできません

キーを使用してリモート サーバーにログインしましたが、scp を使用してファイルをアップロードできません

Ubuntuを初めて使用しましたが、秘密鍵と公開鍵のペアを生成して、所属機関のリモートサーバーにログインしました。管理者に公開鍵を送信した後、ユーザー名が設定されました。を使用してログインできるはずでしたssh myusername@servernameが、サーバー名をIPアドレスに置き換えないとログインできません。ssh [email protected]

今、ファイルをアップロードしたいので、次のことを試しました:

scp ~/myfile.rds myusername@servername:/home/myusername/

...するとPermission denied (publickey). lost connectionメッセージが表示されました。管理者は、servername を IP アドレスに置き換えて再試行することを提案しました。それは理にかなっていますが、それでも応答は同じです。

\\wsl$\Ubuntu\home\myUbuntuUsername\.ssh2 つのキーとともに保存されている私の設定ファイルは次のようになります。

Host servername
    HostName xxx.xx.x.xx
    Port 22
    User myusername
    IdentityFile ~/.ssh/id_ed25519

...~/.ssh/id_ed25519秘密鍵へのパスはどこにありますか。何が間違っているのでしょうか?

答え1

sshおよびコマンドでユーザー名を指定するscp必要はありません。値はすでに~/.ssh/configファイル内に存在するためです。代わりに、次のように実行できます。

ssh servername

それscpは同じです:

scp myfile.gz servername:/path/to/save

あるいは、使用するキー ファイルを渡すこともできます-i

scp -i ~/.ssh/id_ed25519 myfile.gz [email protected]:/path/to/save

関連情報