При попытке изменить пароль пользователя выдается ошибка "Аутентификация токена"
Я захожу на сервер Ubuntu, используя свое имя пользователя. После входа в систему я печатаю passwd
команда. Ввод нового пароля через секунду после получения следующих сообщений об ошибках:
passwd: Authentication token manipulation error
passwd: password unchanged
Что здесь не так? Как я могу изменить свой пароль в противном случае, если у меня нет физического доступа к этому серверу, т.е. я подключаюсь удаленно с ssh
используя терминал.
13 ответов
Если вы введете неправильный пароль
$ passwd
Changing password for rinzwind.
(current) UNIX password:
passwd: Authentication token manipulation error
passwd: password unchanged
Вы получаете эту ошибку. Если вы уверены, что вставили правильный файл, эта ошибка также может отображаться, если вы используете скрытые файлы паролей, и у тени нет записи для этого пользователя (в основном/etc/passwd
есть запись для этого пользователя, но /etc/shadow
не).
Чтобы это исправить, вы можете либо добавить запись вручную (сначала сделайте резервную копию!!!), либо заново создать теневой файл с помощью pwconv
( Manpage).
Сделайте эти две вещи, чтобы убедиться:
mount -o remount,rw /
Эта первая часть перемонтирует корневой раздел как для чтения / записи, так как он был только в режиме чтения. Он фактически отключает корневой раздел, а затем снова подключает его для чтения / записи.
Тогда сделайте это:
chmod 640 /etc/shadow
Затем сделайте sudo passwd USER
, Это должно работать после этого. Эта часть дает правильные разрешения для теневого файла.
pam-auth-update
исправил мой перепутал /etc/pam.d/common-password
Я не уверен, как это случилось. Пользователь sudo создал мою учетную запись, затем удалил ее, а затем создал ее снова.
Вот что я нашел
mount -o remount,rw /
passwd
passwd: Authentication token manipulation error
Без изменений.
sudo pwck
Показано без ошибок.
sudo grpck
Показано без ошибок.
ls -l /etc/passwd /etc/group /etc/shadow /etc/shadow-
-rw-r--r-- 1 root root 767 May 7 16:45 /etc/group
-rw-r--r-- 1 root root 1380 May 7 16:45 /etc/passwd
-rw-r----- 1 root shadow 1025 May 8 09:11 /etc/shadow
-rw------- 1 root root 1025 May 7 16:46 /etc/shadow-
Выглядит нормально.
sudo cat /etc/shadow |grep oracle
oracle:$6$FsPqyplr$DrIvjFDSx0ipHmECMw1AU5hTrbNMnnkGRdFlaQcM.p3Rdu2OLjY20tzUTW61HlFH16cal56rKlLuW4j2mK9D.:15833:0:99999:7:::
Показан пользователь и зашифрованный пароль.
sudo cat /etc/shadow- |grep oracle
Ничего не показывал. Не уверен, что это значит, но выглядит неправильно.
sudo passwd -d oracle
passwd
Поэтому решение было удалить пароль, а затем сбросить новый пароль.
Надеюсь это поможет.
Другая проблема может быть в том, что диск заполнен. Я получил эту ошибку при сбросе пароля, а затем проверил мои диски с df
и обнаружил, что на моем диске нет свободного места. После освобождения я смог сбросить пароль без проблем.
Если вы используете SELinux, запуск этой команды решил проблему для меня.
restorecon -v /etc/shadow
Спасибо этому разговору за решение.
Эта проблема возникла из-за неправильных разрешений, установленных /usr/bin/passwd
,
Пожалуйста, попробуйте установить разрешение 4511, используя команду:
chmod 4511 /usr/bin/passwd
Это решит проблему.
Проверьте, не испортили ли вы файл общего пароля в /etc/pam.d/
, Это приведет к ошибкам, если ваш текущий пароль не совпадает с тем, который common-password
хочет. В моем случае это было причиной, по которой я получал ошибку токена аутентификации.
Сервер, на котором я работал, был настроен с некоторой аутентификацией Windows через PowerBroker Identity Server (PBIS).
В основном, когда я ввожу sudo pam-auth-update
появятся следующие параметры:
Отмените выбор первого элемента списка, используя клавишу пробела для выбора / отмены выбора и стрелки вверх / вниз, если это необходимо.
Затем перейдите к
Ok
Опция с использованием клавиши Tab и стрелок влево / вправо, если это необходимо.Нажмите Enter в верхней части
Ok
Вариант.После этого я мог бы использовать
passwd
а такжеadduser
как обычноКак только вы закончите с вашей пользовательской конфигурацией, вы можете вернуться к
sudo pam-auth-update
и оставьте настройки как прежде.
В общем случае (т.е. без использования PowerBroker Identity Server (PBIS)), кажется, важно иметь Unix Authentication
активирован (и никакой другой системы аутентификации).
Также убедитесь, что ваша запись в /etc/passwd не сформирована неправильно. Если в строке для ввода пользователя указано неверное количество двоеточий, команда passwd не сможет его проанализировать и откажется продолжить с точным сообщением об ошибке.
Ошибка говорит о том, что модуль PAM (см.: man pam_chauthtok
) не удалось получить новый токен аутентификации. Это может произойти в Ubuntu, когда пользователь еще не установил пароль по умолчанию и passwd
все еще запрашивает его, поэтому обходной путь заключается в изменении пароля с помощью root
привилегии, например
sudo passwd $USER
поэтому у вас не спросят текущий пароль, и ошибка не произойдет.
Смотрите также: Ошибка манипулирования токеном аутентификации
В Lubuntu 15.04 у меня была такая же ошибка манипуляции токеном. Я понял, что это связано с тем, что файловая система все еще находится в режиме только для чтения.
С помощью:
mount -o remount, rw / passwd passwd: ошибка манипулирования токеном аутентификации
Это не работает, но работает: mount -o remount, --rw / passwd passwd: ошибка манипуляции токеном аутентификации
Используя приведенную выше информацию, я обнаружил, что это решило мою проблему
pam-auth-update
Мне нужно удалить extrausers
вариант от пам.
В моих журналах я отметил следующие ошибки.
journalctl -f
passwd[16497]: pam_extrausers(passwd:chauthtok): user "xuser" does not exist in /var/lib/extrausers/passwd