2003年7月30日 更新

独り言: 最近、このページのアクセスがかなり多くなっています。 そんなにファイヤーウォールの構築にみんな悩んでのかしら... 

構築例−3:低価格ファイヤーウォールでの構築例

前のページ HOME


長所: 短所:
この構成は低価格ファイヤーウォールアプライアンスの雄である「SonicWALL」を使った構成の例である。 SonicWALLは基本的にはパケットフィルタリングベースのファイヤーウォールだが、「ステートフルパケットインスペクション」による応答パケットの透過性を高めていることで、通常のパケットフィルタリングよりも設定が簡単でありながら安全性を高めている。
また、NAPTの機能を持っているのでこれによって、1つのグローバルアドレスを使ってLAN側の複数のPCが同時にインターネットを利用できる。

SonicWALLにはいくつかの製品があるが、「SonicWALL XPRS2」以上の製品にはDMZポートが用意されており、外部公開用のサーバをLANから隔離する事が容易になっている。 

このような構成においてのセキュリティポリシは次のようにすると良いと思われる。
というルールにする。

設定内容

■ルータ設定(YAMAHA RTA50iの場合)

コマンド 設定内容
# login password
(パスワード入力)
ルータへ接続する際のパスワードを定義します
# administrator password
(パスワード入力)
ルータの管理用モードへのパスワードを定義します。
# security class 2 on off ルータへの遠隔操作のセキュリティを設定します。
# date 2000-11-03
# time 13:52:02
日付と時間を設定。ルータのログに残る情報にはアタックに関するものもあるので、時間をしっかりと合わせておき、あとで解析し易いようにしておく。
# ip lan address 202.10.10.1/28 ルータのLANインターフェイスのIPアドレスを定義。この値はプロパイダから取得したグローバルIPの内の1つ。
この例では、202.10.10.1を指定している。
(ネットマスクは28ビット、すなわち255.255.255.240)
# nat use off
# nat masquerade off
NATとIP-Masqueradeの機能をOFFにする
# pp line L128 WAN側のインターフェースの通信速度を128Kbpsと定義
# pp select leased WAN側の回線として専用線を使う事を定義
# ip filter 10 reject 192.168.0.0/16 * * * *
# ip filter 11 reject 172.16.0.0/12 * * * *
# ip filter 12 reject 10.0.0.0/8 * * * *
外部からプライベートアドレスでくるパケットは攻撃パケットの可能性が高い為、これを拒否するようにフィルタを作成する。
# ip filter 13 pass * 202.10.10.0/28 established * * 外部からのパケットだが、内部からの要求に対しての応答としての戻りパケットは透過させる為のフィルタ
# ip filter 14 pass * * tcp 20 * 内部からFTPの実行に対して、WAN側からデータ転送用に20番のポートでアクセスしてくるのでこれを許可する。
# ip filter 20 pass * 202.10.10.3/32 tcp,udp * 53,113 外部からのパケットのうち、DNS関係のパケットは内部へ通過させる。この時、内部のDNSサーバのアドレスだけを許可すること。(この例では、202.10.10.2がDNS)
# ip filter 21 pass * 202.10.10.3/32 tcp * 80,443 外部からのパケットのうち、WWW関係のパケットは内部へ通過させる。この時、内部のWWWサーバのアドレスだけを許可する。(この例では、202.10.10.3がWWW)。ポート443はSSLパケット
# ip filter 22 pass * 202.10.10.3/32 tcp * 25 外部からのパケットのうち、メール関係のパケットは内部に通過させる。この時、ルータ内部のメールサーバのアドレスだけを許可する。(この例では、202.10.10.4がメールサーバ)
# ip filter 23 pass * 202.10.10.2/32 tcp * * SonicWALL向けのパケットを許可する。
# ip filter 30 pass * 202.10.10.0/28 tcp,udp 53,123 * UDPベースのパケットはルール13のestablishedなパケットにならないのでDNS(53),ntp(123)については明示的に戻りパケットして定義しておく必要がある。
# ip filter 100 reject * * * * * 外部からのパケットをすべて拒否するフィルタ。本来は定義不要だが、混乱を少なくする為に明示的に定義している。
# ip pp secure filter 10 11 12 13 14 20 21 22 23 30 100 WAN側のパケットフィルタを有効にする
# ip pp route add net default 1 WAN側のポートをデフォルトゲートウェイとして設定
# pp enable leased WAN側のポートを有効にする
# save
# restart


■SonicWallの設定

SonicWALLは設定するにあたり、初期設定と通常設定が存在する。 初期設定は、最初にSonicWALLにブラウザを使って接続した際にウィザードとして起動され、基本的な設定項目を指定する。通常設定は初期設定後であればいつでも設定できる項目となっている。
初期設定の項目はいつでも通常設定で修正が可能なので初期設定を余り真剣に悩む必要はない。 しかし、SonicWALLに割り当てられた初期IPアドレスは「192.168.168.168」になっている為、これについてだけは初期設定で修正しておくべきであると思う。
●初期設定の手順
 SonicWALLの初期設定はLANポートとPCを(HUBで)接続し、ブラウザから
  http://192.168.168.168
 へアクセスする事で開始される。



最初に、管理者のパスワードを新規に登録するように求めてくるので、管理者用パスワードをここで登録する。パスワードには6文字以上の英数字および特殊記号を組み合わせると良い。
(例、 mad%-beem* )

次に、利用する地域のタイムゾーンを確認してくるので、「Japan, Korea(GMT+9;00)」を指定する。

インターネットへの接続形態を確認してくるので、一般的な専用線接続であれば、「割り当てられた2つ以上のIPアドレス」を選択。ADSL等での接続ではPPPoEを選択することになる。

NATの利用は、通常は「NATの利用」を選ぶ。

続いて、専用線接続形態であればWAN側のIPアドレス、WAN側のサブネットマスク、ルータ(この例ではYAMAHA)のアドレス、DNSサーバのアドレス(プロバイダのDNSで良い)を指定する。

続いて、LAN側のアドレスを確認してくるので、LAN側のインターフェースのアドレス、サブネットを指定する。
(例、 192.168.1.1/255.255.255.0)

SonicWALLにDHCPサーバの機能を持たせるなら、ここで指定する。DHCPを使うことでLAN側のクライアントPCで個々にIPアドレスを設定しなくても済むようになる。すでにLAN上の他のDHCPサーバがある場合には「無効」にしておく

以上で初期設定は完了である。「次へ」で先に進むと再起動する旨が表示される。 もし、SonicWALLのLAN側のアドレスを「192.168.168.168」から変更したなら、それに合わせて設定したPCのアドレスも変更するようにする。

●通常設定の手順
初期設定後に、SonicWALLへブラウザを使ってアクセスすると最初に以下のようなログイン画面が表示されます。

ここで初期設定時指定したパスワードを使ってログインします。

ログインが完了すると、最初に”一般”設定の”ステータス”情報が表示されています。 ここには利用しているSonicWALLのファームウェアバージョンやシステムの状況が表示されています。 また、SonicWALLのライセンス登録に関する設定もありますの、指示に基づいてライセンス登録を行ってください。 なおライセンス登録はいつでもできますので、最初に行う必要はありませんが、コンテンツフィルタを使う場合には予めライセンス登録をする必要があります。



”ネットワーク”設定では、SonicWALLのネットワークに関する設定を行います。


”時間”設定では、時間のロケーションとして「Japan, Koria(GMT+9:00)」を指定し、現在の時間を設定します。


”詳細設定”の”イントラネット”設定の画面では、普通は「SonicWALLのWANリンクは、直接インターネットルータに接続」を指定します。 WANインターフェースにルータ以外の機器を配置する場合には、他の指定を行いますが、その場合にはSonicWALLを社内のHUBルータとしてルーティングさせる事ができなくなりますので注意してください。(その場合には、社内の他のルータをHUBルータとして機能させるように設計してください)


”ルータ”設定は、社内が複数のLANセグメントで構成されている場合のルーティング情報を登録します。
小規模のLANで、ネットワークが複数セグメントでない場合には設定は不要です。

”DMZアドレス”には、DMZインターフェース側に割り当てるIPアドレスの範囲を指定します。 ここで指定したアドレスの範囲内で、SonicWALLのDMZポート側にサーバ(メールサーバやWebサーバ)を配置できます。

”DHCP”のセットアップ画面ではSonicWALLをDHCPサーバとして機能させる場合の情報を設定します。 もしすでにDHCPサーバがLAN側にある場合や、DHCPを使いたくない場合は「DHCPサーバの有効」のチェックを外してください。

”詳細設定”の”1対1 NAT”設定画面では、グローバルアドレスとプライベートアドレスとを1対1でNATする設定を行います。 通常はLAN側に配置したメールサーバのアドレスと使っていないグローバルアドレスの1つとNATする事になると思います。 このNATされたアドレス使って、 DMZに配置したメールサーバからLAN側のメールサーバが通信します。 上記の設定では、グローバルアドレス202.10.10.4へのアクセスはプライベートアドレス192.168.1.2へのアクセスになります。 また、このグローバルアドレスはDMZゾーンにしておくよう設定してください。
1:1−NATを指定しなくても、[アクセス]−[サービス]画面でパブリックメール(smtp)サーバとLAN上のメールサーバを登録すれば、DMZ上のメールサーバからの転送が可能になります。 ただし、単にパブリックサーバとして登録すると、WAN側からもアクセス可能になってしまうので、パブリックメール(smtp)サーバを指定した場合には

 動作 サービス  送信元 送信先
 -------------------------------------
 禁止 SMTP    WAN   (サーバIP)LAN

というルールを追加してください。
このとき、LAN側のメールサーバのアドレスを指定しないと、アクセスルールが、

 動作 サービス  送信元 送信先
 --------------------------------------
 許可 SMTP    *    (サーバIP)LAN
 禁止 SMTP    WAN  LAN

となってしまい、WAN上からのアクセスが可能になってしまいます。



”アクセス”の”サービス”設定では、LAN側から許すアクセスや、DMZに対するWAN(やLAN)側からのアクセスの許可を与えます。 LAN側からのアクセスは通常はすべてOKになる事でしょう。 DMZへのアクセスは、必要な分だけ許可するとともにデフォルトでは全て許可しない設定にします。

もし、アクセスのルールを細かく設定したり、サービスの中にないルールを設定したい場合には、”ルール”設定画面から「新規ルールの追加」ボタンを押してアクセルルールを追加する事ができます。


以下の設定ではDMZ上のメールサーバからLAN上のメールサーバへのSMTP(メール)パケットを許可するルールを追加しています。
■qmailの設定(外部メールサーバ)
Mailサーバとして利用するqmailというプログラムのインストールと各種設定については、こちらを参考にしてください。squidのインストールが終了したら、smtprouteファイル編集してqmail宛に届いたメールを内部のメールサーバ(NATで設定されたグローバルアドレス)へ転送します。
.hogehoge.co.jp:[202.10.10.4]
hogehoge.co.jp:[202.10.10.4]
これで"@hogehoe.co.jp"宛のメールは内部のメールサーバへ転送されるようになります。("hogehoge.co.jp"の部分は各自のドメイン名に書き換えてください)