Postfix Adminのパスワードバリデーションで困ったTips
システム部の山田です。
メールサーバーにPostfixを利用している場合、
バーチャルドメインやメールアカウントをGUIで簡単に管理できる「Postfix Admin」
サーバー管理者だけでなく、自宅でちょこっとメールサーバーを立てた方も利用されてるんじゃないかと思いますが、
このツールでメールアカウントを作成するとき、ちょっと困ったことがあったのでメモ。
Postfix Adminを使ってあるドメインにメールアカウントの追加をしようと思ったとき、
分け合って4桁くらいのすごくシンプルなパスワードを追加する必要があったのですが
なんと「5文字のパスワードにしろ」なんてエラーを吐かれました。
あれ???Postfixでそんな制限入れたっけ????
こりゃPostfix Adminで引っかかってんのかな???
と思って「Postfix Admin パスワード 制限」とか調べてみるも、あまりいい情報は出ず。。。
という訳で地道にPostfix Adminの設定ファイルを調べてみます。
設定ファイルは以下
[Document root]/postfixadmin/config.inc.php
このファイルの中央にこんなものが
// Password validation $CONF['password_validation'] = array( # '/regular expression/' => '$PALANG key (optional: + parameter)', '/.{5}/' => 'password_too_short 5', # minimum length 5 characters '/([a-zA-Z].*){3}/' => 'password_no_characters 3', # must contain at least 3 characters '/([0-9].*){2}/' => 'password_no_digits 2', # must contain at least 2 digits );
いかにもですね。
正規表現でパスワードのバリデーションルールを一つずつ作って、
配列で複数設定できるようになっています。
デフォルトでは上から
・5文字以上
・英字(大文字 or 小文字)を3文字以上
・数字を2文字以上
というルールですね。
正規表現の説明についてはこちら
ではこの中で必要のない部分を変更&コメントアウトしてやります。
// Password validation $CONF['password_validation'] = array( # '/regular expression/' => '$PALANG key (optional: + parameter)', '/.{4}/' => 'password_too_short 4', # minimum length 3 characters ←今回は4文字にしとく # '/([a-zA-Z].*){3}/' => 'password_no_characters 3', # must contain at least 3 characters ←これはコメントアウト # '/([0-9].*){2}/' => 'password_no_digits 2', # must contain at least 2 digits ←これもコメントアウト );
これでパスワードバリデーションの変更ができました。
PHPファイルの編集なのでApacheの再起動なんかは必要ありません。
もっと細かいメールサーバーの設定でお悩みの方、
メールサーバーの管理なんてしてらんない!!という方は是非こちらから丸投げしてください!!!