Как проверить правильность имени пользователя на сервере ssh
Как я могу проверить, существует ли имя пользователя по адресу ssh-сервера, используя инструменты командной строки? Например, я хотел бы напечатать,
isvaliduser [username] [ssh_server]
result: True
где isvaliduser
некоторая магическая функция, которая проверяет, является ли пользователь с именем username
существует в ssh_server
, Но возможно ли это?
Мое конкретное приложение: удаленный сервер, к которому мне нужно получить доступ, имеет динамический IP-адрес (я не могу использовать службу динамического DNS). Я могу составить список адресов серверов, содержащих мой целевой адрес, но мне нужен способ выяснить, какой из них мой. Я думал, что один из способов сделать это будет проверить, есть ли у пользователя адрес пользователя myusername
, Но если у вас есть другое предложение для решения моей конкретной проблемы, я был бы рад услышать это.
1 ответ
Вы должны подключиться к этому серверу и проверить, находится ли пользователь в passwd
например:
ssh your_account_at_serve@[ssh_server] grep [username] /etc/passwd
Если вы сможете перечислять пользователей без аутентификации, это считается раскрытием информации и угрозой безопасности.