У меня есть VPN, к которой я подключаюсь (OpenVPN) через доменное имя, а не через IP. IP VPN является динамическим, может меняться в любой момент. Я хочу, чтобы единственное соединение моей машины с Интернетом было my.vpn.domain.com и ничего больше.

Я бы использовал поиск OpenDNS в качестве поиска my.vpn.domain.com , и я считаю, что он достаточно безопасен (при условии, что он также блокирует все IP-адреса / соединения, которые не принадлежат домену vpn), и я не вижу лучшего / другого Опции на уровне IP.

Моя цель - иметь VPN-коммутатор, который действительно хорош (без утечек или ручного вмешательства).

После того, как я подключился к VPN через его домен, я смог снять ограничение my.vpn.domain.com и разрешить моему файерволу / iptables разрешать только подключения через tun0. Затем, если VPN-соединение обрывается , запустите снова только через my.vpn.domain.com , затем vpn connect, затем разрешите все tun0 и т.д.

Это можно сделать через файл hosts или как-то еще? Я новичок в сценариях Linux.

1 ответ1

0

Почему бы не попробовать что-то вроде этого:

Настройте iptables, чтобы отбрасывать все DNS-запросы на вашем не туннельном интерфейсе, но разрешите my.vpn.domain

iptables -A INPUT -o eth0 -p udp -s $your_dns_server --sport 53 -m state --state ESTABLISHED     -j ACCEPT
iptables -A INPUT -o eth0 -p udp --dport 53 -j DENY

iptables -A OUTPUT -o eth0 -p udp --dport 53 -m string --string my.vpn.domain --algo bm -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp -d $your_dns_server --dport 53 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp --dport 53 -j DROP

Сконфигурируйте openvpn для отправки всего трафика по туннелю после его установки

OpenVpn по умолчанию не маршрутизирует весь трафик по туннелю, но может быть настроен для этого с помощью redirect-gateway . Прочтите раздел «Маршрутизация всего клиентского трафика (включая веб-трафик) через VPN» здесь .

Настройте openvpn для автоматического повторного подключения

поэкспериментируйте со значениями конфигурации ping-restart и keepalive.

ping 10
ping-restart 120
push "ping 10"
push "ping-restart 60"

or equivalently:

keepalive 10 60

Настраивайте по мере необходимости, но в идеальном мире, если вы наберете свои настройки iptables и настройки поддержки активности openvpn, ваша машина должна иметь возможность только запрашивать my.vpn.domain, устанавливать и восстанавливать соединение openvpn и маршрутизировать только это соединение по мере доступности.

Если вы еще не прочитали документ openvpn о работе сервера OpenVPN с динамическим IP-адресом, чтобы убедиться в правильности конфигурации на стороне сервера.

... и если клиентская машина удаленная, убедитесь, что вы разрешаете SSH через iptables, чтобы не блокировать себя. Поступайте легко, если вы новичок в iptables.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .