Tại sao tên người dùng sudo passwd cứ hỏi mật khẩu hiện tại [trùng lặp]


8

Tôi đang ở trong một tình huống kỳ lạ, rằng tôi không thể thiết lập lại mật khẩu của người dùng trên máy của mình (Ubuntu 16.04) bằng cách sử dụng sáng hơn sudo passwd usernamehoặc passwd usernametừ tài khoản root.

root@adam-minipc:~ # passwd mikolaj
Current password: 
New password: 
New password (again): 
passwd: Authentication token manipulation error
passwd: password unchanged

Trong /etc/shadowmục liên quan có nội dung:

mikolaj:!:18063:0:99999:7:::

Tại sao vậy? Điều gì gây ra nó và làm thế nào để thiết lập lại mật khẩu? Tôi đã được pwned?


Mở khóa tài khoản cũng không giúp được gì:

root@adam-minipc:~ # passwd -u mikolaj
passwd: unlocking the password would result in a passwordless account.
You should set a password with usermod -p to unlock the password of this account.

usermod -p <encrypted password> mikolajyêu cầu mật khẩu được mã hóa, và nó chỉ đơn giản dán nó vào /etc/shadowtập tin. Tôi không biết cách lấy mật khẩu được mã hóa, ngay cả khi tôi biết, đó phải là cách đơn giản để đặt lại mật khẩu nếu bạn đã root. Đây là lần đầu tiên tôi thấy hành vi này passwdvà thật lòng mà nói tôi thực sự lạc lõng.


Câu hỏi khác với lỗi "Thao tác mã thông báo xác thực" khi cố gắng thay đổi mật khẩu người dùng của tôi , vì nó không liên quan gì đến hệ thống tệp chỉ đọc, tôi cũng không phàn nàn về lỗi ở nơi đầu tiên. Tôi muốn biết, tại sao sudo passwd <username>đột nhiên bắt đầu yêu cầu mật khẩu hiện tại. Trên tất cả các hệ thống khác của tôi, nó không.


Bạn đã thử đặt mật khẩu với "-p" như đầu ra cho thấy chưa?
Yeti

@KetanPatel Không, không phải vậy. Tôi vừa tìm ra giải pháp và đó là một câu chuyện hoàn toàn khác.
Adam Ryczkowski

2
@AdamRyczkowski Điều đó bao gồm nhiều nguyên nhân, mặc dù không có đề cập nào passwdyêu cầu root cung cấp mật khẩu hiện tại. Tôi nghĩ rằng câu trả lời của jouell có thể đã sửa lỗi này. Tôi khuyên bạn nên chỉnh sửa lại để làm ngay lập tức rõ ràng những gì bạn đang hiện yêu cầu. (Có vẻ như bạn vẫn muốn đặt lại mật khẩu.) Liệu passwd mikolaj, với quyền root, vẫn hỏi mikolajmật khẩu? Nếu không, có thể khó tìm thấy lý do tại sao nó đã làm. Nếu vậy, có pam-auth-updatesửa nó không? Nếu không, đầu ra của ls -l /etc/{passwd,group} /etc/pam.d/*pass*cái gì?
Eliah Kagan

Bạn đã thử sudo -u username passwdchưa
Phục hồi Monica - M. Schröder

Câu trả lời:


5

Cuối cùng tôi đã tìm thấy giải pháp, nhưng nó không trả lời tại sao sudo passwd <username>đột nhiên bắt đầu yêu cầu mật khẩu hiện tại, vì vậy tôi sẽ không đánh dấu nó là một giải pháp.

Để giải quyết nó chạy như root usermod -p "" mikolaj, và sau đó thay đổi mật khẩu bằng cách sử dụng passwdvà khi nó hỏi bạn mật khẩu hiện tại, chỉ cần nhấn enter mà không cần gõ bất cứ điều gì.


1
Xóa dấu chấm than khỏi / etc / bóng sẽ giống như tôi đoán. Giải pháp tốt đẹp. :-)
Yeti

1
Hmm ... Tôi nghi ngờ rằng điều này thực sự đã giải quyết được vấn đề tiềm ẩn, vì thực sự đặt mật khẩu thành chuỗi trống, bạn sẽ cần một cái gì đó như thế nào usermod -p "$(openssl passwd "")". Là passwd mikolajroot cư xử bình thường một lần nữa bây giờ?
Steeldo

@steel ấn Có, nó có. Bây giờ tất cả đều ổn, ngoại trừ sự thiếu hiểu biết của tôi tại sao passwdbắt đầu cư xử như thế này
Adam Ryczkowski
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.