tcpserver.patch ------------ http://www.jp.qmail.org/ (日本語) http://cr.yp.to/ (本家)で公開されている、ucspi-tcp 0.88 のtcpserver用patchです。 このパッチを適応することで、同一IPからの同時アクセス数の最大値を設定する事ができます。 (接続オプションに追加する形になっています) -cオプションの各IPに有効バージョンと思って下さい。 例えば、-i5 を指定すると、同一IPから、5アクセスまでは正常接続できますが、それより多くのアクセスはすべてDisconnect(接続拒否)されます。 多分、バグはないと思いますが、このパッチを適応した事による、バグ・セキュリティホール等ありましたら、ご連絡頂けると幸いです。 (なるべく早く修正したいと思います) パッチのあてかたは、tcpserver.patchをucspi-tcp 0.88のソースコードと同じ場所にコピーして、その場所に移動してから、 % patch < tcpserver.patch で大丈夫だと思います。 通常のucspi-tcp 0.88をインストールした後、patchをあてて、再度makeして、(make setup checkはしないで)cp tcpserver /usr/local/bin/tcpserver_ikとして、パッチバージョンは別プログラムとしてインストールしておくと良いかもしれません。(必要のあるときだけパッチ有りバージョンを利用できます) 利用方法には、比較的高負荷なhttpd/Anonymous ftpdを使用する際のアクセス制限や、特定IPからのDoS攻撃の対処として利用できると思います。 接続オプション(パッチにて追加分のみ) -i n:同一IPから n を越えた接続をさせません。 n個のprog が同時に起動していたら、どれか一つが終了するまで新しい接続を受け付けません。 (この場合、接続し、すぐに接続を切ります) もし、0が指定されている場合は、制限を行いません。 (つまり、パッチ適応前の状態と同一の動作を行います) n は0以上の整数でなければなりません。 デフォルト: 0 転載について このプログラム(パッチ)・テキスト等の許可のない転記・転載・再配布等は一切禁止します。 どうしても転載・転記・再配布等行いたい場合 ituki@fc.to までメールでご相談下さい。 著作権について パッチによって新規に加えられる部分の著作権は、Ituki Kirihara/NIが保持しています。 それ以外の部分は、ucspi-tcp 0.88の作者(D. J. Bernstein)が保持していると思われます。 詳細は上記URLをご覧下さい。 Ituki Kirihara/NIはこのプログラム(パッチ)を使った(適応した)事によって生じた一切の責任を負いません。 各自の責任で使用して下さい。 サポート メール ituki@fc.to にて受け付けております。バグ・意見等ありましたらどうぞ。 時間がないので対応できるかは怪しいですが、がんばります(^_^; 以下の場所で関連情報等を公開しています http://fc.to/ituki/ このホームページは Ituki Kiriharaの趣味のページです(^_^; バージョン履歴 version 2.00 2004/07/10 アルゴリズム変更 version 1.00 2001/07/06 公開。 (c) Copyright 2001 Ituki Kirihara/NI All rights reserved.