- ベストアンサー
ホワイトリストにある相手だけネット接続する設定方法
- ホワイトリストによるネット接続制限は、情報漏えいや遠隔操作、犯罪の踏み台となる危険性を低減するための有効な対策です。
- WinXPやWin7では、ホワイトリストにあるIPアドレスのパケットのみを通し、それ以外のパケットは廃棄する設定方法は存在しないようです。
- オフラインでPCを利用することも検討できますが、便利な機能は使えなくなるため、利用する際には注意が必要です。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
> でも私の質問は、ルータの設定ではなく、 > WinXP、Win7で、「ホワイトリストにあるIPアドレスのパケットだけ通し、それ以外のパケットは廃棄するような設定」方法です。 PC側で制御したいのでしたらパケットフィルターソフトを導入されてはいかがでしょう。 たとえば以下のようなものとかだと出来そうな感じですが http://www.st.rim.or.jp/~shio/nwworld/pktfilter/
その他の回答 (6)
- kakedashidashi
- ベストアンサー率67% (21/31)
No.6です。 > Windows ファイアウォールでも可能なのですね。 > (中略) > > としてみました。これで、すべての通信が遮断されると思うのですが、違うようです、 > この設定で、メールやWEB閲覧ができています。 > 私の設定が悪いのか、そもそも希望する遮断がWindows ファイアウォールではできないのか、今の段階では不明です。 ごめんなさい! Windows XPのWindowsファイアウォールではOutbound(内→外)の通信制御は対応してないのでした。 というわけで他の方法を考える必要がありますね。 たとえばIPルーティングや名前解決の仕組みをうまく使うとか考えると以下のようなことができそうです。 ◆ネットワークのプロパティにてデフォルトゲートウェイを削除する。 インターネット(とうか全ての他セグメント)への全通信を阻止。 (外からのパケットも戻り道がないためそれもある程度阻止できます) →通信相手のネットワークセグメントが違う場合は、個別に通信相手に対する スタティックルートを設定(route addコマンド使用) ◆ネットワークのプロパティにてDNSサーバ設定を削除する ホスト名を使用した全通信を阻止。 (小規模環境ならLAN内部はNetBIOSしか使ってないだろうと思うので内部はOK?) ※時刻同期は無視していいようなので非ActiveDirectory環境と想定しています。 ※もともとIPアドレスを指定している通信は阻止できません。 (時刻同期はIPアドレスを指定することで可能となります) ※名前解決が必要な通信があれば個別にhostsファイルに記載する。 (逆を言えばhostsファイルで存在しないIPアドレスに解決させれば特定のホストを接続不能にすることも) ◆インターネットオプションのプロキシサーバにダミー設定 コントロールパネル>インターネットオプション>接続タブ>ローカルエリアネットワーク(LAN)の設定 >LANの設定>プロキシサーバー 「LANにプロキシサーバーを使用する」にチェック、アドレスに存在しないIPアドレスを指定。 (ローカルアドレスにはプロキシサーバを使用しない」は内部にWebサーバが存在するときはチェック) することにより、Webブラウザの通信を阻止することが可能です。(他には影響なし) ◆メーラーを削除 メールソフトを削除とかメールソフトの設定を削除とか。 ローカルでできそうなことはこんなものですね。
お礼
回答ありがとうございます。 >たとえばIPルーティングや名前解決の仕組みをうまく使うとか考えると以下のようなことができそうです。 いろいろな提案、ありがとうございます。 No4さんの回答にあった、PktFilter 試してみました。 rules.txt として option small_frags on eth0 block in on eth0 all block out on eth0 all を設定して起動してみました。 期待とおり、すべてのパケットが遮断され、メールやWEB閲覧ができなくなりました。 とりあえず、PktFilter をつかって、希望した実験(体験)にチャレンジしたいと思います。
- kakedashidashi
- ベストアンサー率67% (21/31)
No.1です。 > スタート - 設定 - コントロールパネル の > セキュリティーセンター - Windows ファイアウォール > はありますが、どうすれば、「外向き通信をすべて不許可した上で、個別に許可 > (=ホワイトリスト)で設定」できるのかが知りたいです。 > 実際に設定してみて、どのようなトラブルに遭遇するのか、体験してみたいと思って、 > 質問しています。 なるほど。検証目的でその設定方法を確認したいということですね。できるかどうかという部分についてはできます。 【Windows XP】 コントロールパネル>Windows ファイアウォール 全般タブ ・有効をON 例外タブ ・プログラムおよびサービス (1) すべてのチェックを外す(すべて不許可) (2) 必要な通信のみチェックをする(許可する) (3) 一覧に必要な通信がない場合は、[プログラムの追加]や[ポートの追加]で追加する。 【Windows 7】 以下を参照してください。 http://windows.microsoft.com/ja-jp/windows/understanding-firewall-settings#1TC=windows-7 http://www.silex.jp/support/faq/windows7.html ※いずれもいったんすべて不許可にしてから、必要な通信を個別に許可します。 以上、ご質問のWindows PC側での対応についてお答えはしましたが、各PCで対応するのはメンテナンスの手間や強制力、意図しない設定による障害等が起こりやすく、また各PCの設定を同一に保つのも難しいため非現実的です。 他のかたもおっしゃっているように通信経路上で対応するのが一般的であり、メンテナンス性も高く、結果的に低コストで最大の効果を得られるでしょう。 > 実際に私が遭遇している問題ではなく、単に > 予算がなくてPCの買い替えができない中小企業では、 > WinXPのサポート終了後もXPを使い続けるためネットから切り離して使っている > といった内容の記事を見て、考えただけです。 その場合の「ネットから切り離して」というのは、物理的にインターネットとは切り離すという意味だと思います。 OSI階層モデルで言えば下の階層で防御すれば、もちろんその上の階層も防御されます。そういう意味で、物理的にインターネットにつなげないというのは第1層で防御できることとなります。 インターネットの利用がないのであれば、物理的に接続しないのが一番の対策でしょう。 インターネットを使用するPCと同じLAN内部システムとの通信が必要な場合は、物理的に接続する必要が出てきますが、セグメントを分けるか通信経路上(ルータ、L3スイッチのACL、もしくはファイアウォール等)で制限するのが一般的だと思います。これは第3層や第6層での防御ですね。 なお、ネットワークに接続する場合、通信を許可している相手ノードがウイルスに感染した、乗っ取られた等の対策を考えておく必要があるので、くれぐれもウイルス対策ソフトの定義ファイルの更新やWindows Update/Microsoft Update(XPだとあげられるところまでになりますが、ここが問題なんですよね・・・だから第1層で防御せざるを得ない)はできるようにしておく必要があります。
お礼
回答ありがとうございます。 Windows ファイアウォールでも可能なのですね。 ということで、早速、 全般タブ ・有効をON 例外タブ ・プログラムおよびサービス (1) すべてのチェックを外す(すべて不許可) としてみました。これで、すべての通信が遮断されると思うのですが、違うようです、 この設定で、メールやWEB閲覧ができています。 私の設定が悪いのか、そもそも希望する遮断がWindows ファイアウォールではできないのか、今の段階では不明です。 それはそれとして、 >インターネットの利用がないのであれば、物理的に接続しないのが一番の対策でしょう。 同感です。いろいろと実用的な情報、ありがとうございます。
- kmetu
- ベストアンサー率41% (562/1346)
NO4です ご承知だとは思いますが、PC側で制御するという事は、PCまでは悪意のあるアタックパケットが到達するということですので、PCの脆弱性をつかれたらパケットフィルターソフトで制御しきれるかどうかは不明です。XPをご利用という事ですので余計に気を使うことになると思います。
お礼
回答ありがとうございます。 有用な情報、感謝します。 >ご承知だとは思いますが、PC側で制御するという事は、PCまでは悪意のあるアタックパケットが到達するということですので、PCの脆弱性をつかれたらパケットフィルターソフトで制御しきれるかどうかは不明です。XPをご利用という事ですので余計に気を使うことになると思います。 ご心配ありがとうございます。 PCが被害を受けるのは、OSIモデルにおける、第7層(アプリケーション層)の処理に入ってからのことであって、第6層(プレゼンテーション層)以下の処理で感染などすることはないと思います。 「ホワイトリストにあるIPアドレスのパケットだけ通し、それ以外のパケットは廃棄する」処理は、第4層(トランスポート層)での処理となりますので、パケットの中身がPCにとってたとえ危険な内容であっても、それは第7層において危険なだけであり、第6層以下の処理に影響することは無いと思います。 XPが、このパケットフィルターソフトの手前でパケットを解釈して第7層(アプリケーション層)の処理を行っている ならご指摘のとおり心配ですが、いくらなんでも、XPもそんな変な仕様とはなっていないと信じています。
- kmetu
- ベストアンサー率41% (562/1346)
単純にルーターで該当PCのインターネット側(外部)へのパケットのINとOUTを遮断してしまえばいいだけの話ではないですか。ルーターによってはLAN内の特定IPアドレス間のパケットを遮断したり許可したり細かく設定できるものもありますよ。それを利用すれば、該当PCからメールサーバ、ファイルサーバ、およびプリンタだけに限って通信を許可するような設定ができます。
お礼
回答ありがとうございます。 でも私の質問は、ルータの設定ではなく、 WinXP、Win7で、「ホワイトリストにあるIPアドレスのパケットだけ通し、それ以外のパケットは廃棄するような設定」方法です。 よろしくお願いします。
- lv4u
- ベストアンサー率27% (1862/6715)
>>WinXP、Win7で、「ホワイトリストにあるIPアドレスのパケットだけ通し、それ以外のパケットは廃棄するような設定」方法、ないのでしょうか? 通常、大手企業では、そういう目的のために、個々のPCではなく、ネット接続する部分にプロキシーサーバなどを設置して、決められたあて先、きめられたアプリ(ポートNo)だけを接続するように設定しています。 ですので、休憩中は、料理店を探すサイトに接続できるけど、勤務時間になると接続できない、あるいは、接続したい場合は、管理部門に連絡してくださいというような制御を行ったりしています。 こうしたセキュリティ関連の機材・ソフトウエアを販売する会社は、ネットを探せばみつかることと思います。 セキュリティを気にする大手企業は、そういう管理ハード、ソフトに多額の投資を行って、セキュリティを守りながらも、社員の負荷を減らそうとしているようです。
お礼
回答ありがとうございます。 >通常、大手企業では、そういう目的のために、個々のPCではなく、ネット接続する部分にプロキシーサーバなどを設置して、決められたあて先、きめられたアプリ(ポートNo)だけを接続するように設定しています。 大手企業では実践中なのですね。 個人的に、実際に設定してみて、どのようなトラブルに遭遇するのか、体験してみたいと思って、質問しています。 WinXP、Win7で、「ホワイトリストにあるIPアドレスのパケットだけ通し、それ以外のパケットは廃棄するような設定」方法、ないのでしょうか?
- kakedashidashi
- ベストアンサー率67% (21/31)
Windows ファイアウォールで外向き通信をすべて不許可した上で、個別に許可(=ホワイトリスト)で設定すればよいかと思います。ネット接続=Webブラウザでのインターネットの利用という意味であれば、ブラウザの設定でプロキシ接続の設定を存在しないIP宛にしてしまうという手もあります。 ただ、OSやウイルス対策ソフトをはじめとするさまざまなソフトウェアのアップデートについては決して「便利な機能」ではなく、セキュリティ上「必須の機能」となりますので、特に同じネットワークの中にインターネットに接続可能なコンピュータ等が存在したり、また外部からのUSBメモリ等によるデータの持ち込みがある場合は、止めてしまうと情報漏えいや遠隔操作、犯罪の踏み台等に利用される危険性が上がります。時計の同期についても何か発生した際の調査が難航することとなります。 そういった理由から、ローカルファイアウォールで通信を止めてしまう場合は、ホワイトリストにアップデート系や時刻同期の設定は入れておきたいところです。 なお、個々のPCに設定すると管理がしにくくなったり、使用者がファイアウォールを無効化してしまう可能性もあるかと思います。そのような場合は、ルータにファイアウォールの機能があればその機能を利用するのもよいかと思います。 利便性を大きく犠牲にすると、たいていの場合ユーザ側で回避策をとってしまいますので、利便性を残したままセキュリティ対策を行うのが最善でしょう。 お話の内容から失礼ながらそんなに大きな規模の環境ではないと思いますが、ある程度の規模の環境であれば、プロキシサーバやファイアウォールのアプライアンス製品、ウイルス対策ソフトのサーバ、WSUS等の導入を検討されてはいかがかと思います。
お礼
回答ありがとうございます。 >Windows ファイアウォールで外向き通信をすべて不許可した上で、個別に許可(=ホワイトリスト)で設定すればよいかと思います。ネット接続=Webブラウザでのインターネットの利用という意味であれば、ブラウザの設定でプロキシ接続の設定を存在しないIP宛にしてしまうという手もあります。 その具体的な設定方法が知りたくて質問しています。 スタート - 設定 - コントロールパネル の セキュリティーセンター - Windows ファイアウォール はありますが、どうすれば、「外向き通信をすべて不許可した上で、個別に許可(=ホワイトリスト)で設定」できるのかが知りたいです。 実際に設定してみて、どのようなトラブルに遭遇するのか、体験してみたいと思って、質問しています。 >お話の内容から失礼ながらそんなに大きな規模の環境ではないと思いますが、ある程度の規模の環境であれば、プロキシサーバやファイアウォールのアプライアンス製品、ウイルス対策ソフトのサーバ、WSUS等の導入を検討されてはいかがかと思います。 実際に私が遭遇している問題ではなく、単に 予算がなくてPCの買い替えができない中小企業では、 WinXPのサポート終了後もXPを使い続けるためネットから切り離して使っている といった内容の記事を見て、考えただけです。 ありがとうございます。
お礼
PktFilter 試してみました。 rules.txt として option small_frags on eth0 block in on eth0 all block out on eth0 all を設定して起動してみました。 期待とおり、すべてのパケットが遮断され、メールやWEB閲覧ができなくなりました。 ホワイトリストにするアドレスがわかれば、希望した実験(体験)できそうです。 ありがとうございます。