ランダムパスワードの生成
ランダムパスワード生成には mkpasswd
を使う必要がある。 CentOSにはデフォルトで入っていないようなのでインストールをしてから利用する。
yum で mkpasswd をインストール
$ yum install expect
これだけでインストール完了。
パスワードを生成してみる
下記リンクと、数年前に某案件で一緒だったIさんがしきりにいっていた man
コマンドで $ man mkpasswd
叩いてオプションを確認
-l | パスワードの長さ |
---|---|
-d | パスワードに含める数字の数 |
-c | パスワードに含める英字小文字の数 |
-C | パスワードに含める英字大文字の数 |
-s | パスワードに含める特殊文字の数 |
特殊文字がデフォルトで1つは入るようになっているようなので、不要な場合は -s 0
としたら入らないパスワードができるらしい
ということで作ってみた
10文字で特殊文字無しとした例
$ mkpasswd -l 10 -s 0
htpasswd で認証ファイルを作成
パスワードが用意できたら、ベーシック認証に使う認証用のファイルを作成する。
認証ファイルを作成するときのコマンドは htpasswd
を使う。
Manual Page: htpasswd - Apache HTTP Server
尚、htpasswd
のデフォルトで作成してしますうと、8文字以上の文字数が認証に利用されないらしい。
【apache】ベーシック認証で8文字以上の長いパスワードを設定するときの注意 at softelメモ
ということで、mオプションのMD5で作成するのが良さそう。
ファイル名を .htpasswd で作成する例
$ htpasswd -cbm .htpasswd name passward
あとはこの作成下ファイルを認証で通用に apache や nginx 側の設定をして完了。
サービスを使うのもいいのですが、これくらいで終わるなら自分でファイル作成するのでも同じくらいかなーと。
と、そんなメモでした。