Назад | Перейти на главную страницу

Есть ли способ, которым пользователь со звездочкой в ​​качестве пароля в / etc / shadow, но с правильной оболочкой входа в / etc / passwd, сможет войти через SSH?

Предположим следующее. У нас есть сервер, доступный по SSH. Есть пользователь в /etc/passwd у кого есть действующая оболочка входа в систему (например, /bin/bash, вместо недопустимого типа /bin/false).

У этого пользователя есть звездочка (*) во втором поле (пароль) /etc/shadow. Есть ли способ, которым этот пользователь мог войти через SSH, если у него нет ключа ssh в его ~/.ssh/ папка?

Или, если несколько перефразировать вопрос: по какой причине многие онлайн-руководства рекомендуют отключать оболочку входа в систему, когда есть * в поле пароля /etc/shadow?

А * в месте хешированного пароля в /etc/shadow эффективно отключает все входы на основе паролей, так как никакие действия пользователя никогда не приведут к хэш-значению *. Но пользователь все еще может войти в систему со своими ключами ssh.

Разница в использовании * вместо восклицательного знака ! в том, что последнее указывает на заблокированная учетная запись в PAM, который, в зависимости от конфигурации sshd, также отключит вход на основе ключа.

Причина установки недопустимой оболочки - просто предотвратить работу интерактивных сеансов входа в систему (независимо от того, установлен ли пароль для учетной записи) и заблокировать sudo su - user и подобное из рабочих.