定期的にパスワードを変更してメールで通知してくれるスクリプト

· 1 min read
定期的にパスワードを変更してメールで通知してくれるスクリプト

とっさの思いつきスクリプト。
特定のユーザのパスワードを変更して、新しいパスワードをメールで通知してくれます。

#!/bin/bash

USER=root
DATE=`date +%Y%m%d_%H:%M`
HOST=`uname -n`
PASS=`mkpasswd -l 8`
MAIL=harada@hogehoge.com

echo $PASS |passwd --stdin $USER #パスワードを標準入力から設定 ※1
cd /home/harada/script/
cp -ip mail.tmp mail.tmp.$DATE

sed -i -e s/HOST/$HOST/ mail.tmp.$DATE
sed -i -e s/USER/$USER/ mail.tmp.$DATE
sed -i -e s/PASS/$PASS/ mail.tmp.$DATE
sed -i -e s/DATE/$DATE/ mail.tmp.$DATE

cat mail.tmp.$DATE |mail -s "Password Exchanged" $MAIL
rm -f mail.tmp.$DATE
# cat mail.tmp
あなたのHOST サーバのパスワードが更新されました。

■対象ユーザー
USER

■変更後パスワード
PASS

変更日時
DATE

以上、よろしくお願い致します。

cronに登録すれば、任意のタイミングでパスが変更されます。
あんま実用性ないかもしれません。

※参考サイト
http://d.hatena.ne.jp/yosi_zou/20110205/1296869413 ※1