Я создалOpenVPNсоединение черезпотрясающий4с моего raspberry pi на мой публичный сервер. Соединение работает отлично, и я могу подключиться с помощью ssh через это соединение в обе стороны просто отлично.
Я также установилhostapdна raspberry, чтобы он действовал как беспроводная точка доступа. Это работает, я могу подключиться к SSID с моего телефона.
А теперь самое сложное.Как направить весь трафик, поступающий с Wi-Fi, напрямую через VPN??
Итак, чтобы внести ясность, я хочу, чтобы устройства, такие как мой телефон, подключенные к Wi-Fi Raspberry Pi, получали доступ к Интернету через VPN-туннель и через шлюз сервера, делая Rapsberry своего рода гаджетом «прозрачного VPN».
Нужно ли мне настраивать DHCP на pi (используя dnsmasq или что-то подобное)? Или я могу заставить "DHCP" в OpenVPN предоставлять IP-адреса всем, кто подключается по Wi-Fi?
Интерфейсы сервера:
eth0 - interface with public IP on the internet
tun0 - OpenVPN tunnel interface
Интерфейсы Raspberry:
eth0 - interface connecting the pi to the internet behind a NAT router
tun0 - OpenVPN tunnel interface
wlan0 - wifi interface set up with hostapd
решение1
Вы можете попробовать iptables или shorewall с /etc/shorewall/masq, выглядящим примерно так:
#INTERFACE SOURCE
tun0 wlan0
тогда, когда raspi выступает в качестве шлюза по умолчанию для мобильных устройств, это просто вопрос перенаправления всего трафика через VPN-туннель для raspi (конечно, за исключением публичного IP-адреса VPN-сервера)