OpenVPN через проблемы маршрутизации stunnel

Я знаю, что об этом спрашивали и отвечали много раз, но я просто не могу заставить его работать: у меня есть raspberry pi в качестве сервера stunnel и openvpn и клиент ubuntu, но хотя соединения кажутся правильными, всякий раз, когда я использую VPN, все мои Интернет теряется на стороне клиента. Из-за большого количества поиска и чтения это кажется проблемой маршрутизации, но я не могу понять, где (raspberry pi находится в 193.168.2.31 с включенной пересылкой ipv4, с общедоступным ip fake.ddns.net). Конфигурационные файлы следующие:

серверный stunnel:

foreground=yes
chroot = /var/lib/stunnel4
pid = /stunnel4.pid
setuid = stunnel4
setgid = stunnel4
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1
cert = /etc/stunnel/stunnel.pem
[openvpn]
accept = 443
connect = localhost:1194
cert = /etc/stunnel/stunnel.pem

сервер openvpn:

port 1194
proto tcp
dev tun
sndbuf 0
rcvbuf 0
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA512
tls-auth ta.key 0
topology subnet
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "192.168.2.31 255.255.255.255 net_gateway"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
crl-verify crl.pem

клиентский stunnel:

foreground = yes
[openvpn]
client = yes  
accept = 1194
connect = fake.ddns.net:443
cert = stunnel.pem

клиент openvpn

client
dev tun
proto tcp
sndbuf 0
rcvbuf 0
remote localhost 1194
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
auth SHA512
cipher AES-256-CBC
setenv opt block-outside-dns
key-direction 1
verb 3
<ca>...</ca>
<cert>...</cert>
<key>...</key>
<tls-auth>...</tls-auth>

Может быть стоит отметить, что у меня также есть privoxy, установленный на Raspberry Pi, и когда я использую только Stunnel (другие конфигурации, лучше объяснить здесь), все работает просто отлично

Спасибо за терпение!!

Как подсказывает @Andy, здесь вывод ip route show:

0.0.0.0/1 через 10.8.0.1 dev tun0 по умолчанию через 192.168.2.1 dev wlp2s0 proto dhcp metric 600 10.8.0.0/24 dev tun0 Proto Link области видимости src 10.8.0.2 127.0.0.1 через 192.168.2.1 dev wlp2s0 128.0.0.0/1 через 10.8.0.1 dev tun0 169.254.0.0/16 dev ссылка на область видимости wlp2s0 метрика 1000 192.168.2.0/24 dev wlp2s0 ссылка на область видимости прото ядра src 192.168.2.100 метрика 600 192.168.2.31 dev ссылка на область видимости wlp2s0

1 ответ

Наконец , "грубый форсированный" ответ, случайное добавление или удаление параметров конфигурации, хотя и смещено на проблемы маршрутизации. Я изменил route 192.168.2.31 255.255.255.255 net_gateway от сервера к клиенту, и теперь это работает. Итак, теперь конфиги openvpn выглядят следующим образом:

сервер openvpn:

port 1194
proto tcp
dev tun
sndbuf 0
rcvbuf 0
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA512
tls-auth ta.key 0
topology subnet
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
crl-verify crl.pem

клиент openvpn

client
dev tun
proto tcp
sndbuf 0
rcvbuf 0
remote localhost 1194
route fake.ddns.net 255.255.255.255 net_gateway
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
auth SHA512
cipher AES-256-CBC
setenv opt block-outside-dns
key-direction 1
verb 3
<ca>...</ca>
<cert>...</cert>
<key>...</key>
<tls-auth>...</tls-auth>

Я понятия не имею, в чем разница, поэтому, пожалуйста, кто-нибудь, кто понимает, добавьте к этому решению

Другие вопросы по тегам