Unix 身份验证无法使用 Unix 密钥文件为一个用户工作,但为其他用户工作

Unix 身份验证无法使用 Unix 密钥文件为一个用户工作,但为其他用户工作

我的操作系统详细信息:

  • 名称=“Oracle Linux 服务器”
  • 版本=“7.4”
  • ID=“ol”
  • VERSION_ID =“7.4”
  • PRETTY_NAME="Oracle Linux 服务器 7.4"

我正在尝试为其中一个定义的用户创建一个 Unix 密钥文件。但它不起作用;正在提示密码。我这样做的方式与我们在同一台计算机上为另一用户创建文件的方式相同,但该文件正在工作。

sftp -i /home/oracledi/.ssh/username1key [email protected]  — 不工作

sftp -i /home/oracledi/.ssh/username2key [email protected]  - 在职的

这可能是什么原因?

我该如何调试这个?

我正在使用的命令是:

ssh-keygen -t rsa

我是 Unix 世界的新手;任何帮助,将不胜感激。

答案1

您可以通过检查文件/var/log/messages,来调试它/var/log/secure。当您登录(在您的计算机和主机上)时,查看这些文件中写入的内容。

我还建议您检查文件权限。这是我的一位主机的示例,.ssh目录中文件的权限应该如何。类型

ls -al ~/.ssh/

查看文件及其权限和所有权。它们应该由用户拥有,并且有些只能由用户写入。

-rw------- 1 user user   407 sep 30  2016 authorized_keys
-rw------- 1 user user  1675 mar 15  2013 id_rsa
-rw-r--r-- 1 user user   405 mar 15  2013 id_rsa.pub
-rw-r--r-- 1 user user 70884 feb 14 08:08 known_hosts

相关内容