所以我需要连接到远程服务器。远程服务器运行的是 Debian,而我使用的是 Ubuntu Lucid —— 并且是 SSH 新手。
我需要一个公钥来连接远程服务器。该密钥已创建为 PuTTY Pageant 文件 (.ppk)。我曾经将putty-tools
.ppk 密钥转换为 Linux 文件(即id_rsa和id_rsa.pub)。SSH 工作正常,但当我尝试 SCP 文件终端时显示:
# scp -P 52 /path/to/local/file [email protected]:/path/to/remote/file
Permission denied (publickey).
lost connection
此外,使用 SFTP 和 FileZilla 也无法工作:
Command: Trust new Hostkey: Once
Error: Could not connect to server
为什么它能与 SSH 一起工作,而不能与 SCP 一起工作?谢谢!
编辑:现在可以正常工作了!不太清楚为什么... 密码系统如何与 SSH 配合使用?它是否将密码保存在终端的内存中?这次我在一个终端选项卡中连接到 SSH。系统提示我输入密码,输入后即可进入。然后在另一个终端选项卡上,我尝试 scp 一个文件,系统要求我输入密码,然后成功了!......
答案1
在id_rsa
?~/.ssh
这是ssh
查找scp
私钥的地方。
此外,如果您使用私钥,则不应提示您输入密码,这表明该密码未被使用,并且不需要该密码。
我也很困惑,如果两个系统都是 Linux,为什么要使用 putty。
答案2
根据 Mikel 的建议(谢谢!),我使用 -v 选项运行,并收到一个令人不快的提醒,提示我正试图以 root 身份运行 scp。我真傻,我已经在非 root 用户的主目录中设置了所有共享密钥凭据。
经过严厉的惩罚,然后进入 /root/.ssh 并从 /home//.ssh 复制三个文件后,我的努力取得了成功。
朱庇特商业银行