up_l dmy up_r
dmy home dmy dmy dmy

●FTPによる不正なアクセスを排除する(proftpd filter)●
(2003/4/21更新)

(※管理人は現在これを使用していません)

FTPサーバーを立てて開放している方なら誰もが経験のあることではないかと思いますが、
secureログを確認しているとほぼ毎日のようにanonymous、ftpユーザーで
ログインを試みようとする不正なアクセスがあります。
これらのユーザーが存在しなかったり、アクセスを制限していれば特に気にする必要も無いのですが、
ログにこれらの痕跡が残っているだけでも正直気味の悪いものです。
そこで不正なアクセスをしてきたIPを自動的に検知して排除できいないものか?
っと考えて作成したのがproftpd filterです。

proftpd filterはsecureログ等から指定した文字列にマッチした行のIPを取り出して、
tcpserverの接続制御データベースを自動更新する為のperlスクリプトです。

■proftpd filterの入手&設定

※proftpd filterを使用する為には以下の条件が必須となります。
» FTPサーバーがproftpdである
» proftpdをtcpserverで動かしている
» perlモジュール”DB_File”がインストールされている

※proftpdをtcpserverで動作させる方法はこちらをご覧下さい。

※DB_Fileモジュールがインストールされているか確認する方法。
> perldoc -l DB_File.pm

(インストールされていない場合は別途インストールして下さい)

> wget http://cmf.ohtanz.com/download/pftpdfilter.tar.gz
> tar zxvf pftpdfilter.tar.gz
> cd pftpdfilter

※pftpdfilterをエディタで開いて下記を編集します。
> cp pftpdfilter /usr/local/bin/
> vi /usr/local/bin/pftpdfilter

------------------------------------------------------------------------------
01:#!/usr/bin/perl                       #perlのパス
14:$tcp_dir = '/etc/tcpserver';          #このスクリプトの作業ディレクトリ
17:$check_log = '/var/log/secure';       #検索対象となるログのPATH
20:$cdb_file = '/etc/tcpserver/ftp.cdb'; #tcpserverが使用するcdbファイルのPATH
------------------------------------------------------------------------------

> chmod 755 /usr/local/bin/pftpdfilter

※キーワードファイル(badwd.txt)を編集します。
> cp badwd.txt /etc/tcpserver/
> vi /etc/tcpserver/badwd.txt

------------------------------------------------------------------------------
USER anonymous
USER ftp
------------------------------------------------------------------------------
※↑はUSER anonymous、USER ftpにマッチしたIPを対象にした場合の例

※cronにpftpdfilterを追加します。
> crontab -e

------------------------------------------------------------------------------
0 * * * * /usr/local/bin/pftpdfilter --update -B3
------------------------------------------------------------------------------

※↑は毎時0分にチェックする場合の例 (オプション-B3はマッチしたIPが「192.168.1.10」だった場合「192.168.1.」として登録します)
※リストを初期化する場合は作業ディレクトリにあるbadip.dbを削除した後、--updateして下さい。

■その他のオプション

1.リストに登録されているIPの一覧を表示

> pftpdfilter --list

2.allow(許可)にするIPをリストに追加

> pftpdfilter --add -A 192.168.1.10-12 192.168.1.13 192.168.2.

3.deny(拒否)にするIPをリストに追加

> pftpdfilter --add -D 192.168.1.10-12 192.168.1.13 192.168.2.

4.指定したIPをリストから削除

> pftpdfilter --del 192.168.1.10 192.168.1.11

▲TOP

自己破産 | 債務整理 | 過払い | 借金返済 | 法律 弁護士
dmy
low_l dmy low_r