「商用ファイアウォールアプライアンスは欲しいが、年間ライセンス費用まで含めると予算が到底足りない」——情シス担当者から、こんな相談が絶えません。
単純なルーターのパケットフィルタリングだけでは、現代の攻撃に対応しきれないのが実情です。しかし商用の次世代ファイアウォール(NGFW)は初期費用と保守費用が重なり、中小企業にとって現実的でないケースも多い。
この記事では、商用NGFWに匹敵する機能を無料で提供するオープンソースファイアウォール「OPNsense」を取り上げます。仕組みから実際の設定手順まで、現場で使えるレベルで解説します。IDS/IPS・VPN・Webフィルタリングを活用して中小企業ネットワークを守る方法を、ステップごとに紹介します。

OPNsenseとは?(概要・なぜ今注目されるか)
OPNsenseは、FreeBSDをベースとしたオープンソースのファイアウォール/ルーターディストリビューションです。2015年にpfSenseからフォークして開発が始まり、現在はDeciso B.V.が主導しながらコミュニティと共に継続的に改善されています。
重要なのは「無料で商用NGFWに匹敵する機能を持つ」という点です。主な機能を整理すると次のとおりです。
・ステートフルパケットフィルタリング: 通信の「状態」を追跡し、不正なパケットをレイヤ3/4で遮断
・IDS/IPS(侵入検知・防御): Suricataを統合。通信内容をディープインスペクションし、既知の攻撃パターンを検知・遮断
・VPN: OpenVPN・WireGuard・IPsecに対応。リモートワーク環境の構築から拠点間接続まで対応
・Webプロキシ・URLフィルタリング: 従業員からの不審サイトアクセスを制御
・GeoIPブロッキング: 国別IPレンジで不要な海外通信を遮断
・NetFlow/sFlow: ネットワークトラフィックの可視化と異常通信の把握
・DHCP・DNSリゾルバー: 内部ネットワークの名前解決とIPアドレス管理を一元化
・HAProxy統合: リバースプロキシ・負荷分散を設定UIから構成可能
これらをWebUIから設定できるのが大きな強みです。コマンドラインの深い知識がなくても構成できます。
【参考】pfSenseとの主な違い
同じ系統のpfSenseと比較した場合、OPNsenseは以下の点で異なります。
・アップデート頻度: OPNsenseは毎月マイナーアップデートがリリースされ、セキュリティ対応が速い
・UIの近代化: OPNsenseのUIはBootstrap採用でモバイルでも操作しやすい
・Suricataの統合度: OPNsenseはIDS/IPSのUI統合が充実しており、ルールセットの管理が容易
・プラグイン体系: OPNsenseのプラグイン管理はFriendsofOPNsenseプロジェクトで整理されている
2023年にNetgateがpfSenseのライセンス変更を行ったことで、OPNsenseへの移行を選ぶ組織も増えています。
ネットワーク境界を狙う脅威(敵を知る)
OPNsenseの価値を理解するには、まず現代の組織ネットワークがどのような脅威にさらされているかを知ることが重要です。
シンプルなルーターでは防げない攻撃
家庭用ルーターや単純なL3スイッチの「ポートフィルタリング」は「このポートは通す、このポートは遮断する」という二択の判断しかできません。しかしこれでは次のような攻撃を防げません。
・公開サービスへの不正アクセス: ポート443や22が開いていれば、そこを通じた攻撃は素通りします
・マルウェアのC2通信: 感染端末が外部のコマンド&コントロールサーバーと443番ポートのHTTPS通信で指令を受けても、単純なファイアウォールは通信内容を検査できません
・ドライブバイダウンロード: 社員が悪意のあるサイトにアクセスしてマルウェアをダウンロードしても、URLフィルタリングなしでは遮断できません
・侵害後の横移動: 外部からの通信のみをフィルタリングする設計では、内部での不正な通信を検知できません
OPNsenseが対応できる脅威の範囲
OPNsenseはこれらに対して次の防御を提供します。
・ディープパケットインスペクション(DPI): 通信ヘッダーだけでなくペイロードも検査し、攻撃パターンを含む通信を検知
・シグネチャベースの脅威検知: Suricataに統合された公開シグネチャ(ET/Proofpoint等)で既知の攻撃パターンを自動遮断
・異常トラフィック検知: 通常と異なるポートや宛先への大量通信を可視化して気づきを得る
・DNS over HTTPS(DoH)のブロック: DNSフィルタリング回避に使われるDoH通信を制御
ただし注意点として、OPNsenseはシグネチャに登録されていない未知の攻撃(ゼロデイ)には対応できません。また暗号化されたTLS通信の内部は、SSLインスペクションを構成しない限り検査できません。「完全に守れる」わけではなく、あくまでも多層防御の重要な一層として機能します。
具体的な防御手順
ここでは、OPNsenseを中小企業ネットワークに導入・設定する実践的な手順を解説します。
1. ハードウェア選定とインストール
OPNsenseはx86-64アーキテクチャで動作します。推奨スペックは公式ドキュメントに記載されていますが、一般的な目安として以下を参考にしてください。
| 規模 | 想定環境 | 推奨スペック |
|---|---|---|
| 小規模(~20人) | 事務所1拠点 | Intel Celeron/N100以上、RAM 4GB以上、SSD 16GB以上、NIC 2ポート |
| 中規模(20~100人) | 複数拠点+VPN | Intel Core i3以上、RAM 8GB以上、SSD 32GB以上、NIC 2~4ポート |
| IDS/IPS有効時 | トラフィック検査あり | マルチコアCPU推奨(Suricataはマルチスレッドで動作) |
既存の古いPCを再利用することも可能です。ただしNICが2ポート以上必要です(WAN側とLAN側の分離が必須)。
インストールはOPNsense公式サイトからISOイメージをダウンロードし、USBメモリに書き込んでブートするだけです。セットアップウィザードに従ってWAN/LANのIPアドレスを設定すれば、基本的な起動は完了します。
2. ファイアウォールルールの基本設計
OPNsenseはデフォルトで「WAN側からの着信はすべて拒否」「LAN側からの発信はすべて許可」という設定になっています。この基本設計を崩さないことが重要です。
まず確認すべきルールの原則は次のとおりです。
・デフォルト拒否: 明示的に許可したもの以外はすべてブロックする(Allow List方式)
・最小許可: 業務に必要なポートと宛先のみを許可する
・ルールの順序: OPNsenseはルールを上から順に評価し、最初にマッチしたルールを適用する
・ロギングの有効化: 重要なルールには必ずログを有効にして証跡を残す
Webサーバーを公開する場合の想定例として、次のようなルール設計が考えられます。
# 想定例: Webサーバー(192.168.10.10)を公開する場合のWANルール # ルール1: HTTPS(443/tcp)のみ許可 Action: Pass Protocol: TCP Src: any Dst: 192.168.10.10 Port: 443 Log: On # ルール2: HTTP(80/tcp)を許可(HTTPSへのリダイレクト用) Action: Pass Protocol: TCP Src: any Dst: 192.168.10.10 Port: 80 Log: On # ルール3: それ以外はすべてブロック(デフォルトルール) Action: Block Protocol: any Src: any Dst: any Log: On
社内からインターネットへの発信も制限するなら、LAN側のアウトバウンドルールで宛先ポートを絞ります。一般的には80・443・53(DNS)・123(NTP)のみ許可し、それ以外をブロックするところから始めるのが現実的です。
3. IDS/IPS(Suricata)の有効化と設定
OPNsenseのIDS/IPS機能はSuricataが担います。設定はWebUIの「サービス」→「侵入検知」から行います。
インラインIPS(Inline Mode)vs IDSモードの選択が最初の判断点です。
・IDSモード(検知のみ): 不審な通信を検知してアラートを出すが、通信は止めない。誤検知があっても業務が止まらない。最初はこちらで様子を見るのが安全
・インラインIPSモード(検知+遮断): 不審な通信を即座にブロックする。強力だが誤検知でビジネスアプリが止まるリスクがある
有効にするルールセットは、無料で利用できる「ET Open(Emerging Threats Open)」から始めるのが無難です。プロ版のET Proは有料ですが、シグネチャの質と鮮度が向上します。
# Suricata 有効化の流れ(WebUIでの操作手順 概要) # 1. Services → Intrusion Detection → Settings # 2. Enabled にチェック、IDS/IPS Modeを選択(まずIDSから推奨) # 3. Interfaces: WAN、必要に応じてLANも選択 # 4. Download: ET Openルールセットを選択してダウンロード # 5. Scheduleタブで自動更新スケジュールを設定(推奨: 毎日) # 6. Applyで設定を反映
有効後はアラートログを定期確認します。誤検知が多いルールはSuppressリストに追加して除外できます。
4. VPNの設定(リモートアクセスVPN)
在宅勤務や外出先からの社内システムアクセスに向けて、OPNsenseでVPNを構成できます。現在最もシンプルに構成できるのはWireGuardです。
# WireGuard 設定の概要(VPN → WireGuard) # サーバー側: # - ローカルキーペアを生成(UIで自動生成) # - リスニングポート: 51820/UDP を指定 # - トンネルネットワーク(例: 10.0.100.0/24)を割り当て # クライアント(PC)側: # - WireGuardアプリ(Windows/macOS/Linux対応)をインストール # - OPNsenseのUIからクライアント設定をエクスポート(QRコードやconfファイル) # - クライアントアプリにインポートして接続
WireGuardはOpenVPNと比べて設定が少なく、パフォーマンスも優れています。ただし古いOSやデバイスへの対応はOpenVPNの方が広い場合があります。
5. GeoIPブロッキングで不要な外部通信を絞る
業務上、特定の海外からのアクセスが必要ない場合は、GeoIPブロッキングで攻撃者の大半を門前払いできます。
OPNsenseではAliasという「IPアドレスのグループ」機能を使います。Aliasで「日本以外のIPアドレス一覧」を定義し、それをファイアウォールルールのソースとして指定するだけです。
# GeoIPブロッキングの設定手順(概要) # 1. Firewall → Aliases → Add # - Type: GeoIP # - 国を選択(例: ブロックしたい国にチェック) # 2. Firewall → Rules → WAN # - Action: Block # - Source: 作成したGeoIP Alias # - Description: "GeoIP Block" # - 既存の許可ルールより上に配置
GeoIPブロッキングだけで攻撃をゼロにはできませんが、無駄な攻撃トラフィックを減らしてIDS/IPSのアラート件数を抑える効果があります。GeoIPブロッキングの効果と限界についてはGeoIPブロッキングの設定と限界で詳しく解説しています。
中小企業でも今日からできること
OPNsenseの全機能を一気に有効化しようとすると、設定ミスや誤検知で業務が止まるリスクがあります。以下のステップで段階的に進めることを推奨します。
・ステップ1(1週間目): OPNsenseをインストールし、既存ルーターと置き換える。まずはデフォルトのファイアウォールルールで様子を見る
・ステップ2(2週間目): IDS/IPSをIDSモード(検知のみ)で有効化。アラートを1週間観察し、誤検知パターンを把握する
・ステップ3(1か月目): GeoIPブロッキングを追加。業務に支障がなければ、IDSをIPSモード(遮断)に昇格させる
・ステップ4(2か月目以降): VPN構成、Webプロキシ、アウトバウンドフィルタリングへと機能を拡張する
一人情シスが運用するには、無理に複雑な設定を入れるより「シンプルに動かし続けること」の方が価値があります。
また、OPNsenseはNetFlowエクスポートに対応しているため、別途Grafana等と組み合わせれば通信の可視化ダッシュボードを構成できます。詳細はNetFlow・IPFIXでネットワークを可視化する入門ガイドを参考にしてください。
よくある誤解と注意点
【誤解1】「OPNsenseを入れれば完全に安全になる」
ファイアウォールはセキュリティの一層に過ぎません。エンドポイントセキュリティ、パッチ管理、従業員教育との組み合わせが必要です。また、適切にルールを設計・更新し続けなければ、時間とともに効果が薄れます。
【誤解2】「古いPCでも十分な性能が出る」
IDS/IPS(Suricata)を有効化するとCPU負荷が大きく上がります。ギガビット回線でフルスループットを出しながらIPS検査を行うには、マルチコアCPUと十分なRAMが必要です。一般的には、スループット要件を事前に計算してハードウェアを選定することを推奨します。
【誤解3】「設定は最初の1回で完了する」
OPNsenseは月次で新バージョンがリリースされます。シグネチャの自動更新を設定するだけでなく、OPNsense本体のアップデートも定期的に適用が必要です。更新を怠るとOPNsense自体に脆弱性が蓄積します。
【注意】無停電電源装置(UPS)との連携
ファイアウォール機器は電源断に弱く、突然のシャットダウンで設定ファイルが破損するケースがあります。OPNsenseはNUTプロトコルでUPSと連携できます。導入時はUPSとの接続も検討してください。
【注意】サポート体制の考え方
オープンソースであるため、商用製品のような24時間サポートはありません。OPNsenseのDeciso社はサブスクリプション型のサポートを提供していますが、自社での対応力と外部リソースを組み合わせた計画が必要です。
LinuxサーバーとOPNsenseを組み合わせたインフラ運用については、姉妹サイトLinuxMaster.JPでもLinux基盤の設定・管理を詳しく解説しています。
OPNsenseが実装するNGFWの機能全般については次世代ファイアウォール(NGFW)とは?で基礎概念から整理しています。

本記事のまとめ
OPNsenseは、中小企業が低コストでNGFW相当のセキュリティを実現するための現実的な選択肢です。
| 機能 | OPNsenseでの対応 | 優先度 |
|---|---|---|
| ステートフルファイアウォール | デフォルトで動作(設定不要) | 即日 |
| IDS/IPS(脅威検知) | Suricata + ET Openルールセット | 1週間以内 |
| GeoIPブロッキング | AliasのGeoIPタイプで設定 | 1か月以内 |
| リモートアクセスVPN | WireGuard / OpenVPN | 業務要件に応じて |
| 通信の可視化 | NetFlow + Grafana連携 | 余裕ができたら |
重要なのは、完璧な設定を目指すより「動かし続けること」です。最初はシンプルな構成から始め、ログを見ながら少しずつチューニングしていく姿勢が、長期的に安定した運用につながります。
PR
ゼロトラストネットワーク[実践]入門(野村総合研究所・NRIセキュアテクノロジーズ)
ゼロトラストの概念から実際のネットワーク設計・製品選定まで体系的に解説。OPNsenseなどのオープンソースNGFWをより深く活用するための設計思想を学ぶのに最適な一冊です。
