ここでは、WFAS (セキュリティが強化された Windows ファイアウォール)、そのアプリケーションシナリオ、および共通操作について説明します。

概要

階層型セキュリティモデルの重要な部分として、WFAS は Microsoft から Windows NT6.0 以降に発売されました。 WFAS は、現在の接続状態に基づいて双方向のフィルタリングを提供することで、ローカルコンピュータに出入りする不正なトラフィックをブロックします。 WFAS はまた、NLA ( Network Location Awareness) を使用し、現在の接続状態に基づいて、対応するファイアウォールプロファイルをコンピューターに適用します。 Windows ファイアウォールおよび IPsec (インターネットプロトコルセキュリティ) のセキュリティルールは、MMC (Microsoft 管理コンソール) スナップインで構成されており、WFAS もネットワークの分離ポリシーの重要な部分です。

アプリケーションシナリオ

サーバーが攻撃され、パスワードが破られたと報告する O&M の担当者がますます増えています。これはほとんどの場合、"侵入者"に開かれた"バックドア"が原因です。 侵入者は、コンピュータの開いているポートをスキャンし、脆弱なポート、たとえば Windows のリモートポート 3389 や Linux のリモートポート 22 を通過します。 問題がどこにあるかがわかったので、効果的な対策が講じられます。 具体的には、既定のリモートポートを変更してリモートアクセスを制限することで、これらの"バックドア"を閉じます。 それでは、どのようにリモートアクセスを制限したらよいでしょうか。 たとえば、ECS インスタンス (Windows Server 2008 R2) を使用してリモートデスクトップ接続を制限する方法をここで説明します。

手順

  1. Windows ファイアウォールの状態の表示

    ECS インスタンスの Windows ファイアウォールは、既定では無効になっています。 Win キーを押しながら R キーを押して [ファイル名を指定して実行] ウィンドウを開き、「firewall.cpl 」と入力し、Enter キーを押すと、以下に示すように Windows ファイアウォールコンソールが開きます。



    Windows ファイアウォールを有効または無効にします。



    以下に示すように、Windows ファイアウォールは既定では無効になっています。



  2. Windows ファイアウォールの有効化

    以下に示すように、前の手順により Windows ファイアウォールを有効にします。



    Windows ファイアウォールを有効にする前に、インバウンドルールでリモートポートが開いていることを確認します。開いていないと、自分自身でもリモート接続を確立できません。 ただし、WFAS は既定ではインバウンドルールで RDP ポート 3389 を開きます。 [詳細設定] をクリックします。



    [インバウンドルール] をクリックします。 既定では、"Open RDP Port 3389"のルールが有効になっていることがわかります。



  3. WFAS の設定

    Win キーを押しながら R キーを押して [ファイル名を指定して実行] ウィンドウを開き、「wf.msc」と入力し、Enter キーを押すと、以下に示すように WFAS ウィンドウが開きます。



    1. インバウンドルールの手動作成

      [新規のインバウンドルールウィザード] ウィンドウで、[ポート] をオンにして [次へ] をクリックします。



      [TCP] をオンにして [特定のローカルポート] を"3389"に設定します。



      [次へ] をクリックして [接続を許可する] をオンにします。



      [次へ] をクリックして既定の設定をそのまま使用します。



      [次へ] をクリックしてルールの名前 ("RemoteDesktop"など) を入力し、[終了] をクリックします。



      新しいルールが [インバウンドルール] リストに表示されます。



      上記の手順で、リモートポートが WFAS に追加されますが、アクセス制限はまだ実装されていません。 これからそれを実装します。

    2. IP アドレスのスコープの設定

      作成した[インバウンドルール]を右クリックして、コンテキストメニューの [プロパティ] をクリックします。 表示されたダイアログボックスで、[スコープ] タブをクリックします。 次に、この ECS インスタンスにアクセスできるリモート IP アドレスを追加します。 ここで IP アドレス設定を有効にすると、他の IP アドレスはこの ECS インスタンスにアクセスできなくなります。



      リモート IP アドレスを追加します。



    3. IP アドレスのスコープの検証

      リモート IP アドレスボックスに IP アドレスを任意に追加して、リモート接続に何が起きるのかを見てみます。



      リモート接続がダウンしています。



      それでもリモート接続が確立されている場合は、"Open RDP Port 3389"のルールを無効にするだけです。



      リモート接続がダウンしている場合は、IP アドレスのスコープが有効になっていることを意味します。 ただし、現在 ECS インスタンスに接続することはできません。 どうすべきでしょうか。 ここで ECS コンソールを見てみます。 ECS コンソールにログインし、[スコープ] タブで既に設定したリモート IP アドレスを自身のアドレスに置き換えます (もし仕事環境が Alibaba Cloud に接続されていなければ、インターネットアドレスを入力します)。 これで ECS インスタンスに再度接続します。

      ECS コンソールに入り、対応するインスタンスを見つけて接続します。



      ECS インスタンスにログインします。



      同様に、RemoteDesktop のルールの [スコープ] タブでリモート IP アドレスを変更します。 具体的には、"1.1.1.1"を自身の IP アドレスに置き換えます。



      これで、IP アドレスを追加した後、正常に ECS インスタンスに接続できます。 インターネットアドレスがわからない場合は、ここをクリックして表示します。



      上記の手順は、WFAS を介して、ECS インスタンスに対するリモートアクセス制限を実装します。 他のサービスやポートについても同様に制限を実装可能です。たとえば、あまり使用されないポート 135、137、138、および 445 を無効にしたり、FTP および関連サービスへのアクセスを制限したりします。さらには、ECS インスタンスの保護を最大化します。

コマンドライン操作

  1. ファイアウォール設定をファイルにエクスポートします。
    netsh advfirewall export c:\adv.pol
  2. ファイアウォール設定ファイルをシステムにインポートします。
    netsh advfirewall import c:\adv.pol
  3. 既定のファイアウォール設定を復元します。
    Netsh advfirewall reset
  4. ファイアウォールを無効にします。
    netsh advfirewall set allprofiles state off
  5. ファイアウォールを有効にします。
    netsh advfirewall set allprofiles state on
  6. すべての設定ファイルで、既定では、インバウンドトラフィックをブロックし、アウトバウンドトラフィックを許可するように設定します。
    netsh advfirewall set allprofiles firewallpolicy blockinbound,allowoutbound
  7. “ftp” という名前の規則を削除します。
    netsh advfirewall firewall delete rule name=ftp
  8. ローカルポート 80 のすべてのインバウンドルールを削除します。
    netsh advfirewall firewall delete rule name=all protocol=tcp localport=80
  9. RemoteDesktop のルールを追加して、ポート 3389 を許可します。
    netsh advfirewall firewall add rule name=RemoteDesktop (TCP-In-3389) protocol=TCP dir=in localport=3389 action=allow

リファレンス

Windows 2008 または 2012 のファイアウォールを使用して、ポート、IP アドレス、アプリケーションのアクセスを制限する方法

Alibaba Cloud Marketplace 』で、より多くのオープンソースソフトウェアが入手可能です。