スクリプトからpasswdコマンドでパスワードを変更する方法
提供: Linux入門
スポンサーリンク
Linux で スクリプトから UNIX パスワードを変更する方法を紹介します。
読み方
- passwd
- ぱすわーど
目次
概要
passwd コマンドを使って、アカウントのパスワードを変更する方法を紹介します。
chpasswd コマンドを使用する例
echo "USERNAME:NEW_PASSWORD" | chpasswd
passwd コマンドを使用する例
root ユーザで動作させれば、自分以外のアカウントのパスワードが変更できます。 foo のユーザのパスワードを $PASSWORD に変更する例です。 $PASSWORD は任意の文字列を指定して下さい。
root# echo "$PASSWORD\n$PASSWORD\n" | passwd foo
foo がパスワードを変更する場合は、現在のパスワード ($CURRENT_PASSWORD) も指定する必要があります。
foo$ echo "$CURRENT_PASSWORD\n$NEW_PASSWORD\n$NEW_PASSWORD\n" | passwd foo
ヒアドキュメントを使用した場合
/usr/bin/passwd foo<<EOF new_password new_password EOF
perl で書いた場合
perl からパスワードを変更する例です。
my $user = "foo"; my $cmd = "echo \"$pw\n$pw\n\" | /usr/bin/passwd $user"; system ($cmd);
参考 useradd
useradd コマンドの -p オプションを指定して、ユーザアカウントを作成すると、 -p オプションで指定した文字列がそのまま パスワード文字列として設定されます。要するに指定された文字列は、暗号化処理されずにそのまま入ってしまいます。
関連項目
ツイート
スポンサーリンク