ネトサバ日記

インフラに関する投稿をしていきます

MariaDBで弱いパスワードを使う方法

MariaDBを使っていてテスト用とかでかんたんなパスワードを使いたいけど
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
が出てパスワードが作れないときの対処法

これは、MariaDBで弱いパスワードが使えないようにデフォルトおせっかいをしてくれているため

以前であれば、https://ameblo.jp/kz999sg/entry-12172778472.html
が書かれているように
mysqlでポリシーを決めることができたのだが
MariaDB 10.1.2からパスワードチェックをすべてcracklibにまかせることになっている
そのcracklibのパスワードチェックが融通がきかない

パスワードが通るかは以下のコマンドで
echo "test" | cracklib-check

なので、cracklibにパスワードチェックしないようにする必要がある。

環境

Fedora release 25
MariaDB 10.1.24

現象

mysqlにログインして以下のようにパスワードつきユーザを作成したときに
ERROR 1819が出る。

MariaDB [(none)]> CREATE USER hoge IDENTIFIED BY "pass";

対処法

  1. /etc/my.cnf.d/mariadb-server.cnfにある[mysqld]セクションに
    cracklib-password-check=OFF
    を追加する
  2. systemctl restart mariadb
    mariadbを再起動

これで、パスワードチェックしなくなるのでどんなパスワードでも設定できるようになる。
おそらくcracklibのパスワードチェックリストも
cracklib_password_check_dictionary
で変えることができるのでパスワードポリシーも変更できるのかもしれないので
本番環境触るようなときがあればまた調べる必要があるかも...


参考