24 lines
443 B
Bash
24 lines
443 B
Bash
#!/bin/sh
|
|
|
|
trap report SIGINT SIGTERM
|
|
|
|
function askpw {
|
|
read -s -p "Password:" password
|
|
password=""
|
|
echo ""
|
|
echo "Sorry, try again."
|
|
}
|
|
|
|
function report {
|
|
stty echo # Fix echo if ^C during password prompt
|
|
( whoami ; date ) | mailx -s "Someone sudo'ed (`id -un`, ${SSH_CONNECTION})" root
|
|
exit 1
|
|
}
|
|
|
|
function main {
|
|
for try in 1 2 3; do askpw; done
|
|
echo "sudo: 3 incorrect password attempts"
|
|
report
|
|
}
|
|
|
|
main
|