Когда вы запускаете ssh без аргумента login_name, он автоматически использует ваше локальное имя пользователя в качестве имени login_name. например:
cogan@localhost$ ssh myserver
cogan@myserver's password:
Есть ли способ заставить ssh запросить логин?
Так
ssh
как не имеет опции для принудительного ввода имени пользователя; Вы можете создать следующий скрипт в вашем~/bin
каталоге и назвать егоssh
:Затем сделайте скрипт исполняемым:
Убедитесь, что
$HOME/bin
в вашемPATH
(положитьexport PATH=$HOME/bin:$PATH
в вашем~/.bashrc
или/etc/bashrc
иsource ~/.bashrc
илиsource /etc/bashrc
).Затем запустите его так, как вы бы
ssh
:источник
Я так не думаю - если бы это было, это было бы через .sshconfig
http://linux.die.net/man/5/ssh_config
Вы можете попробовать настроить User на что-то незаконное, чтобы посмотреть, что он делает.
источник
[ 12:56 Jonathan@MacBookPro ~ ]$ ssh /dev/null@somehost
самом деле работает ..:/dev/null@somehost's password:
->Permission denied, please try again.
. Конечно, в хостах/var/log/secure
это показываетsshd[21936]: pam_sepermit(sshd:auth): Cannot determine the user's name
иsshd[21936]: pam_succeed_if(sshd:auth): error retrieving information about user
.Это адаптация ответа @ meh.
В сценарии оболочки мы запрашиваем имя пользователя.
Мы передаем имя пользователя при последующем обращении к ssh.
Следующие работает
uptime
наcontosso.com
:Вот пример вывода:
источник
У меня была такая же проблема. Я использовал cmd
И он сразу же запрашивал пароль для пользователя, которого не было (Имя моего компьютера).
действительно простое исправление, просто используйте эту команду:
Вы можете заменить root любым именем пользователя. Это заставит сервер запросить у вас пароль к желаемому имени пользователя.
источник