2002年6月11日更新
tcpserver のログを整理するツールを作りましたので公開します。
tcpanalog-splogger-0.23.tar.gz (splogger 版)
tcpanalog-multilog-0.23.tar.gz
(multilog 版)
これを作った動機は tcpserver + splogger のログを眺めているうちに、qmail の ログの分析ツール qmailanalog の tcpserver 版が欲しいと思ったからです。そういう わけで qmailanalog を真似て、tcpanalog という名前をつけました。中身も参考にし ただけあってよく似ています。このバージョンでは接続したホスト名あるいはドメイン 名とその回数・時間、接続拒否したホスト名とその回数しか情報は出ませんが、他にこ ういう情報が入った方が良いというのがあれば、メイルを下さい。考慮します。なお、 ucspi-tcp-0.83 以降用です。なお、multilog を使っているときには、tcpmatchup にログを渡す前に tai64ntai を通してタイムスタンプを TAI 形式に変更してください。
$ gzip -dc tcpanalog-multilog-0.23.tar.gz | tar xvf - $ cd tcpanalog-multilog-0.23
$ make $ su # make install
これでインストールの終了です。
サンプル・スクリプトを示します。
#!/bin/sh # tcpanalog PATH=/usr/local/bin/tcpanalog AUTHLOG="/var/log/authlog" TMPLOG="$HOME/tmp/log.$$" /usr/bin/awk '{$1="";$2="";$3="";$4="";print}' < $AUTHLOG | \ tcpmatchup > $TMPLOG ztcpdomains < $TMPLOG ztcphosts < $TMPLOG ztcpdeny < $TMPLOG /bin/rm -f $TMPLOG
サンプル・スクリプトを示します。入力するログのファイル名をオプションとして実行するものです。logcollector は cyclog の吐き出すログから必要な時間だけを取り出すスクリプトだと思ってください。
#!/bin/sh # tcpanalog PATH=/usr/local/bin/tcpanalog:/usr/local/bin TMPLOG="$HOME/tmp/log.$$" logcollector $1 $2 | tcpmatchup > $TMPLOG ztcpdomains < $TMPLOG ztcphosts < $TMPLOG ztcpdeny < $TMPLOG /bin/rm -f $TMPLOG
目次 - tcpserver とは - インストール - 接続制御データベース - 環境変数 - オプション - 起動例 - tcpanalog