せっかくIPフィルタリスト作ったんだから、その効果を見てみたいなぁ・・・

ということでフィルタリングした結果をulogdを使ってMySQLに記録を取ってみる。

インストール参考リンク : iptablesログ解析(IPTables log analyzer)



まぁ、参考リンク通りでインストールできると・・・思ったらulogdのmakeでエラー(;´Д`)

make時に
[cpp num=”false” highlight_lines=”2″]gcc -I-I/usr/include/mysql -DOLD_MYSQL=1 -g -O2 -Wall -DULOGD_CONFIGFILE=\”/etc/ulogd.conf\” -I/lib/modules/`uname -r`/build/include -I.. -I../libipulog/include -I../include -fPIC -o ulogd_MYSQL_sh.o -c ulogd_MYSQL.c
ld -shared -rdynamic -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lssl -lcrypto -o ulogd_MYSQL.so ulogd_MYSQL_sh.o -lc
ld: bad -rpath option
make[1]: *** [ulogd_MYSQL.so] Error 1
make[1]: Leaving directory `/usr/local/src/ulogd-1.24/mysql’
make: *** [recurse] Error 1[/cpp]
と出てしまう場合は Rules.makeの
[cpp highlight_lines=”4″]# mysql output support
#ULOGD_SL+=MYSQL
MYSQL_CFLAGS=-I-I/usr/include/mysql -DOLD_MYSQL=1
MYSQL_LDFLAGS= -rdynamic -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lssl -lcrypto [/cpp]
「-rdynamic」を削る

makeできたもののMySQLに記録されなくて /var/log/boot.logや/var/log/messagesあたりに
[text]Mar 10 15:38:32 main ulogd: Wed Mar 10 15:38:32 2010 <7> ulogd.c:462 load_plugins: ‘/usr/local/lib/ulogd/ulogd_MYSQL.so’: /usr/local/lib/ulogd/ulogd_MYSQL.so: undefined symbol: mysql_init[/text]
とか出ている場合は Rules.makeの
[cpp]MYSQL_LDFLAGS= -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm[/cpp]
に「-umysql_init」を追加。
(VineLinuxだとmakeは通ったがこうなった)

で、今回はフィルタリングで破棄した記録だけが欲しいので
[text]# iptables -A INPUT -m limit –limit 1/s -j ULOG –ulog-nlgroup 1 –ulog-prefix ‘INPUT'[/text]
ではなくて、チェインKRFILTEREDに
[text]# iptables -A KRFILTERED -j ULOG –ulog-nlgroup 1 –log-prefix “Rej-TCP ”
# iptables -A KRFILTERED -j DROP[/text]
ってかんじに設定。

・・・って必死で設定してみたけど、サーバ再編するんだった(;´Д`)



関連しそうなentry