14

Sometimes when I try to ssh to a server, I get the following message:

You don't exist, go away!

I haven't seen this before using ssh. What does this mean? Is there a problem with ssh or something else? Additional info:

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

The server is a SUSE Linux. I run the ssh command in a loop 10 times, and only 1 or 2 of the tries result in the Go away message.

  • 5
    Please try searching before asking questions. This is a standard error message and a 5 minute search should tell you what it means. Also, qhen asking Qs, remember to include your OS, the OS of the machine you are connecting to, the output of ssh -vv etc etc. – terdon Feb 6 '14 at 15:57
  • 2
    OK, in that case mention it, tell us the OSs in question, tell us what you've ruled out, show us the output of ssh -vv, explain why you think your problem is not related to /etc/password (hint: it probably is, the error is complaining about a user who doesn't exist right?). How are you authenticating to the machine? Is there a centralized authentication server? What options if any are you passing to ssh? Give us something to work with! – terdon Feb 6 '14 at 16:05
  • 1
    I tend to agree with Joel about simple questions and this question made me feel interested. However, @coffeMug, if you have a problem, please describe it clearly (and document what you have tried in order to solve it). – phunehehe Feb 6 '14 at 16:09
  • 1
    @terdon I provided some more info. – coffeMug Feb 6 '14 at 16:14
  • 1
    " I run the ssh command in a loop for 10 times and only 1 or 2 of the tries result in the Go away message." That's exactly the kind of thing you need to mention, it kinda changes everything :). – terdon Feb 6 '14 at 16:16
21

The error message is probably coming from ssh on your own machine. Source

This happens if ssh can't find your username in the passwd database.

You can try running getent passwd $USERNAME multiple times and seeing if that fails.

Depending on how passwd lookup is configured, try one of these:

  • Ensure your username appears in /etc/passwd
  • Ensure that sssd or nscd is running properly, if appropriate
  • Ensure that your connection to the account server, e.g. NIS, LDAP, etc. is working
  • Check the system log files on your computer (/var/log/messages, /var/log/syslog, etc.)

If you post the output of grep '^passwd' /etc/nsswitch.conf, along with any interesting parts of ssh -vv output and system logs, people can probably help more.

  • This seems to be the correct explanation of the problem. :-) – coffeMug Feb 6 '14 at 16:31
  • 1
    This can commonly happen if you are authenticating via an LDAP server and the Polkit policies (or similar) don't correctly add you into any local groups. SSH and other core system tools only look at /etc/passwd and don't understand PAM/etc without help, or sometimes at all. – dragon788 Oct 13 '17 at 1:35
4

If you change an account's UID, any existing shell will have this sort of identity crisis. Check by comparing UID from output of "id" and do a grep $(whoami) /etc/passwd. if changing UID, be sure to check for any crontab entries for the user!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.