Основная информация
Я создал лабораторию дома несколько дней назад.
Я использовал VMware Workstation, но она должна работать и с virtualbox:
Во-первых, я настроил все виртуальные машины, принадлежащие моей лаборатории, как "сеть только с хостом" (даже шлюз, но я подхожу к этому в нескольких словах ...).
Вам нужна одна ВМ, чтобы быть шлюзом.
Для этого я использовал Debian 6. Сначала я настроил его как сеть только для хоста. Автоматически добавленный NIC будет внутренним интерфейсом для ваших виртуальных машин, которые принадлежат лаборатории. Затем я добавил дополнительный сетевой адаптер, который соединен с моим физическим сетевым адаптером (это будет "внешний" сетевой адаптер).
Я настроил статические IP-адреса для внутренней сетевой карты моих шлюзов и настроил lab-DHCP (работает на Windows 2008 R2 Server), чтобы сообщить своим клиентам внутренний IP-адрес моего шлюза, чтобы использовать его в качестве шлюза по умолчанию. Моему внешнему сетевому адаптеру необходим IP-адрес моей локальной сети для связи с моим обычным шлюзом и Интернетом (для этого внешнего сетевого адаптера требуется, чтобы ваш обычный-lan-gateway-ip был настроен как шлюз по умолчанию, поскольку это ваш LAN-шлюз).
Чтобы ваш лабораторный шлюз работал в качестве шлюза, необходимо активировать маршрутизацию:
echo 1 > /proc/sys/net/ipv4/ip_forward
Затем вам нужно добавить нужные вам сервисы, такие как ваш VPN-сервис (мой шлюз также запускает DNS). Вы должны настроить свои сервисы и iptables/firewall (базовый NAT, правила для приема VPN-запросов и т.д.).
В этой среде вы можете использовать локальную сеть для имитации WAN. Настройте VPN-клиент на вашем хосте windows и попробуйте подключиться к «external-ip» (обычный-lan-ip) вашего лабораторного шлюза.
Редактировать: настроить linux-шлюз
Я предполагаю, что желаемая виртуальная машина шлюза была установлена как сетевая виртуальная машина только для хоста и получила дополнительный сетевой адаптер, соединенный с физическим сетевым адаптером. Я использовал Debian, но он должен работать с Ubuntu. Я не знаю, мешает ли zeroconf ручным конфигурациям. Я думаю, что сервер Ubuntu будет более дружественным к ручной конфигурации сети. Если у вас проблемы с Ubuntu, попробуйте Debian.
Сначала вы должны убедиться, что ваш шлюз имеет статический внутренний IP-адрес. Вы настраиваете это в /etc /network /interfaces. Вот мой пример конфигурации:
root@lab-fw01:~# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
#external interface
auto eth0
iface eth0 inet static
address 192.168.69.2
network 192.168.69.0
netmask 255.255.255.0
gateway 192.168.69.1
#internal interface
auto eth1
iface eth1 inet static
address 10.0.0.1
network 10.0.0.0
netmask 255.255.255.0
В моей среде шлюз лаборатории находится на 10.0.0.1. Это означает, что вы должны настроить шлюз по умолчанию ваших клиентов на 10.0.0.1 (возможно, через DHCP).
Интернет-трафик будет перенаправляться на шлюз внешнего интерфейса моего lab-gateways (192.168.69.1), поскольку сетевой трафик предназначен для внешней IP-подсети.
Чтобы получить трафик пересылки брандмауэром для ваших клиентов, вы должны включить пересылку ipv4:
echo 1 > /proc/sys/net/ipv4/ip_forward
Ваш следующий шаг - настроить iptables. Поскольку объяснение того, как настроить iptables, может привести к чрезмерному увеличению моего ответа, я просто приведу вас к хорошему базовому руководству по iptables.
Тем не менее, основные конфигурации для iptables могут быть:
- MASQUERADE весь ваш исходящий трафик
- ВПЕРЕД УСТАНОВЛЕННЫЙ и СВЯЗАННЫЙ трафик к вашей внутренней сети
- ВПЕРЕД исходящий трафик
- разрешить входной трафик для SSH
Это все, что вам нужно сделать, чтобы запустить шлюз. Если вы готовы с этим и тесты в порядке, вы можете начать установку VPN-сервера и настроить его. Не забудьте добавить правила для VPN в iptables, чтобы разрешить VPN-трафик.