Я пытаюсь реализовать следующее:
Я хочу, чтобы все сети и клиенты инициализировали соединение OpenVPN на моем сервере, и все клиенты должны иметь возможность видеть других клиентов / сети через vpn.
Я также хочу, чтобы весь интернет-трафик клиентов (не являющихся маршрутизаторами) направлялся через сервер (для безопасного просмотра), и я также хочу, чтобы клиенты могли достигать хостов внутри частных сетей «Сеть A» и «Сеть B». " (и наоборот)
Сети должны маршрутизировать только данные, адресованные клиентам и хостам vpn за другими сетями, а также через vpn.
Я бы настроил маршрутизаторы сетей на маршрутизацию:
Мои маршруты верны?
Теперь реальный вопрос: как мне настроить сервер OpenVPN и рули межсетевого экрана. Мой сервер - это виртуальный частный сервер Strato с Ubuntu 14.04 64 Bit.
Следует ли мне настроить NAT в качестве интернет-шлюза для всех клиентов и просто игнорировать nat на моих маршрутизаторах (маршрутизация, как описано выше)? Как мне позволить клиентам общаться друг с другом? И самое сложное: как настроить упреждающее обслуживание пакетов для хостов внутри сетей по vpn
Примеры:
Client B <=> VPN <=> Router for Net A <=> Host in Net A
Host in Net A <=> Router Net A <=> VPN <=> Router Net B <=> Host in Net B
Server that hosts VPN ("internal IP") <=> VPN <=> Some Host behind a router
Server that hosts VPN ("internal IP") <=> VPN <=> Client
# Not that important, but would be cool:
Client A <=> VPN <=> Client B
Что еще мне нужно настроить, что я мог забыть выше?
1Вы включили переадресацию IP?
sudo vi /etc/sysctl.conf #uncomment net.ipv4.ip_forward and set = 1
net.ipv4.ip_forward = 1
sudo sysctl -p
Если вы используете TUN, у вашего клиента есть IP-адрес туннеля. Пул по умолчанию - 10.8.1.0/24. Если ваш маршрутизатор не знает об IP-адресах туннелей и не имеет маршрутов для них, вам необходимо замаскировать (NAT) IP-адреса туннелей, чтобы сервер OpenVPN переписал адрес источника под себя. Похоже, что вы упомянули о маршрутизации 10.8.0.0/24.
sudo apt-get install iptables-persistent
sudo iptables -t nat -A POSTROUTING -s 10.8.1.0/24 -o eth0 -j MASQUERADE
sudo sh -c 'iptables-save > /etc/iptables/rules.v4'