Я настроил сервер OpenVPN на экземпляре Bastion в публичной подсети на AWS VPC. Сейчас у меня есть доступ к частному IP-адресу этого экземпляра с моим клиентом OpenVpn, но мы хотимдоступ к экземплярам EC2, работающим в других частных подсетяхв ВПК.
Вот мой файл server.conf:
port 1194
# TCP or UDP server?
;proto tcp
proto udp
;dev tap
dev tun
;dev-node MyTap
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/server.crt
key /etc/openvpn/easy-rsa/pki/private/server.key
dh /etc/openvpn/easy-rsa/pki/dh.pem
;topology subnet
server 10.8.0.0 255.255.255.0
;client-config-dir ccd
route 10.10.0.0 255.255.0.0
route 10.10.12.0 255.255.255.0
route 10.10.52.0 255.255.255.0
route 10.10.51.0 255.255.255.0
push "route 10.10.0.0 255.255.0.0"
push "route 10.10.12.0 255.255.255.0"
push "route 10.10.11.0 255.255.255.0"
push "route 10.10.51.0 255.255.255.0"
push "route 10.10.52.0 255.255.255.0"
;learn-address ./script
;push "redirect-gateway def1 bypass-dhcp"
;push "dhcp-option DNS 208.67.222.222"
;push "dhcp-option DNS 208.67.220.220"
client-to-client
#keepalive 10 120
tls-auth ta.key 0 # This file is secret
cipher AES-256-CBC
user nobody
group nobody
status openvpn-status.log
verb 3
Поскольку мои познания в области сетей не на должном уровне, если у кого-то есть идеи, как решить эту проблему, я буду очень признателен.
Спасибо
решение1
У меня в VPC установлено несколько серверов Mikrotik Cloud RouterOS в качестве OpenVPN-серверов, и мне потребовалось некоторое время, чтобы заставить их работать.
У меня нет четкого представления о вашей инфраструктуре и о том, в чем заключается ваша текущая проблема, ноЯ предполагаю, что ваш клиент уже может подключиться к серверу OpenVPN, но не может подключиться к другим частным серверам EC2.
Я заметил, что ваш клиентский пул IP (10.8.0.0/24) отличается от внутреннего IP сервера OpenVPN (10.10.0.0/16). Это усложняет маршрутизацию VPC, поскольку ваша таблица маршрутизации VPC не имеет представления о том, какая подсеть 10.8.0.0/24 и куда направлять соответствующий трафик.
Я решил эту проблему, применив NAT, чтобы трафик моего клиента (скажем, IP 10.8.0.100) маскировался под трафик сервера OpenVPN (скажем, IP 10.10.0.100), когда пакеты покидают сервер OpenVPN. Таким образом, частный сервер EC2 всегда будет маршрутизировать через сервер OpenVPN.
Вам также необходимо проверить несколько вещей:
Группа безопасности EC2 разрешает трафик
Подсети VPC связаны с вашей таблицей маршрутизации.
Таблица маршрутов VPC имеет соответствующие настройки маршрутов.
Проверки источника/назначения EC2 отключаются, если происходит NAT
Альтернативным решением может быть настройка таблицы маршрутизации таким образом, чтобы весь трафик 10.8.0.0/24 отправлялся на ваш сервер OpenVPN, но мне это так и не удалось, так что удачи, если вы выберете этот путь.