bash 스크립트를 통해 다른 사용자 비밀번호를 변경하는 것은 쉽습니다.- echo newpw | passwd username
를 실행하면 완료됩니다. 하지만 bash를 통해 귀하의 비밀번호를 변경하는 것은 어떻습니까? echo newpw | passwd username
는 새 비밀번호를 입력하기 전에 현재 비밀번호를 입력하라는 메시지를 표시하므로 작동하지 않습니다.
댓글
- "에
su
또는sudo
를 사용해야합니까? 다른 사용자 '의 비밀번호 " 예제가 작동하도록 변경 하시겠습니까? -
root
는 다른 사용자에 대해passwd username
를 사용할 수 있습니다.passwd
를 실행할 때 (username
)는root
로 이전 암호를 묻지 않습니다 (Ubuntu 19.10 시스템에서). - Yah-하고있었습니다.
sudo
. 질문은 여전히 유효합니다. - 그래서
sudo
를 수행하려면 비밀번호를 입력해야 했습니까? 다른 사용자 '의 비밀번호를 변경 하시겠습니까? - 음, 현재 비밀번호를 입력 한 다음
{ sleep .1; echo OLDPASSWORD; for i in 1 2; do sleep .1; echo Trump2020! ; done; } | passwd
.passwd
가 tty에서 읽으려면... | script -c passwd /dev/null
를 사용하십시오. 하지만 ' 그렇게해서는 안됩니다. 달성하려는 목표를 ' 말하는 것이 좋습니다.
답변
현재 사용자의 암호를 변경하려면 다음과 같이해야합니다.
echo -e "MyOldPasswd\nMyNewPasswd\nMyNewPasswd" | passwd
Answer
chpasswd 를 사용할 수 있습니다.
sudo chpasswd <<<"neubert:newpass"
답변
중간 적절한 설정으로는 작동하지 않습니다. 루트 만 passwd user
(새 암호를 입력하라는 메시지가 표시됩니다). 자신의 비밀번호를 변경하려면 passwd
를 실행하세요. 현재 비밀번호를 요청한 다음 새 비밀번호 (및 확인)를 요청해야합니다.
임의의 사용자 허용 다른 사람의 비밀번호를 변경하는 것은 엄청난 보안 문제입니다.