SSH 和 SCP 给出错误

SSH 和 SCP 给出错误

我正在执行相同的步骤(在 openSSH 上无需输入密码即可执行 SSH 和 SCP)。但是在 scp 或“ssh -l”命令运行时,它不断要求输入密码。几天前我执行了同样的步骤,它运行正常,但现在却不起作用了。

我所做的是:

  1. 我有两台机器,本地和远程。
  2. 在两台机器上,我都以root用户身份登录putty。
  3. 在两台机器上,我检查了“ssh -V”,发现两台机器都有相同版本和相同产品。
  4. 在本地,我从 /root/.ssh 文件夹运行

ssh-keygen

我将密钥文件名命名为 appkey。5. 它在 /root/.ssh 中生成了 appkey,appkey.pub 6. 在远程,我复制了本地 appkey.pub 的内容并粘贴到远程 authorized_keys 文件的末尾。7. 在远程,我运行

chmod 755 ~/.ssh chmod 644 ~/.ssh/authorized_keys

  1. 在本地,我尝试运行 scp 和“ssh -l”命令,但它仍然要求输入密码。
  2. 我也尝试了其他方法,而不是添加 authorized_keys 文件,而是将 appkey.put 复制到 romote /root/.ssh 文件夹

答案1

您还需要检查您的主目录权限,以确保没有人可以对其进行写入。否则陌生人可以重命名您的 .ssh 并创建自己的 .ssh。我有这个初始 ssh 设置,这是我几年前创建的,它帮助了很多人:

#!/bin/csh -fx

chmod go-w ~
if (! -d ~/.ssh) then
   rm -rf ~/.ssh
   mkdir ~/.ssh
endif
chmod 700 ~/.ssh
cd ~/.ssh
touch authorized_keys
chmod 600 authorized_keys
rm -f id_rsa
# generate id_rsa and id_rsa.pub
ssh-keygen -t rsa -f id_rsa -P ""
cat id_rsa.pub >> authorized_keys
# for remote host:
# cat ~/.ssh/id_rsa.pub | ssh HOST 'cat >> ~/.ssh/authorized_keys'
# it is the same as:
# ssh-copy-id -i id_rsa.pub USER@HOST
# it will add mulptiple entries if called multiple times

我不是这方面的专家,只是在网上收集了一些内容。有些内容可能已经过时,但在我们的环境中仍然有效。

答案2

当您从本地服务器发出 ssh 命令时,您是否尝试指定要使用的精确密钥文件,如下所示?

ssh -i /root/.ssh/appkey -l remote_username remote_servername

否则,ssh 会假定您的私钥名称,正如您从以下 ssh 手册页摘录中所看到的那样。

 ...
 -i identity_file
     Selects a file from which the identity (private key) for RSA or
     DSA authentication is read.  The default is ~/.ssh/identity for
     protocol version 1, and ~/.ssh/id_rsa and ~/.ssh/id_dsa for pro-
     tocol version 2.  Identity files may also be specified on a per-
     host basis in the configuration file.  It is possible to have
     multiple -i options (and multiple identities specified in config-
     uration files).
  ...

答案3

Jackua,你解决了我的问题。通过这样做可以解决:

  1. 删除现有的.ssh(重命名为.ssh_bck)文件夹。
  2. 我执行了与您提到的相同的步骤。
  3. 我用了 ssh-copy-id -i id_rsa.pub USER@HOST
  4. 使用命令“ssh ‘USER@HOST’”确认不要求输入密码。
  5. 运行 cat .ssh/authorized_keys 以验证文件中是否存在多个实体或单个实体。

相关内容