Не вдається розблокувати обліковий запис користувача Linux


14

У мене є вікно Linux (OpenSuSE 11.3) із заблокованим обліковим записом користувача. Я ввійшов як кореневий обліковий запис, щоб розблокувати його passwd -u <user>, але отримую повідомлення'Cannot unlock the password for <user>!'

Я спробував змінити пароль на щось нове через passwd, але намагаючись увійти за допомогою цього нового пароля, все ще дає «акаунт заблокований через повідомлення про помилку x невдало.

passwd -Sнадає прапори статусу "PS" для облікового запису. Я не розпізнаю "S", але в будь-якому випадку він не відображає ні "L" (заблоковано), ні "NP" (немає пароля). /etc/shadowне містить жодних дивних символів, як !у передній частині рядка для цього облікового запису. Якщо дивитися на це в застосуванні для управління цим дистрибутивом (YaST), видно, що він не заблокований (кнопка "вимкнути обліковий запис" знімається).

Де ще мені потрібно перевірити, як і чому цей обліковий запис відмовляється від розблокування / входу?


Який розподіл та версія?
випис

Ця машина - OpenSuSE 11.3
затор

Відповіді:


18

У мене це питання було сьогодні. Це було виправленням.

pam_tally --user = - відновити

Приклад

pam_tally --user=cyberninja --reset

Я сподіваюся, що це комусь допоможе.


Я знайшов цю публікацію, шукаючи відповіді на це точне запитання. У мене була така ж помилка, але на сервері SLES 11 SP2. Мій колега скинув пароль і спробував розблокувати мій рахунок за допомогою команди passwd -u. Один з моїх інших колег сказав, що мені потрібно чіткий рахунок в PAM, і дав мені команду. Який я розмістив вище.


Оновлення,

Зараз у мене є виправлення, яке запобігає тому, щоб це не повторилося. Схоже, є два файли PAM, які там, де конфлікт. Ці файли є; /etc/pam.d/loginі /etc/pam.d/sshd. Обидва файли мають цей рядок.

потрібен auth pam_tally.so onerr = fail deny = 3

Ви повинні заповнити цей рядок із одного з перелічених вище файлів. Ми прокоментували рядок у /etc/pam.d/sshdфайлі.

Після цього ви більше ніколи не матимете цього питання.


Ласкаво просимо до SU. Спробуйте пояснити трохи більше про те, як ви отримали свою проблему, а також трохи більше про свою відповідь, якщо зможете.
Sickest

Добре Sickest, я оновлю свою посаду.
Cyberninja

Працював і на моєму сервері RHEL6. команда була "pam_tally2", однак.
SidJ

Перевірте конфігурацію PAM! У моєму PAM він використовував файл /var/log/failllog, але pam_tally2команда за замовчуванням використовує /var/log/tallylog, так що повідомив користувача як не заблокований. Можна використовувати pam_tally2 --file /var/log/faillog.
Marki555

8

Я зіткнувся з тією ж проблемою сьогодні з одним обліковим записом користувача на сервері, на якому працює SUSE Linux Enterprise Server 11 SP2, навіть після скидання пароля та зміни віку на 0 (chage -d 0 userID)

[me@mordor ~]$ ssh frodo@mordor

Welcome to SUSE Linux Enterprise Server 11 SP2  (x86_64) - Kernel \r (\l).


Account locked due to 29 failed logins
Password:
Account locked due to 30 failed logins
Password:

З тим самим есценаріо, який описав @Jam у своєму початковому дописі. Нічого, що відображає обліковий запис, заблокований ні в "/ etc / passwd", ні в "/ etc / shadow". Такі команди, як "passwd -S -a | grep frodo" показали, що ідентифікатор не був заблокований (LK)

me@mordor:~> sudo passwd -S -a | grep frodo
frodo PS 01/01/1970 1 90 7 180

Також " pam_tally2 " показують, що ідентифікатор НЕ заблокований:

me@mordor:~> sudo /sbin/pam_tally2 --user frodo
Login           Failures Latest failure     From
frodo             0

Але проблема була насправді з " pam_tally "

me@mordor:~> sudo /sbin/pam_tally --user frodo
User frodo    (500)   has 32

Після розблокування пароля userID я зміг увійти з новими обліковими записами та уникнути повідомлення про помилку.

me@mordor:~> sudo /sbin/pam_tally --user frodo --reset
User frodo    (500)   had 32
me@mordor:~> sudo /sbin/pam_tally --user frodo
User frodo    (500)   has 0

Сподіваюсь, це допоможе комусь іншому уникнути зламання його голови, як я це робив за останню годину чи так ... Тож, щоб зробити короткий короткий опис, пам’ятайте, щоб перевірити і « pam_tally », і « pam_tally2 », коли обліковий запис заблоковано в SuSE !!

З повагою, Ернан.


Велике спасибі :) Яка різниця між pam_tally та pam_tally2?
mwfearnley

1
Перевірте конфігурацію PAM! У моєму PAM він використовував файл /var/log/failllog, але pam_tally2команда за замовчуванням використовує /var/log/tallylog, так що помилково повідомив користувача як не заблокований. Можна використовувати pam_tally2 --file /var/log/faillog.
Marki555

3

Ви можете ввести:

pam_tally2 -r -u user_name

щоб розблокувати обліковий запис.


1

Спробуйте

usermod --expire 9999

щоб відключити бездіяльність для облікового запису (це встановлює дату закінчення терміну дії 1.01.999). passwd -uпрацює лише в тому випадку, якщо пароль "заблокований", але не для вимкнених облікових записів.


Я бачу, тож є різниця між тим, що пароль заблокований / вимкнено, а обліковий запис заблоковано / вимкнено? Повідомлення про невдалий вхід мене ввело в оману. Чи вплине цей метод на дату закінчення терміну дії пароля, або "термін дії рахунку" є окремою справою?
варення

Я спробував це, і тепер, коли я намагаюся увійти в нього, просто сказано, що "вхід не вдався", хоча я точно отримую правильний пароль (після 1 відмови я змінив його, щоб бути на 100% впевненим у цьому). Будь-які пропозиції? S:
варення

Це змінить термін дії облікового запису, який є окремим від терміну дії пароля. Тому облікові записи можуть бути активними або закінчитися, термін дії паролів може бути активним, заблокованим або закінчився, і його можна автоматично закінчити після закінчення терміну дії пароля. Який вихід passwd --status <username>? Було б корисно, якщо ви можете додати це до свого питання.
Дарт Android

Версія passwdцього дистрибутива не приймає --statusяк опцію, але passwd -S <user>("показати атрибути пароля") дає: <user> PS <date> <password expiry options>де дата - дата, коли я востаннє змінив пароль (вчора), а параметри закінчення терміну дії пароля - min age(0), max age(90), days before expiry to issue warning(7) та days after expiry with usable login(-1). Ці налаштування працювали раніше, тому я не думаю, що жоден з них є причиною проблеми.
варення

1

Проблема також могла полягати в тому, що обліковий запис було тільки створено і ще не було призначено пароль.

Якщо так, passwd -S <user>покаже LK(для заблокованих) і passwd -u <user>не працюватиме.

Вам потрібно просто призначити користувальницьку програму passwd, щоб виправити проблему.


0

За допомогою цієї команди ви можете створити розблокованого користувача без будь-якого пароля:

adduser --gecos "Username" --disabled-password "username"

Це означає, що в системі не висить випадковий пароль.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.