เหตุใดชื่อผู้ใช้ sudo passwd จึงขอรหัสผ่านปัจจุบัน [ซ้ำกัน]


8

ฉันอยู่ในสถานการณ์ที่แปลกประหลาดที่ฉันไม่สามารถรีเซ็ตรหัสผ่านของผู้ใช้บนเครื่องของฉัน (Ubuntu 16.04) โดยใช้ eighter sudo passwd usernameหรือpasswd usernameจากบัญชีรูท

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

ใน/etc/shadowรายการที่เกี่ยวข้องอ่าน:

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

ทำไมถึงเป็นอย่างนั้น? อะไรเป็นสาเหตุของมันและวิธีรีเซ็ตรหัสผ่านอยู่แล้ว? ฉันได้รับการ pwned?


การปลดล็อคบัญชีไม่ได้ช่วย:

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> mikolajต้องใช้รหัสผ่านที่เข้ารหัสและเพียงแค่วางลงใน/etc/shadowไฟล์ ฉันไม่ทราบวิธีรับรหัสผ่านที่เข้ารหัสแม้ว่าฉันจะรู้แล้วมันจะต้องเป็นวิธีในการรีเซ็ตรหัสผ่านหากคุณเป็นรูท นี่เป็นครั้งแรกที่ฉันเห็นพฤติกรรมนี้passwdและตรงไปตรงมาว่าฉันหลงทางจริงๆ


คำถามแตกต่างจากข้อผิดพลาด "การจัดการโทเค็นการรับรองความถูกต้อง" เมื่อพยายามเปลี่ยนรหัสผ่านผู้ใช้ของฉันเพราะไม่มีอะไรเกี่ยวข้องกับระบบไฟล์แบบอ่านอย่างเดียวและฉันก็บ่นเกี่ยวกับข้อผิดพลาดตั้งแต่แรก ฉันต้องการที่จะรู้ว่าทำไมsudo passwd <username>จู่ ๆ ก็เริ่มขอรหัสผ่านปัจจุบัน ในทุกระบบอื่น ๆ ของฉันมันไม่ได้


คุณได้ลองตั้งรหัสผ่านด้วย "-p" ตามที่แนะนำหรือไม่
Yeti

@ KetanPatel ไม่มันไม่ใช่ ฉันเพิ่งพบทางออกและมันเป็นเรื่องที่แตกต่างอย่างสิ้นเชิง
Adam Ryczkowski

2
@AdamRyczkowski ที่ครอบคลุมหลายสาเหตุแม้ว่าจะไม่มีใครพูดถึงการpasswdขอรหัสผ่านในปัจจุบัน ฉันคิดว่าคำตอบของ jouell อาจแก้ไขได้แล้ว ผมขอแนะนำให้คุณแก้ไขอีกครั้งเพื่อให้ทันทีล้างสิ่งที่คุณกำลังในขณะนี้ขอให้ ( ดูเหมือนว่าคุณต้องการรีเซ็ตรหัสผ่าน) passwd mikolajในฐานะที่เป็น root จะขอmikolajรหัสผ่านของคุณหรือไม่ หากไม่เป็นเช่นนั้นอาจเป็นเรื่องยากที่จะค้นหาสาเหตุที่ทำ ถ้าเป็นเช่นนั้นจะpam-auth-updateแก้ไขได้หรือไม่ ถ้าไม่เอาท์พุทของls -l /etc/{passwd,group} /etc/pam.d/*pass*คืออะไร?
Eliah Kagan

คุณเคยลองsudo -u username passwdไหม
Reinstate Monica - M. Schröder

คำตอบ:


5

ในที่สุดฉันก็พบวิธีแก้ปัญหา แต่ไม่ตอบว่าทำไมsudo passwd <username>ทันใดก็เริ่มขอรหัสผ่านปัจจุบันดังนั้นฉันจะไม่ทำเครื่องหมายว่าเป็นวิธีแก้ปัญหา

หากต้องการแก้ปัญหาให้รันในฐานะรูusermod -p "" mikolajทจากนั้นเปลี่ยนรหัสผ่านโดยใช้passwdเช่นเคยและเมื่อคุณขอรหัสผ่านปัจจุบันให้กด Enter โดยไม่ต้องพิมพ์อะไรเลย


1
การลบเครื่องหมายอัศเจรีย์ออกจาก / etc / shadow จะเป็นสิ่งเดียวกันกับที่ฉันเดา ทางออกที่ดี :-)
Yeti

1
อืม ... ฉันไม่อยากจะเชื่อว่าเรื่องนี้จริงๆแก้ไขปัญหาพื้นฐานตั้งแต่การจริงusermod -p "$(openssl passwd "")"ตั้งรหัสผ่านเป็นสตริงว่างคุณจะต้องสิ่งที่ต้องการ คือpasswd mikolajเป็นรากทำตัวตามปกติอีกครั้งในตอนนี้?
ขับเหล็ก

@steeldriver ใช่มันเป็นเช่นนั้น ทุกอย่างpasswd
เรียบร้อย
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.