Я уверен, что на этот вопрос уже был дан ответ, но я не могу найти действенный ответ.

У меня есть виртуальная машина CentOS 7, работающая внутри VirtualBox 5.2.20, размещенная на компьютере с Windows 10 Pro. Я установил на гостевом сервере веб-сервер Apache и хотел бы сделать его доступным через Интернет (например, для обслуживания статической веб-страницы через порт 80). Однако я бы хотел, чтобы мой хост и другие устройства в моей локальной сети были защищены от гостя на случай, если он будет скомпрометирован.

На данный момент у меня есть два сетевых адаптера, настроенных в VB, один NAT для предоставления гостевого доступа в Интернет через Интернет и один хост-адаптер для локального тестирования веб-сервера. На данный момент переадресация портов не настроена, поэтому гость доступен только с моего хоста. Я понимаю следующее:

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

Правильно ли мое понимание? Если да, как я могу настроить сеть, чтобы разрешить переадресацию портов только для моего гостя, не подвергая остальной части моей локальной сети этому?

1 ответ1

0

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

Используемая команда будет выглядеть следующим образом, запущенная в командной строке с повышенными правами, при условии, что интерфейс только для хоста определен в 192.168.234.0/24:

netsh interface portproxy add v4tov4 listenport=80 listenaddress=127.0.0.1
 connectaddress=192.168.234.1 connectport=80 protocol=tcp

У меня нет VirtualBox, поэтому я не могу экспериментировать; вам придется сделать эту часть.

Для получения дополнительной информации см. Статью Windows Netsh Interface Portproxy.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .