web-dev-qa-db-ja.com

Ubuntuで実行されているVirtualboxでWindows仮想マシンを分離するにはどうすればよいですか?

私は検索して検索しましたが、これを行う方法が見つかりませんでした。私が見つけた答えは、2番目のNICを取得し、それをWindowsゲストに捧げると述べました。私のホストはlinuxmint16です。

ゲスト用のネットワークアダプターを指定する方法はわかりますが、Windowsゲストがインターネットにアクセスできるが、ホストのネットワーク上の他のコンピューターにアクセスできないようにするにはどうすればよいですか。

ゲストのIPアドレスを手動で変更しても、ネットワークの他の部分にアクセスできないようにしたいのです。自分自身(そしておそらくホスト)だけを見る必要があります。

3
user277244

これはVirtualBoxで行うことができます。

iptablesを使用してパケットを制御できる接続を選択する必要があります。したがって、NATもBridgeも、ユーザーがアクセスできるNICを作成しないため、機能しません。代わりにホスト専用ネットワークを使用する必要があります。これにより、ホスト上にユーザーが作成されます-vboxnet0と呼ばれるアクセス可能なインターフェース。

構成するには、[ファイル]-> [設定]-> [ネットワーク]-> [ホストのみのネットワーク]-> [プラス記号]で作成し、[ドライバー]-> [DHCPサーバー]で、DHCPサーバーを有効にします。設定を保存し、VMを起動します。

ここで、ゲストでホストをゲートウェイとして設定する必要があります。ホストのデフォルトIPは192.168.56.1です。 Googleを使用して、Windowsでこれを行う方法の説明を見つけてください。そして、おそらく、DNSサーバーを設定する必要があるかもしれません。

ホストでは、これらのすべての命令はSudoとして:

1)IP転送を有効にします。

  echo "1" > /proc/sys/net/ipv4/ip_forward

2)次を発行しますiptablesルール:

  iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
  iptables -A FORWARD -m iprange --dst-range 192.168.1.2-192.168.1.254 -j DROP
  iptables -I FORWARD -m iprange --src-range 192.168.1.2-192.168.1.254 -j DROP

最初のルールは、VMのインターネットへのアクセスを許可します。 2番目のペアは、ルーターとブロードキャストアドレスを除いて、VMがLANにアクセスすることを禁止します。

上記のルールは、ホストがeth経由で接続され、LANが192.168.1.0/24であり、ルーターとブロードキャストアドレスが192.168.1.1と192.168.1.255であることを前提としています。 、それぞれ。そうでない場合は、それに応じて変更してください。

2
MariusMatutiae

わかりました。ホストOSに1枚のネットワークカードしか必要としない優れたソリューションを見つけました。

  1. ゲストOSにホストオンリーアダプター(デフォルトはvboxnet0)を与え、vboxnet0がdhcpを実行することを確認します。
  2. Squidプロキシをインストールします(Sudo apt-get install squid3
  3. ファイル/etc/squid3/squid.confを開き、次の変更を加えます。A。「http_accessdeny all」の行を見つけ、行の先頭に#を付けてコメントアウトします。 B.次の2行をファイルに貼り付けます:
    1. acl allcomputers src 192.168.56.0/255.255.255.0
    2. http_accessはすべてのコンピューターを許可します
  4. 次のコマンドを実行して、squid3サービスを再起動します。Sudoservicesquid3restart
  5. ゲストOSで、ネットワークカードにdhcpが設定されていることを確認します
  6. Internet Explorerのインターネットオプションを開き、[接続]タブに移動し、[LANの設定...]をクリックし、[プロキシサーバー]のチェックボックスをオンにして、アドレス192.168.56.1とポート3128を作成します。
  7. 現在、ゲストでインターネットが機能しており、ゲストはローカルネットワークを見ることができません。

この投稿の助けをありがとう。それは私を正しい方向に導き、Squid3を見つけました。ここでのセットアップ全体は5〜10分かかり、非常に簡単です。

0
user277244

簡単に言うと、VirtualBoxだけでは必要な分離を実現することはできません。 A VMは、常にホストと同じネットワーク可用性を継承します(ブリッジモードまたはNATネットワークモードを想定))。

VirtualBoxには4つのネットワークの選択肢があります。

  1. ブリッジ:ホストのアダプタの1つと接続を共有します。これは、VMとホストがすべて同じスイッチに接続されているかのようになります。 VMは、ホストがアクセスできるすべてのものにアクセスできます。

  2. [〜#〜] nat [〜#〜]:VirtualBoxは、ホストのアダプターと仮想ネットワークの間に仮想NATファイアウォールを配置します。VMは引き続きホストのすべてにアクセスできます。アクセスできます。

  3. ホストのみ:VMはホストコンピューターとのみ通信できます。

  4. 内部:VMは分離されたネットワーク上にあり、同じ内部ネットワーク上の他のVMとのみ通信できます。

これらのオプションはいずれも要件を満たしていないため、VirtualBoxだけでは実行できません。前述のように、NICを追加すると、必要な分離を作成するために必要な物理的な分離が提供されます。

0
heavyd