루트의 기본 비밀번호를 사용하는 시스템 이미지가 있습니다. 이것~해야 한다모든 사용자가 이 작업을 수행하지는 않을 것 같지만 변경됩니다.
pamtester를 사용하여 로그인을 테스트할 수 있다는 것을 알고 있습니다.
# pamtester system-auth root authenticate
Password:
명령줄에 비밀번호가 필요합니다. 나는 이것을 자동화하고 싶다. 이것이 가능합니까?
답변1
vi ./authenticate_test.sh
#!/bin/bash
echo "Checking your password. If it doesn't work, script will wait for a few seconds, don't worry..."
pamtester login $1 authenticate << eof
`echo $2`
eof
if [[ $? -eq 0 ]]
then
echo "script> Successful"
else
echo "script> Fail"
fi
그런 다음 다음을 사용하십시오.
$ ./authenticate_test.sh customuser rightpassword
Checking your password. If it doesn't work, script will wait for a few seconds, don't worry...
Password: pamtester: successfully authenticated
script> Successful
$ ./authenticate_test.sh customuser wrongpassword
Checking your password. If it doesn't work, script will wait for a few seconds, don't worry...
Password: pamtester: Authentication failure
script> Fail
답변2
예, 다음을 사용하여예상되는스크립팅 언어.
답변3
/etc/shadow 파일에서 해시 값을 확인하십시오. 해시는 이미지의 일부이므로 이미 해시가 있습니다. 루트 비밀번호 해시가 다른지 확인하세요.
답변4
A는 here-document
또한 다음과 같은 작업을 수행합니다.
testparm ... << eof
`echo $password`
eof