Мне нужно ssh к localhost, используя учетную запись root, по ssh root@localhost
. Когда он запрашивает пароли, я не могу войти со всеми возможными паролями. При настройке машины localhost обычный пользователь xxx
и пользователь root используют один и тот же пароль (пароль, который работает для sudo -s
), но он не работает для ssh root@localhost
. Так, где смотреть на пароль для ssh root@localhost
PS: с паролем я могу войти в обычную учетную запись на ssh xxx@localhost
.
PPS: чтобы ответить на дополнительные вопросы о мотивации этого, localhost
- это просто компьютер в частной сети, а настройка ssh root@localhost
- просто для облегчения ручного управления в системе-прототипе.
Войдите в систему как обычный пользователь и используйте sudo -i
для перехода в корневую оболочку.
Вы не должны использовать учетную запись root или менять пароль в этом случае.
ssh root@localhost
использует тот же пароль для root. Похоже, вы не установили пароль root. Чтобы сделать это, войдите в систему как root с помощью sudo -s
, а затем используйте команду passwd
для установки пароля root.
После этого вы должны иметь возможность ssh от имени root
Пользователь root не включен и не может выполнить вход, вы можете видеть, что при этом:
sudo grep root /etc/shadow
поле, которое обычно содержит зашифрованный пароль, заполняется !
.
Если вы прочитаете man-страницу shadow (5) , вы получите это
Если поле пароля содержит некоторую строку, которая не является допустимым результатом crypt (3), например ! или * пользователь не сможет использовать пароль Unix для входа в систему (но пользователь может войти в систему другими способами).
blockquote>Вы не должны включать пользователя root по соображениям безопасности.
Если Вы решаете использовать корневую учетную запись.
Отключите способность войти в систему по ssh с корнем, если ssh выставляется Интернету. Вместо этого войдите в систему как пользователь, и su
базироваться.
Это удостоверится, что предотвратило атаки перебором против Вашего компьютера. Начиная с тяжелее для предположения и пользователя и пароля. При знании имени пользователя можно было бы только иметь к грубой силе пароль
изменение строки:
PermitRootLogin yes
под /etc/ssh/sshd_config
кому:
PermitRootLogin no
и выполненный:
service sshd restart
перезагружать конфигурацию.
установить пароль пользователя root с помощью следующей команды
sudo passwd
Они ответили на ваш вопрос о входе в систему через ssh, не являясь суперпользователем (скажем, goblin@192.168.0.3 -p 22
).
Сначала создайте другой аккаунт без su
привилегий. После того, как вы войдете в ssh как не суперпользователь, вы можете ввести эту команду, чтобы переключиться на root (повысить свои права):
su
и ввести пароль.