Я хочу использовать соединение OpenVPN для доступа к своим локальным ресурсам.
У меня есть iptables
установить, чтобы разрешить подключение из 192.168.1.0/24
подсеть.
Когда я подключаюсь со своего телефона или компьютера с Windows, все работает отлично.
Но когда я пытаюсь подключиться из Ubuntu, это не так.
После проверки tcpdump
и читая много логов я вижу, что пакеты из Ubuntu имеют SRC=настоящий белый ip
в то время как для телефона или Windows SRC=IP-адрес локального туннеля
и он работает так, как ожидалось.
Затем я проверил свои маршруты при подключении к VPN и обнаружил следующее (предположим 77.77.77.77
- OpenVPN-сервер, 192.168.8.1
- мой роутер):
Шлюз назначения Флаги Генмаски Метрика Ссылка Использование Iface
0.0.0.0 192.168.255.5 0.0.0.0 UG 50 0 0 tun0
0.0.0.0 192.168.8.1 0.0.0.0 УГ 600 0 0 wlp2s0
77.77.77.77 192.168.8.1 255.255.255.255 UGH 600 0 0 wlp2s0
192.168.8.0 0.0.0.0 255.255.255.0 U 600 0 0 wlp2s0
192.168.8.1 0.0.0.0 255.255.255.255 UH 600 0 0 wlp2s0
192.168.255.1 192.168.255.5 255.255.255.255 UGH 50 0 0 tun0
192.168.255.5 0.0.0.0 255.255.255.255 UH 50 0 0 tun0
Я считаю, что корень моей проблемы:
77.77.77.77 192.168.8.1 255.255.255.255 UGH 600 0 0 wlp2s0
поскольку он говорит использовать мой маршрутизатор в качестве шлюза для доступа к самому VPN-серверу. В результате вместо туннельного IP-адреса я вижу свой реальный IP-адрес.
Но я не понимаю, как это исправить. Я уже пытался изменить маршрут вручную, чтобы направить трафик на сервер через туннель, но это не помогло:
77.77.77.77 192.168.255.5 255.255.255.255 UGH 600 0 0 tun0
Итак, если все мое расследование было правильно понято, для решения проблемы мне нужно направить трафик на сам vpn-сервер через туннель вместо шлюза по умолчанию.
я полагал перенаправление-шлюз def1
директива должна перенаправлять ВСЕ трафик через VPN, включая самого себя.Но похоже, что нет.
Мой server.conf:
сервер 192.168.255.0 255.255.255.0
глагол 3
ключ /etc/openvpn/pki/private/vpn.example.com.key
ca /etc/openvpn/pki/ca.crt
сертификат /etc/openvpn/pki/issued/vpn.example.com.crt
дх /etc/openvpn/pki/dh.pem
tls-аутентификация /etc/openvpn/pki/ta.key
ключевое направление 0
поддержка 10 60
постоянный ключ
упорный тун
прото удп
порт 1194
разработчик tun0
статус /tmp/openvpn-status.log
пользователь никто
группа
маршрут 192.168.254.0 255.255.255.0
нажмите «блокировать снаружи DNS»
нажмите «dhcp-опция DNS 192.168.1.1»
нажмите "dhcp-option DOMAIN lan"
Мой клиент.ovpn:
клиент
ни к чему
разработчик тун
сервер удаленного сертификата tls
удаленный vpn.example.com 1194 udp
...сертификаты...
ключевое направление 1
перенаправление-шлюз def1