Как заблокировать доступ в интернет для виртуальной машины, оставив LAN к хосту?

Вопрос или проблема

Я использую Virtual Machine Manager, а именно libvirt и virt-manager, чтобы запустить Windows 10 на openSUSE Leap 15.4. Сетевая конфигурация следующая:

Скриншот: сетевая конфигурация

Эта конфигурация обеспечивает доступ в Интернет для гостевой системы, когда на хосте есть подключение к Интернету.

Мне нужно, чтобы был доступ к Интернету на хосте. Но я хочу заблокировать доступ в Интернет на госте. Мне нужно сделать что-то вроде этого поста. Но в этом посте не упоминается, как решается проблема.

Этот ответ не был написан на openSUSE, но не должно быть никакой разницы, на каком дистрибутиве работает клиент virt-manager (ни libvirtd, поскольку это можно сделать удаленно).

Вам нужно создать новую сеть libvirt в Изолированном режиме:

Изолированный режим

В этом режиме гости, подключенные к виртуальному коммутатору, могут общаться друг с другом и с хостом. Однако их трафик не будет выходить за пределы хоста, и они не смогут получать трафик извне хоста.

Виртуальный коммутатор: изолированный режим

Все это делается с помощью графического интерфейса virt-manager:

  • Щелкните правой кнопкой мыши на соединении QEMU/KVM (не на ВМ внутри него) и выберите Сведения.

    Сведения о соединении

  • В новом окне перейдите на вкладку Виртуальные сети

    Вероятно, должна быть одна сеть: default, которая является сетью NAT по умолчанию.

  • Нажмите кнопку + внизу, чтобы создать новую сеть

    Добавить сеть

    • Используйте актуальное имя для новой сети. Например: hostonly.

    • Измените режим на Изолированный

      Создать виртуальную сеть

    • Убедитесь, что выбранная сеть IPv4 не используется другой сетевой настройкой

      Это не должно произойти в первый раз, но возможно может, когда создается несколько других сетей. Если потребуется, измените адрес сети, предлагаемый по умолчанию.

  • Перейдите к настройкам ВМ и измените сеть NIC на только что созданную сеть

    Источник сети

    Это можно сделать при создании ВМ/NIC или в качестве изменения настройки.

    Если это сделано во время работы ВМ, для немедленного эффекта вам также следует временно отключить виртуальный NIC (снимите отметку с Состояние соединения), примените изменения и снова подключите его (установите отметку на Состояние соединения), снова примените, чтобы вызвать перенастройку сети в ОС ВМ (в противном случае она не заметит этого до обновления аренды DHCP, возможно, через несколько часов).

Примечание. Чтобы открыть окно “QEMU/KVM – Сведения о соединении” в “Virtual Machine Manager”, выберите Изменить-> Сведения о соединении.
"QEMU/KVM - Сведения о соединении" окно

Ответ или решение

Чтобы заблокировать доступ к Интернету для виртуальной машины (VM), но разрешить доступ к локальной сети (LAN) с хоста в openSUSE Leap 15.4, выполните следующие шаги, используя Virtual Machine Manager (virt-manager) и libvirt.

Подробная инструкция по настройке

  1. Открытие параметров соединения:

    • Запустите virt-manager.
    • Щелкните правой кнопкой мыши на подключении QEMU/KVM (не на самой виртуальной машине) и выберите Details.

    Connection Details

  2. Перейдите на вкладку "Сетевые интерфейсы" (Virtual Networks):

    • Найдите сеть по умолчанию (default), которая, как правило, является сетью NAT. Вам нужно создать новую сеть.
  3. Создайте новую сеть:

    • Нажмите на кнопку + в нижней части окна, чтобы добавить новую сеть.

    Add Network

    • Введите подходящее имя для новой сети, например, hostonly.
    • Измените режим на Isolated (изолированный).

    Create virtual network

    • Убедитесь, что выбранный адрес IPv4 сети не используется другими сетевыми конфигурациями. Обычно это не будет проблемой, если это ваш первый раз, но стоит проверить.
  4. Настройка сети для виртуальной машины:

    • Перейдите к настройкам вашей VM и измените сеть NIC на только что созданную сеть hostonly.

    Network source

    • Это можно сделать как при создании VM, так и при изменении настроек существующей VM.
  5. Перезагрузка сетевого интерфейса VM:

    • Если вы изменяете сетевые настройки во время работы виртуальной машины, для моментального применения изменений временно отключите виртуальный NIC (снимите галочку с Link state), примените настройки и снова подключите его (поставьте галочку), а затем примените настройки еще раз. Это поможет триггерить переинициализацию сети в операционной системе VM.
  6. Проверка конфигурации:

    • После выполнения вышеуказанных шагов, убедитесь, что ваша виртуальная машина может подключаться к локальной сети, но не имеет доступа к Интернету. Вы можете протестировать это, пытаясь получить доступ к внешним веб-сайтам из VM и проверив связь с хостом.

Примечание

Если визуальный интерфейс virt-manager не отображает некоторые параметры, возможно, потребуется убедиться, что у вас установлены все необходимые разрешения и компоненты для работы с libvirt.

Следуя этим шагам, вы сможете настроить виртуальную машину так, чтобы у нее был доступ только к локальной сети хоста и отсутствовал доступ к Интернету, сохраняя при этом подключение к локальной сети с вашего хоста.

Оцените материал
Добавить комментарий

Капча загружается...