我正在尝试使用 scp 手动安装我的公钥

我正在尝试使用 scp 手动安装我的公钥

我正在遵循一个教程,进展顺利。我用ssh连接没问题。然后我创建了私钥和公钥。这引出了我的第一个问题,它说密钥已保存到

您的身份信息已保存在 /home/localuser/.ssh/id_dsa 中。

您的公钥已保存在/home/localuser/.ssh/id_dsa.pub 中。

但是当我查看该文件夹时,我没有看到.ssh文件夹。这样做是出于安全原因并且应该隐藏吗?

接下来,教程指示使用以下命令手动将公钥复制到远程计算机:

scp ~/.ssh/id_dsa.pub[电子邮件受保护]:.ssh/authorized_keys

当我运行该命令时,我收到此响应。

ssh:连接到主机 mywebpage.com 端口 22:连接被拒绝丢失连接

所以,就像我第一次通过 ssh 连接时所做的那样,我添加-p 2222在......的最后SCP命令。然后我得到这样的回应:

2222:没有这样的文件或目录

我也尝试过大写-P 2222

我究竟做错了什么?

PS 我正在使用 Linux Mint 15 和 Cinnamon

编辑

好的。工作-p 2222后立即添加ssh。但是我遇到了另一个问题。

然后它传输了文件。但是,在传输之前我必须自己创建目录。现在它应该询问我的密码而不是我的密码。它没有这样做,所以教程说要运行这些命令。chmod 700 ~/.ssh& chmod 600 ~/.ssh/authorized_keys.但当我登录时,它仍然要求我输入密码,而不是我的密码。

为什么它不起作用?

编辑:我运行ssh-v提到了以下内容public key

debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug1: Next authentication method: publickey
debug1: Offering DSA public key: /home/localusername/.ssh/id_dsa
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug1: Trying private key: /home/localusername/.ssh/id_rsa
debug1: Trying private key: /home/localusername/.ssh/id_ecdsa
debug1: Next authentication method: keyboard-interactive

我会注意到这是在登录之前。

答案1

-P 2222紧接scp在位置参数之前添加

scp -P 2222 ~/.ssh/id_dsa.pub [email protected]:.ssh/authorized_keys

答案2

但是当我查看该文件夹时,我没有看到 .ssh 文件夹。这样做是出于安全原因并且应该隐藏吗?

在 *nix 中,名称以 a 开头的目录和文件.通常默认对用户隐藏。您可以ls通过执行以下操作来查看它们ls -a

尝试将 放在-P 2222命令行上的文件之前。您必须使用大写 P,即-P— 小写p用于其他用途。看man scp

scp用于ssh安全地进行数据传输,这就是您需要指定 SSH 端口的原因(因为您在非标准端口上运行它)。

相关内容