Vistaの地平
|
|
ファイアウォールの設定や管理を行うには、いままで述べたようなGUIの管理コンソールを使う方法だけでなく、コマンド・プロンプト上でnetshコマンドを使っても行うことができる。コマンド・プロンプト上で操作すれば、例えば設定を外部に書き出して簡単にバックアップしたり、ほかのコンピュータに同じフィルタを素早く設定したりすることが簡単になる。
netshコマンドとは、Windows OSのネットワーク・コンポーネントを管理するために用意されている一種のシェルであり、netsh.exeコマンドを使って起動することからこう呼ばれている。例えば、コマンド・プロンプト上で「netsh firewall show config」を実行すれば、Windowsファイアウォールに関する現在の構成情報が表示される。具体的なnetsh firewallコマンドの使い方については、「システム管理者のためのXP SP2展開計画――netshによる設定」を参照していただきたいが、簡単にまとめておくと次のようなコマンドがある。
コマンド | 意味 |
netsh | 引数なしでnetshだけを実行すると、netshのコマンド待ちになる |
firewall | netsh firewallコンテキストに切り替える。以後のファイアウォールの操作はこのコンテキストで行う |
? | コンテキストに応じたヘルプ・メッセージを表示する |
show | 現在の構成情報などを表示する |
set | 各種の設定を行う |
add | Windowsファイアウォールのルールを追加する |
delete | Windowsファイアウォールのルールを削除する |
netsh firewallコマンドの例 | |
netshコマンドには操作対象に応じて各種のコンテキストがある。Windowsファイアウォールを操作するにはnetsh firewallコンテキストに切り替えてから、showやset、addなどのコマンドを実行する。 |
■netsh firewallのプロファイルとの互換性
前回述べたとおり、従来のWindowsファイアウォールには2つのプロファイルしかないが、新しいセキュリティが強化されたWindowsファイアウォールには3つのプロファイルがある。これらの間で互換性を保つため、従来のプロファイルは新しいプロファイルにマッピングされるようになっている。
従来のWindowsファイアウォールのプロファイル | 新しいセキュリティが強化されたWindows Firewallのプロファイル |
ドメイン・プロファイル(DOMAIN) | ドメイン・プロファイル |
標準プロファイル(STANDARD) | プライベート・プロファイル |
(該当なし) | パブリック・プロファイル |
現在のプロファイル(CURRENT) | 現在アクティブなプロファイル |
全部のプロファイル(ALL) | ドメイン・プロファイルとプライベート・プロファイルの2つに対応。パブリック・プロファイルは対象にならない |
ファイアウォール・プロファイルの対応 | |
Windowsファイアウォールには「ドメイン・プロファイル」と「標準プロファイル」の2つしかないが、内部的にはこれらは新しいプロファイルのうち、「ドメイン・プロファイル」と「プライベート・プロファイル」の2つにマッピングされている。Windowsファイアウォール環境では「パブリック・プロファイル」を明示的に指定することはできない。しかし「netsh firewall」コンテキストで「CURRENT(現在のプロファイルのこと)」を指定すると、状況に応じて3つのうちのいずれかのプロファイルにマッピングされる。また「ALL(全プロファイル)」を指定しても、ドメイン・プロファイルとプライベート・プロファイルの2つにしか対象にならず、パブリック・プロファイルは参照/変更できない。 |
このマッピングはnetsh firewallコンテキストでも行われているので、通常はOSによらず、Windowsファイアウォールでは従来どおり、「ドメイン・プロファイル」か「標準プロファイル」のいずれかを指定すればよい。プロファイル名として「CURRENT」を指定すると、現在アクティブなプロファイルに応じて、新しい3つのプロファイルのうちのいずれかが使用される。
例えば次のようなコマンドを実行すると、新しく受信ポートをオープンするための定義が、現在のプロファイルに追加される。Windowsファイアウォールに対して設定を行っても、それは新しいセキュリティが強化されたWindowsファイアウォールの管理画面で内容を確認できる。
※これはWindowsファイアウォールにおいて、TCPの1313番に対し、172.16.0.0/16のネットワークからのアクセスを許可するための受信許可ルールの追加例 |
ただし現在のプロファイルがパブリック・プロファイルなら、追加されたルールはWindowsファイアウォール(netsh firewallコンテキスト)では確認できない。Windowsファイアウォールではパブリック・プロファイルは参照できないからだ。次に述べるnetsh advfirewallコンテキストで確認していただきたい。
「netsh firewall」と「netsh advfirewall」コンテキスト
従来のWindowsファイアウォールでは「netsh firewall」コンテキストを使って操作していたが、セキュリティが強化されたWindowsファイアウォールでは、新しく導入された「netsh advfirewall」コンテキストを使って制御する(advfirewallはadvanced firewallの略)。まずは現在のプロファイルを表示させてみよう。
C:\>netsh ……netshコマンドの起動 |
ファイアウォールのルールの表示や追加などは、netsh advfirewall firewallサブコンテキストで行う。ルールの一覧を表示させるのは「show rule」コマンドだ。
netsh advfirewall>firewall ……firewallサブコンテキストへの切り替え |
ルールの追加はadd ruleコマンド、削除はdelete rule、ルールの修正はset rule、表示はshow ruleである。従来のWindowsファイアウォールと違い、大幅に機能が強化されているので、構文も複雑になっている。以下にルールを追加する例を示しておく。
※TCPの80番(HTTP)への送信を禁止するルールの追加例。プロファイルはprivateとpublicの2つ |
これをGUIの管理画面で確認すると、次のようになっている。このように、コマンドラインでもGUIでも同じようにファイアウォールを制御できる。netshコマンドの詳細な使い方については、netshコマンドに内蔵さているヘルプ・メッセージや、[ヘルプとサポート]ツールなどを参照していただきたい。
追加したルールの例 | ||||||
netsh advfirewall firewall add ruleコマンドで追加した送信のブロックのルールの例。TCPの80番(HTTP)ポートへの送信(つまりWebブラウザによる外部アクセス)を禁止してみた。このように、コマンドラインでもGUIでも同じようにファイアウォールを制御できる。 | ||||||
|
INDEX | ||
Vistaの地平 | ||
第15回 進化したWindows Vistaのファイアウォール機能(後編) | ||
1.セキュリティが強化されたWindowsファイアウォールの管理 | ||
2.netshコマンドによるファイアウォールの管理 | ||
3.グループ・ポリシーによるファイアウォールの管理 | ||
「 Vistaの地平 」 |
- Azure Web Appsの中を「コンソール」や「シェル」でのぞいてみる (2017/7/27)
AzureのWeb Appsはどのような仕組みで動いているのか、オンプレミスのWindows OSと何が違うのか、などをちょっと探訪してみよう - Azure Storage ExplorerでStorageを手軽に操作する (2017/7/24)
エクスプローラのような感覚でAzure Storageにアクセスできる無償ツール「Azure Storage Explorer」。いざというときに使えるよう、事前にセットアップしておこう - Win 10でキーボード配列が誤認識された場合の対処 (2017/7/21)
キーボード配列が異なる言語に誤認識された場合の対処方法を紹介。英語キーボードが日本語配列として認識された場合などは、正しいキー配列に設定し直そう - Azure Web AppsでWordPressをインストールしてみる (2017/7/20)
これまでのIaaSに続き、Azureの大きな特徴といえるPaaSサービス、Azure App Serviceを試してみた! まずはWordPressをインストールしてみる
|
|