FC6中使用ulogd把iptables日志记录到 MySQL

FC6中使用ulogd把iptables日志记录到 MySQL

  作者: 有颜色的猫

  第一步,安装 ulogd 以及 ulogd-mysql

  # yum install ulogd
  # yum install ulogd-mysql

  安装完毕之后,配置 ulogd

  把 ulogd 的数据库脚本倒到数据库中

  # cd /usr/share/doc/ulogd-1.24/
  # mysql
  mysql> create database ulogd;
  mysql> exit
  # mysql -D ulogd < mysql.table

  然后再修改 ulogd.conf 的配置文件

  # vi /etc/ulogd.conf
  找到 # output plugins. 行的字样
  大约在 43 行,找到
  plugin="/usr/lib/ulogd/ulogd_LOGEMU.so" 将其注释掉
  取消 plugin="/usr/lib/ulogd/ulogd_MYSQL.so" 行的注释
  表示输出到 MySQL 中
  再找到配置文件中 MySQL 配置字段
  大约在 59 行

  [MYSQL]
  table="ulog"
  pass=""
  user="root"
  db="ulogd"
  host="localhost"

  修改为相应选项即可

  修改完毕,启动 ulogd 服务.

  # service ulogd start

  如果没有什么错误提示就可以了

  第二步,配置 iptables

  设置你要记录的 iptables 规则,比如要记录 80 端口的包

  -A INPUT -p tcp -m tcp --dport 80 -j ULOG

  不过要注意的是,ULOG 不对包进行过滤,匹配上这一条规则之后,数据依旧继续往下匹配

  这样就基本配置完毕了,当服务器上的 80 端口有数据的时候,报文的一些信息就会被记录到 MySQL 中,便于以后的查看与统计。
谢谢楼主介绍