Я хочу назначить 2 пароля для одной учетной записи. Я хочу знать, 1) возможно ли это и 2) каковы последствия этого для безопасности?
Причина, по которой я хочу это сделать, заключается в том, что в настоящее время я занят местным тестированием, и я подумал, что это будет удобно в некоторых конкретных ситуациях. После некоторых исследований я нашел что-то под названием PAM , но я изо всех сил пытаюсь найти информацию о том, как работает установка / настройка.
Я использую Ubuntu 12.04.
sudo
чтобы user1 мог запускать команды от имени user2. (sudo
не только для запуска команд от имени пользователя root; он может запускать команды от имени любого пользователя.)Ответы:
Да, хотя это довольно редко, это определенно выполнимо.
Вместо того чтобы пытаться реализовать его самостоятельно, так как
/etc/password
/etc/shadow
метод аутентификации на основе по умолчанию не предусматривает такой конфигурации, более простой способ - делегировать аутентификацию бэкэнду, который уже поддерживает несколько паролей для пользователя.Хорошо известно , один LDAP , который
userPassword
атрибут многозначный в соответствии с RFC4519 :Примером необходимости нескольких значений в атрибуте «userPassword» является среда, в которой каждый месяц пользователь должен использовать другой пароль, генерируемый какой-либо автоматизированной системой. В течение переходных периодов, таких как последний и первый день периодов, может потребоваться, чтобы в системе действовали два пароля для двух последовательных периодов.
Несмотря на этот RFC, вам, вероятно, потребуется изменить конфигурацию политики паролей в большинстве реализаций сервера каталогов, чтобы этот параметр был фактически принят.
На стороне Linux ничто не запрещает это делать (здесь имя учетной записи
testuser
было задано какpass1
и вpass2
качествеuserPassword
значения атрибута):Вот некоторые технические и связанные с безопасностью последствия такой конфигурации:
источник
Я просто попытался создать 2 записи для пользователя в
/etc/shadow
файле, и это не сработало. Какая когда-либо запись была первой - это была введенная пароль.пример
Создан тестовый пользователь.
Установите пароль на «super123»:
Вручную отредактируйте
/etc/shadow
файл и сделайте вторую запись:Затем попытайтесь войти с учетной записью, используя 2 пароля.
Первая запись в
/etc/shadow
том, что используется get, запись во второй позиции никогда не работает, если вы переверните это так:Тогда второй пароль работает, а первый нет.
Используйте sudo
Этот подход является полным взломом, я бы просто использовал
sudo
, это частично, почемуsudo
существует.Вы можете добавить эту запись в ваш файл sudoers (
/etc/sudoers
), который позволит пользователю joe делать что-либо от вас:источник
sudo
можно сделать это. +1Если вы можете сделать это, вы, вероятно, не должны.
Конфигурация PAM несколько сложна, и в механизмах аутентификации есть одна истина: существует ограниченный набор правильных конфигураций, но бесконечный набор небезопасных конфигураций. Это делает почти уверенность в том, что если вы попытаетесь что-то изменить и не будете точно знать, что делаете, вы все испортите.
Если выбор между безопасностью и «удобством в некоторых конкретных ситуациях», выберите первый.
источник
Вы можете установить два разных имени пользователя, каждое со своим паролем, для одной и той же учетной записи. Запустите
vipw
редактирование/etc/passwd
вручную, продублируйте существующую строку для интересующей вас учетной записи и измените имя пользователя (а также, если вам нравится поле Gecos , домашний каталог и оболочка). Запуститеvipw -s
и продублируйте строку для этого пользователя в/etc/shadow
. Войдите под новым именем пользователя и запустите,passwd
чтобы изменить пароль для нового имени пользователя. Теперь у вас есть два разных имени пользователя с разными паролями для одной и той же учетной записи (идентификатор пользователя определяет учетную запись).Это, вероятно, не очень хорошая идея. В зависимости от того, что вы пытаетесь сделать, другие подходы могут быть более подходящими:
Создайте другую учетную запись и дайте первой учетной записи право запускать команды с учетной записью sudo:
источник