トップページ > IP Filter関連 > Solaris10でのIPFilterファイアウォールの設定
カテゴリー
オラクルエンジニア通信
サポートページ
マニュアルページ
ソフトウェアダウンロード
中古UNIXマシン購入
blogs.sun.com
お勧めサイト
プライベートリンク

Solaris10でのIPFilterファイアウォールの設定

ここではSolaris10にバンドルされたIPFilterファイアウォールの設定方法を紹介する。
IPFilter自体は高機能なファイアウォールなので、高性能なシステム上で構築して本格的なルーター&F/Wとして稼働させてもよいが、通常 は専用機で済ませるだろうから、SolarisのIPFilterはシステム単体を守るパーソナルファイアウォール的な使い方が多いと思われる。

フィルタリングのルールなどは他にいくらでもドキュメントがありそうなので、ここではSolaris10でIPFilterを有効にする方法までを簡単に 紹介する。

まず、以下のように/etc/ipf/pfil.ap ファイルを編集し、IPFilterを使用するインタフェースのコメントアウトを外す。

bash-3.00# vi /etc/ipf/pfil.ap
...
#hme    -1      0       pfil
#qfe    -1      0       pfil
#eri    -1      0       pfil
ce      -1      0       pfil
...

あとは、pfilサービスを再起動して、使用しているインタフェースを unplumb/plumb で再構築すればよいが、システムの再起動の方が手っ取り早い。(どうせネットワーク的にダウンするので・・・)

bash-3.00# init 6

再起動に以下のコマンドでインタフェースに組み込まれているモジュールを確認する。

bash-3.00# ifconfig ce0 modlist
0 arp
1 ip
2 pfil   <-- これが見えればOK
3 ce

次にIPFilterのルールを/etc/ipf/ipf.confファイルに作成する。
/usr/share/ipfilter/examplesにサンプルファイルがいっぱいあるのでこれを参考にするとよい。

以下の例は、設定しているマシンがWebサーバで80番ポートのみアクセスを許可している。

bash-3.00# cat /etc/ipf/ipf.conf
...
pass in quick on ce0 from any to 192.168.0.1/32 port = 80 keep state
block in all

あとはipfilterサービスを有効にするだけ。

bash-3.00# svcadm enable ipfilter
bash-3.00# svcs ipfilter
STATE          STIME    FMRI
online         16:17:02 svc:/network/ipfilter:default
bash-3.00# modinfo | egrep 'ipf|pfil'
118 7bb70000   3318   -   1  pfil (pfil Streams module 1.61)
118 7bb70000   3318 229   1  pfil (pfil Streams driver 1.61)
160 7bfae000  23098 228   1  ipf (IP Filter: v4.0.2)
bash-3.00# ps -ef | grep ipmon
    root  1757     1   0 16:17:02 ?           0:00 ipmon -Ds

上記のipmonデーモンは単なるモニタリングデーモンでIPFilterの稼働状況の目安にはなるが、F/Wの稼働状況を直接示すものではないので注 意。
稼働状況をつかむには上記のようにipfやpfilモジュールがロードされていることや、ifconfig ce0 modlist コマンドでpfilモジュールが有効になっていること、また以下に示すようにipfstat コマンドで適用ルールをチェックすることで可能である。

bash-3.00# ipfstat -io
pass in quick on ce0 from any to 192.168.0.1/32 port =  80 keep state
block in all

ルールの更新後の反映は以下のコマンドで行う。

bash-3.00# ipf -Fa -f /etc/ipf/ipf.conf

一時的にIPFilterを無効にする場合は以下のように現在適用されているルールをフラッシュして、ipfilterサービスを無効にする。

bash-3.00# ipf -Fa
bash-3.00# svcadm disable ipfilter

永続的に無効にする場合は、はじめに編集した/etc/ipf/pfil.ap も元に戻し再起動する。

========================================
※詳しい情報は以下のトレーニングコース参照
Solaris 10 ネットワーク管理 II
========================================

オラクルユニバーシティSolaris系技術トレーニング一覧

Solarisお勧め書籍

Solaris 11.2 システムハンドブック
Oracle Solaris 11 試験対策本(OCA)