Почему удаленный сервер через ssh запрашивает пароль, даже если я заблокировал пользователя?

Я создал сервер Ubuntu в VirtualBox и создал дополнительного пользователя. Чем запер это с passwd -l user. Затем, когда я пытаюсь установить ssh для этого пользователя, он продолжает запрашивать пароль, но даже если я ввожу пароль, который был там до блокировки, оказывается, что он недействителен. Я новичок в Ubuntu, поэтому я немного запутался здесь.

1
задан 06.05.2020, 19:55

2 ответа

Ну, в конце концов, я выяснил источник проблемы. На самом деле у меня было все испорченное разрешение, потому что я создал .ssh / authorized_keys из sudo и chmod 700 sat разрешения на чтение и изменение разрешений только для суперпользователя ...
Также мне нужно было на хосте ssh добавить его в list_of_known_hosts

0
ответ дан 06.05.2020, 19:55

Заблокированный пароль не означает, что система не будет запрашивать пароль. Будет запрошен пароль, но невозможно дать правильный пароль и логин. Вот как это работает. Если вы разблокируете пароль, старый пароль будет сброшен.

Из man passwd:

   -l, --lock
       Lock the password of the named account. This option disables a password by changing it to a value which matches no possible encrypted value (it
       adds a ´!´ at the beginning of the password).

       Note that this does not disable the account. The user may still be able to login using another authentication token (e.g. an SSH key). To
       disable the account, administrators should use usermod --expiredate 1 (this set the account's expire date to Jan 2, 1970).

   -u, --unlock
       Unlock the password of the named account. This option re-enables a password by changing the password back to its previous value (to the value
       before using the -l option).

Я не уверен, что когда руководство говорит, что добавляет ! в начале пароля правильно, я думаю, что это добавляет, что ! до начала хешированного значения в /etc/shadow. Пожалуйста, поправьте меня, если я ошибаюсь.

3
ответ дан 06.05.2020, 19:56
  • 1
    Ну, я планирую сделать основанную на ключе аутентификацию. Я добавил открытый ключ хост-машины пользователю .ssh/authorized_keys, таким образом, я думал, что это будет достаточно для ssh. Я должен добавить некоторую опцию войти в систему только с моим открытым ключом, таким образом, это wouldn' t просят пароль? – markbaldy 06.05.2020, 19:57
  • 2
    @DemoZluk хорошо. Проверьте ответы здесь . Те должны сделать то, что Вы хотите. В противном случае сообщите. – Magnilex 06.05.2020, 19:57
  • 3
    Таким образом для входа в систему как заблокированный пользователь по ssh я должен разблокировать его, вход в систему через ssh обычно, и затем заблокировать его снова? Или существует обходное решение? – shlgug 06.05.2020, 19:57
  • 4
    @DemoZluk, Если Вы хотите использовать основанную на пароле аутентификацию в ssh и " login" технически необходимо сделать это, да. Но поскольку в руководстве говорится, можно использовать, например, основанная на ключе аутентификация в ssh, и затем это не нужно для имения разблокированной учетной записи. (как основанная на ключе аутентификация doesn' t заботятся о пароле учетной записи, примерно ключ.) Можно также переключиться на ту учетную запись пользователя с sudo su USERNAME при необходимости в таком решении. – Izzno 06.05.2020, 19:58
  • 5
    @DemoZluk, Если Вы говорите то, чего Вы хотите достигнуть, я могу указать на Вас в направлении. Но теперь I' m немного перепутанный на том, что является Вами пытающийся достигнуть.:) – andy4thehuynh 06.05.2020, 19:58

Теги

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