僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
zero_voteとかいう文字列を含む、Webサーバへのアタックがいいかげんうざくなってきた。
404しか返してないけど。
残念ながらPlamo-4.21(以前)に入ってるiptables-1.3.1(以前)にはstringマッチはサポート
されていないようだ。
で、iptablesを入れ換えてみる。
ダウンロードサイトから適当なものを頂戴して、まずはデスクトップに。
iptables-1.3.7 $ sudo make KERNEL_DIR=/usr/src/linux ; Plamoの既存iptablesを削除 iptables-1.3.7 $ sudo removepkg iptables iptables-1.3.7 $ sudo make install KERNEL_DIR=/usr/src/linux
テストの為にデスクトップにもapache2を突っ込む。
何も考えることなくhttpd-2.2.3をmake installする。
httpd.confをいじり、"It worked!" を確認。
余計と思いつつ、index.htmlを適当にいじっとく。
; 同じものを用意 $ ln -s index.html newindex.html $ sudo iptables \ -t filter -A INPUT \ -p tcp -i eth0 \ -d $HOST_IP \ --dport http \ -m string --string "new" \ --algo bm \ -j DROP
--algo にちょっと試行錯誤した。man 8 iptablesすると
bmまたは
kmpで、
パターンマッチング(の?)アルゴリズムを指定するっぽい。
で、適当な別PC(でなくともいいが)でテスト。
user@host:~$ w3m -dump_head http://desktop.domain/index.html
HTTP/1.1 200 OK
Date: Sun, 21 Jan 2007 03:15:24 GMT
Server: Apache/2.2.3 (Unix)
Last-Modified: Sun, 21 Jan 2007 03:07:51 GMT
Etag: "XXXXXX-XXX-XXXXXXXX"
Accept-Ranges: bytes
Content-Length: 3209
Connection: close
Content-Type: text/html
user@host:~$ w3m -dump_head http://desktop.domain/newindex.html
w3m: Can't load http://desktop.domain/newindex.html.
OK.
鯖にも入れた。普通の接続は受け入れるが、いくらかは肘鉄できる。
htmllintからアクセスさせると、
Another HTML-lint error! 指定されたHTML (http://www.kuzuore.com/zero_vote) を取得することができませんでした。 500 Server closed connection without sending any data back
しかし、↑文字列を含む、この投稿も、当然受け付けなくなった:-)
-s ! $LOCALNET/MASK も加える。
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。