ファイアウォールは、ネットワークに入ってくる通信を入口で確かめ、決めたルールに合うものだけを通す仕組みです。オフィスビルの警備ゲートが入館証を確認して許可された人だけを中へ通すように、通信元や宛先、使うポート番号などを見て、許可ルールに合う通信だけを通過させます。
社内ネットワークへの外部からのアクセスを制御する、サーバーを公開するときに使わないポートを閉じる、クラウド環境で接続元の IP アドレスを絞る、開発環境と本番環境がお互いに届く範囲を分ける。どれもファイアウォールの仕事です。不要な通信や怪しいアクセスを入口で減らせるので、何かあったときに被害が広がりにくくなります。
ルールは足すより減らすほうが難しい
設計の出発点は「必要な通信だけを許可する」です。問題は運用が始まってからで、「一時的に開けておいて」と頼まれて足したルールほど、閉じ忘れられがちです。開けっぱなしの許可が積み重なると、そこが抜け穴になります。
ルールを変えるときは、何のために、いつまで開けるのかを記録しておきます。定期的に見直して、許可しすぎていないかを確かめる。遮断のログを見て、止めるべき通信がちゃんと止まっているかも検証します。
警備ゲートは入館証を確かめますが、入った人が中で何をするかまでは見ていません。通した通信が安全だと保証するわけではないので、アプリの弱点への対策や、ログインの仕組み、監視と組み合わせて守ります。Webアプリへの攻撃を中身で見分けたいなら、WAFが役に立ちます。