2007年6月24日日曜日

mysqlでのアクセス制御復習

というかいつも忘れるのでメモっておく。

bind-addressを使う方法。なんといってもmysqlで一番手軽かつ強力なアクセス制御。/etc/my.cnfに

bind-address          = 127.0.0.1

とか書いておけばOK.これで解決するなら楽なのだが、今回は複数IPでbindしたいのだが、調べてみたらどうやらそんなものはないらしい。

/etc/hosts.allowに書いてみる。のも手軽な方法。というわけで

mysqld: LOCAL, 192.168.168.0/24

とか書いてみた。

mysqlのユーザを追加。192.168.168.0/24からは接続できるようになったけど、今度はmysqlのユーザ自体を追加しないと当然つながらない。

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON fb_test.* TO user@'192.168.168.1' IDENTIFIED BY 'ぱすわーど';

などとすればOK。IPアドレスを任意にしたければ "%"を使うようだ。こいつらのデータはmysqlデータベースのuserテーブルにはいっているので

mysql> select user,host from mysql.user where user = 'user';
+------+---------------+
| user | host          |
+------+---------------+
| user | 192.168.168.1 |
| user | localhost     |
+------+---------------+
2 rows in set (0.00 sec)

などというかんじで調べがつく。

0 件のコメント:

コメントを投稿