Что подразумевается под & ldquo; пароль не задан & rdquo; для учетной записи root (и других)?

Несколько лет назад мы привыкли переходить на учетную запись root с помощью команды su. Сначала мы переключились на учетную запись root, а затем выполнили эти команды root. Теперь мы более привыкли к использованию команды sudo.

Но мы знаем, что есть учетная запись root. Мы можем легко найти домашний каталог пользователя root.

$ ls -ld /root/
drwx------ 18 root root 4096 Oct 22 17:21 /root/

Теперь я хочу сказать, что «пароль root в Ubuntu не установлен». Пожалуйста, смотрите ответы на на этот вопрос . Большинство ответов имеют что-то об этом в первом параграфе. В одном или двух ответах далее утверждается, что «учетная запись оставлена ​​отключенной».

Теперь мои (основные) вопросы:

  1. Что подразумевается под неустановленным паролем? Это пусто? Это ноль? Или что-то еще более загадочное?
  2. Как учетная запись становится активной после того, как я установил для нее пароль? (sudo password root)

Чтобы лучше понять, я проверил файл /etc/shadow. Поскольку я уже установил пароль для учетной записи root, я больше не могу видеть, что там (зашифрованный пароль). Итак, я создал другую учетную запись и оставил ее отключенной. Соответствующая запись в файле /etc/shadow:

testpassword:!:16020:0:99999:7:::

Теперь, возможно, мои вышеуказанные запросы необходимо изменить на то, что означает поле ! в поле пароля? Другие зашифрованные пароли - это очень длинные загадочные строки. Почему эта зашифрованная форма имеет длину всего один символ? И станет ли учетная запись отключенной, если я введу ! в поле (зашифрованное) пароля?

3
задан 13 April 2017 в 15:24

2 ответа

Что означает неустановленный пароль? Это пусто? Это ноль? Или что-то еще более загадочное?

Просто не существует. Корневая учетная запись по умолчанию отключена, поэтому для нее не требуется пароль. Итак, наиболее похожим является undefined (в JavaScript) или (null) (другие языки). Это просто не установлено.

Как учетная запись становится активной после того, как я установил для нее пароль?

На самом деле, установка пароля является лишь частью его, но не активирует учетную запись. Вам необходимо активировать учетную запись с помощью:

sudo usermod -U root

, а затем установить пароль с помощью passwd.

что означает ! в поле пароля?

Извлечено из man shadow:

Поле пароля, которое начинается с восклицательного знака означает, что пароль заблокирован. Остальные символы в строке представляют поле пароля до того, как пароль был заблокирован.

Это может означать, что аккаунт заблокирован. Но также:

Если поле пароля содержит некоторую строку, которая не является допустимым результатом crypt (3), , например, ! или * , пользователь не сможет использовать пароль Unix для входа в систему (но пользователь может войти в систему другими способами).

В любом случае, любая учетная запись с ! не может войти в систему с приложениями, которые используют теневой файл.

Почему эта зашифрованная форма имеет длину всего один символ?

Не зашифрована. Смотри выше.

И станет ли учетная запись отключенной, если я поставлю! в поле (зашифрованного) пароля?

См. также выше.

0
ответ дан 13 April 2017 в 15:24

Я узнаю об этом, и это новая тема для меня. Из того, что я понимаю, учетная запись существует, но не включена, поэтому попытка использовать ее просто продолжает отвечать, что учетные данные неверны. Похоже, что злоумышленникам будет сложнее понять, почему они не могут взломать пароль. Если он уже установлен, я настоятельно рекомендую вам отменить его с помощью:

    sudo passwd -dl root

и узнать больше об этом перейдите по ссылке:

https://help.ubuntu.com/community/RootSudo
0
ответ дан 13 April 2017 в 15:24

Другие вопросы по тегам:

Похожие вопросы: