テキストファイルにユーザー名だけが書かれたファイルがあり、そのユーザー名を.htpasswdに全部追加したい。
オンラインサービスなどで一件づつの暗号化されたパスワード発行はできるけど、ユーザーがいっぱいあったのでそれだと面倒くさい。
そこで一気に作る方法を以下のように行った。
作戦
.htpasswdファルにはlinuxコマンドにてbasic認証のユーザー追加を行う
htpasswd -b .htpasswd test1 test1
このコマンドをエクセルを使って一気に作り、流し込む
.htpasswdはパス付きで指定するのだけど、今回はカレントディレクトリに移動してから使う。
準備
htpasswdコマンドを使うのでインストールされていなければ以下を追加
(実際これだったかは覚えてないが、たしかこんな感じ)
sudo apt-get install apache2-utils
コマンドを作る
テキストファイルは1行ずつユーザー名が書かれており、今回はパスワードとユーザー名が一緒という前提。
エクセルにペーストしてこんな感じにしておく
B列には
=”htpasswd -b .htpasswd “&A1&” “&A1
こんな感じで以下を同様にしておく
パスワードを指定したければB列はパスワードに使えばいいさ。
今回はユーザー名とパスワードが同一なのでこれで済ます。
これでコマンドが出来上がったので、あとはコンソールに貼り付ければ一気に作れます。
-b オプションは追記なので、まだ.htpasswdファルが存在していないときは -c オプションで新規作成するのだけど、今回は1番目だけオプション変更なんて面倒なので先に空の.htpasswdファイルを作ってから実行。
以上!
コメント