本ページは広告が含まれています。気になる広告をクリック頂けますと、サーバ運営費になります(^^
パスワードを一括登録する
Linuxサーバを触るなら、Perlスクリプトも多少触れるようになっておきたいものです。
Perlスクリプトを利用して、ユーザリストファイルからホームページアクセスようにユーザを作成します。htpasswdコマンドを利用してユーザを追加していきます。ユーザファイルは、カンマ区切りのcsvファイル、ユーザ名,パスワード形式で準備すればOKです。
Perlスクリプト
vi htpasswd_add.pl
#!/usr/bin/perl -w
#users.txt file format username,password
#usage: htpasswd_add.pl users.txt
while () {
chop;
($uname,$pass) = split(/,/);
/usr/bin/htpasswd -b /usr/local/nginx/passwd/.htpasswd "$uname" "$pass"`;
print "add htpasswd $uname\n";
}
Perlスクリプトを実行できるように権限設定
chmod 755 htpasswd_add.pl
ユーザ・パスワードファイルの準備
下記の形式のパスワードファイルを作成します
users.txt
test1,pass1
test2,pass2
ユーザ追加の実行
htpasswd_add.pl users.txt
スクリプト解説
chop コマンドにより、user 部分とpass部分にカンマ区切りで分ける
/usr/bin/htpasswd -b にて、パスワードまで読み込ませてアカウント作成(対話形式でない)
ユーザ削除スクリプト
ユーザ追加で利用したファイルをそのまま使ってユーザを削除する
#!/usr/bin/perl -w
#users.txt file format username,password
# 本来ユーザ削除時にpasswordは必要ないのだが、ユーザ追加時に利用したファイルを流用する
#usage: htpasswd_del.pl users.txt
while (<>) {
chop;
($uname,$pass) = split(/,/);
`/usr/bin/htpasswd -D /usr/local/nginx/passwd/.htpasswd "$uname"`;
print "del htpasswd $uname\n";
}

