ssh说:您不存在,走开!


14

有时,当我尝试连接ssh到服务器时,会收到以下消息:

You don't exist, go away!

在使用之前,我还没有看到它ssh。这是什么意思?ssh或其他问题吗?附加信息:

ssh -q -i private_key root@192.168.0.11 "command" 

该服务器是SUSE Linux。我ssh在循环中运行该命令10次,只有1或2次尝试会导致“消失”消息。


5
在提出问题之前,请尝试搜索。这是标准错误消息,搜索5分钟即可告诉您它的意思。同样,问Q时,请记住包括您的操作系统,要连接的计算机的操作系统,输出ssh -vv
。– terdon

2
好,在这种情况下,请提及它,告诉我们有问题的操作系统,告诉我们您排除的内容,向我们显示输出ssh -vv,解释您为什么认为您的问题与无关/etc/password(提示:可能是,错误是抱怨一个不存在的用户吧?)。您如何对机器进行身份验证?是否有集中式身份验证服务器?您要传递给什么选择ssh?给我们一些可以合作的东西!
terdon

1
对于简单的问题,我倾向于同意乔尔的观点,这个问题使我感到很感兴趣。但是,@ coffeMug,如果您有问题,请清楚地描述(并记录您为解决问题所尝试的步骤)。
phunehehe 2014年

1
@terdon我提供了更多信息。
coffeMug ​​2014年

1
“我在一个循环中运行ssh命令10次,只有1或2次尝试会导致“消失”消息。那正是您需要提及的事情,它改变了所有的内容:)。
terdon

Answers:


21

该错误信息可能来自ssh您自己的计算机。 资源

如果sshpasswd数据库中找不到您的用户名,则会发生这种情况。

您可以尝试getent passwd $USERNAME多次运行,看看是否失败。

根据passwd查询的配置方式,尝试以下方法之一:

  • 确保您的用户名出现在 /etc/passwd
  • 确保sssdnscd运行正常(如果适用)
  • 确保您与帐户服务器(例如NIS,LDAP等)的连接正常
  • 检查您的计算机上的系统日志文件(/var/log/messages/var/log/syslog,等)

如果发布的输出grep '^passwd' /etc/nsswitch.conf以及ssh -vv输出和系统日志的任何有趣部分,人们可能会提供更多帮助。


这似乎是问题的正确解释。:-)
coffeMug

1
如果您通过LDAP服务器进行身份验证并且Polkit策略(或类似策略)未正确将您添加到任何本地组中,则通常会发生这种情况。SSH和其他核心系统工具仅查看/ etc / passwd,并且在没有帮助的情况下甚至有时根本不了解PAM / etc。
Dragon788

4

如果更改帐户的UID,则任何现有的外壳程序都将发生这种身份危机。通过比较来自“ id”输出的UID进行检查,并执行grep $(whoami) /etc/passwd。如果更改UID,请确保检查用户的所有crontab条目!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.