検索
連載

サーバの要塞化とTCP/IPの基礎知識ファイアウォール運用の基礎(2)(2/3 ページ)

PC用表示 関連情報
Share
Tweet
LINE
Hatena

サービスとポート番号

 パケットフィルタリングは、送信先アドレスと送信元アドレスをもとにパケットのフィルタリングを行います。ここでいう“アドレス”とは、IPアドレスと、サービスのポート番号から成ります。IPアドレスはインターネット上のホストを特定しますが、ポート番号は、そのホスト上でパケットを送受信するアプリケーションを特定します。


図2 ホスト間で“ポート”を介して通信が行われる仕組み。通信するアプリケーション(サービス)に対して相手先のポートは決まっているため番号が明示されているが、送信元のポートはその場に応じて決められるため「xxx」「zzz」としている

 IPアドレスが住所だとすると、ポート番号は各サービスの窓口のようなものです。例えば、SMTPは25番、POPは110番というふうに、主要なサービスには「well-knownポート」と呼ばれるポート番号が割り当てられています(図2)。これはサーバ側のポートですが、クライアント側ではOSが適当に割り当てるポート(通常、1023番より大きいポート番号が割り当てられる)が使用されます。このように、IPアドレスとポート番号の組み合わせを使用することによって、クライアントとサーバ間で、お互いのアプリケーションに確実にパケットを届けることができるのです。

 さらにTCPでは、データのやりとりを始めるまでに、「3ウェイ・ハンドシェイク」と呼ばれる手順で接続を確立する必要があります。3ウェイ・ハンドシェイクでは、「SYN」「SYN+ACK」「ACK」という3種類のフラグがセットされたパケットがやりとりされます(図3)。


図3 クライアント〜サーバ間では、TCP/IP通信が行われるまでに、上記のようなやり取りが発生する

 ここで、(1)のSYNフラグが立ったパケット(接続要求)を待ち受けている状態は、サーバ側のポートが「LISTEN」状態にあるといいます。また、(3)の接続が確立された状態を「ESTABLISHED」な状態にあるといいます。

 例えば、標準的な構成でインストールされたSolaris 8のポートの状態を調べると、以下のようになっています(リスト1)。


リスト1 Solaris 8のインストール直後のポートの状態

 ここで、(1) (2)はそれぞれサーバ側とクライアント側のIPアドレスとポート番号、(3)が接続の状態を表しています。特に、(3)でLISTENとなっているポートは、ポートが開いている状態、つまり接続を受け付ける状態にあることを表しています。ここで、ポートを開いているのは、サービスを提供しているプロセス(アプリケーション)です。つまり、ポートがLISTEN状態にあるということは、そのポートを開いているプロセスが必ず存在します。この状態で、起動しているプロセスを調べると、以下のようになっています(リスト2)。


リスト2 起動中のプロセスの一覧

Copyright © ITmedia, Inc. All Rights Reserved.

Security & Trust 記事ランキング

  1. セキュリティ運用「自動化やAI活用が不可欠」言うは易し――現状プロセスを分析する4つの方法、AIも働きやすくする3つの環境整備ポイント
  2. ドラマでは描かれないセキュリティ対策の現実――ハッカー描写の監修もする上野宣氏が示す「ゼロトラスト」の有効性と移行への3フェーズ
  3. 「個人」なら手口を知っておくだけでも有効 「情報セキュリティ10大脅威 2025」の解説書をIPAが公開
  4. 全社訓練や漫画などセキュリティ対策を先進するfreee、全てを守ろうとする前に考えたい「積極的諦め」とフレームワーク活用のススメ
  5. 「ガバナンスとセキュリティがAIエージェント活用の鍵」 IBMが新機能を発表
  6. 外部公開資産から内部サーバまで、企業の脆弱性を徹底診断するサービス ソフトクリエイトが提供開始
  7. Windows OSやMicrosoft Officeが「緊急」 Microsoftが2025年5月の月例セキュリティ更新プログラムを公開
  8. あの業界も? チェック・ポイントが明かす”ランサムウェア攻撃の主要ターゲット”
  9. 名和氏がランサムウェア7事例の教訓とともに明かす、対策を自動化、最適化、重点化する秘訣、アダマール積とは
  10. 流行中の「アタックサーフェスマネジメント」は使いものになるか? 根岸氏、辻氏、piyokango氏鼎談に見る3つの論点