どうも、クーです!
サーバーやネットワークを扱ううえで設定が必要なのが、そう、ファイアウォールですね。
ファイアウォールでポートを制限したり、IPでアクセスを制限したり、、、
そんなファイアウォールがどんな仕組みで動いているのか、
ふと気になりまして調べてみました!
ファイアウォールとは
既にご存知かと思いますがファイアウォールとは何かといいますと、
アクセスを制限するためのソフトウェアやハードウェアのことになります。
IPだったりポートだったり、決まったルールで通信を監視し、問題がある通信を防ぐことができます。
ファイアウォールの仕組み
ファイアウォールには3種類ほどありまして「パケットフィルタ型」「サーキットレベルゲートウェイ型」「アプリケーションゲートウェイ型」があります。
「パケットフィルタ型」はOSI参照モデルのネットワーク層やトランスポート層のIPやTCP、UDPの条件で通信の制御を行う形になります。
IPの通信パケットを監視し、ポートや通信の内容によって通信を許可するかどうかを制御します。
基本的にファイアウォールと呼ばれるものはこの形が多いそうです。
「サーキットレベルゲートウェイ型」はIPパケットの監視ではなく、特にトランスポート層にて通信を制御します。
こちらも指定されたルールによって通信を制御しますが、動作としてはネットワーク外部のホストからの通信をファイアウォール本体が中継することで、外部ホストと内部ホストの通信を、外部ホストとファイアウォールの通信、およびファイアウォールと内部ホストの通信に置き換えるという仕組みになります。
そのため、NATなどの仕組みがなくても内外の通信がファイアウォール越しに行えるといった利点があります。
「アプリケーションゲートウェイ型」はHTTPやFTPなどのプロトコルに対し、アプリケーション層の制御情報に基づいて、設定したルールに従い通信を制御します。
「プロキシサーバー」とも呼ばれており、外部との通信をプロキシサーバーが中継します。
このように制御層の違い、制御対象の違いによっていくつかのファイアウォールが存在する形となります。
最後に
ファイアウォールについては通信を制御できるものという認識しかなく、
今回調べてみて制御するレベル、対象の違いでファイアウォールが分かれていることを知ることができ、勉強になりました!
今後もときどき、このように普段使っているけど深くは知らないシステムをまとめていこうかと思います。
以上、クーでした!