Develop and Download Open Source Software

OpenSource Downloads

7-Zip  (4,208)  
HandBrake Japanese Language Version  (3,353)  
CrystalDiskInfo  (1,743)  
CotEditor  (1,120)  
CrystalDiskMark  (866)  
Boookends  (788)  
SMPlayer  (642)  
えこでこツール  (599)  
Tera Term  (595)  
10  FFFTP  (579)  
11  Cabos  (530)  
12  BathyScaphe  (494)  
13  ffdshow  (481)  
14  MergeDoc  (464)  
15  ギコナビ  (438)  
More >>

最近ブックマークされた記事

fwknopと単一パケット認証(SPA)

2008年05月22日 12:21 Robert-D.-Currier(2008年5月20日(火)) 1 2 3 4
 サーバをファイアウォールの背後に隠して保護することは、システム管理者にとってベストプラクティスだが、決して万全ではない。隠しておいても、nmapnessusといったネットワークスキャナを使えば見える。SMTPやHTTPのようなサービスには、当然、外部からのアクセスがあるし、社内限定のサーバであっても、出張中のスタッフによる社外からのアクセスがあったときは、これに応じなければならない。この問題に悩んでいる企業は、単一パケット認証のためのオープンソースユーティリティ、 fwknop を使用してみたらどうだろう。ネットワーク上のいたずらからサーバを保護するのにきっと役に立つ。

 単一パケット認証(SPA)は、2003年に使われはじめたポートノッキング手法の派生形である。Wikipediaでポートノッキングを調べると、「ファイアウォールで守られたポートを外部に向けて開く手法。前もって指定されている閉じたポートに対して一連の接続要求を行ったとき、その接続要求が正しい順序で受信されたと確認されると、ファイアウォール規則が動的に変更されて、接続要求を送ったホストが当該ポート(群)を通じて接続することを許される」と定義されている。

 単一パケット認証は、ポートノッキングの概念を単一パケットにまで煮詰めたものと言える。前もって指定されたポートに一連のパケットを送るのでなく、ペイロードはただ1つのパケットであり、その中に「ノック」がコード化されている。受信されたキーが正しければ、SPAアプリケーションがファイアウォール規則を変更して、認証されたホストへのアクセスを許可する。以下では、fwknop(FireWall KNock OPerator)のインストールとテストを通じて、この認証過程をたどってみることにしよう。

 fwknopは、Cypherdyne.orgのセキュリティ研究員であり、 Linux Firewalls の著者でもあるMichael Rash氏によって開発された。バイナリパッケージ、ソースパッケージ、tarballのどの形でもダウンロードできる。本稿では、アプリケーションの機能がよく理解できるよう、tarballを使ってソースからインストールする。

 fwknopをダウンロードしてインストールする前に、テスト用に2台のホストを用意しておく必要がある。1台が単一パケット認証クライアントとなり、もう1台がサーバとなる。サーバとして使うマシンについては、実運用マシンでないことを十分に確認しておくこと。すべてのSSH接続を明示的に拒否するようiptablesアクセスポリシーを設定するので、実運用マシンであってはならない。また、テストプラットフォームにはローカルマシンを使うことを強くお勧めする。ファイアウォールポリシーを強化したあとでリモートサーバへのアクセスを復活させることは、ときに困難な作業になりかねない。

 fwknopをダウンロードしたら、それを展開して、クライアントとサーバの両方にソースを抽出する。ほとんどのソースディストリビューションには./configureスクリプトがあって、これを通常の「configure, make, make install」手順に使うが、fwknopは異なる。install.plというPerlスクリプトを使い、これでアプリケーションをビルドし、インストールする。install.plが首尾よく実行されれば、動作可能なfwknopがインストールされているはずである。サーバへのfwknopインストールには、rootのアクセス権限が必要になる。root権限がないと、fwknopはサーバでなくクライアントとしてインストールされてしまい、単一パケット認証のテストを進めることができない。

 インストールしたfwknopのセットアップが正しいかどうか、./fwknop_test.plスクリプトで確かめよう。このスクリプトは、インストール先のtestサブディレクトリにある。筆者がCentOS 4搭載のDell PowerEdge 850サーバで実行したところ、121通りのテストをすべて終えるのに約4分かかった。テスト結果はログファイルに出力されるので、その場にいつづけなくても、エラーメッセージを見逃す心配はない。

 fwknopのアクセス制御ポリシーファイルはaccess.confと呼ばれ、fwknopサーバの/etc/fwknopに置かれている。今回のテストでは、認証キー以外にはデフォルトの設定を使う。/etc/fwknop/access.confを編集用に開き、ファイルの末尾までスキップする。KEY:で始まる行が見つかったら、少なくとも8文字からなる文字列をキーに指定する。本稿では"myt3stk3y!"を使った。

最終更新:2008年07月22日 17:07