DNS-сервер по умолчанию не переключается после подключения к OpenVPN

Я использую соединение OpenVPN между моим ноутбуком и сервером. Конфигурация работала до сегодняшнего дня (я просто запустил apt update && apt upgrade), но с тех пор мои настройки DNS «неверны» после подключения к OpenVPN.

После подключения к серверу OpenVPN у меня есть две «перехватить все» записи домена DNS (DNS Domain: ~.) в моей конфигурации systemd-resolve.

Обрезанный вывод systemd-resolve --status:

Link 11 (tun0)
      Current Scopes: DNS
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
         DNS Servers: 192.168.X.Y
          DNS Domain: ~.

Link 2 (enp0s25)
      Current Scopes: DNS
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
         DNS Servers: 10.16.X.Y
                      10.16.X.Y
          DNS Domain: ~.

Поэтому DNS-запросы теперь не безопасно передаются через VPN, но также могут передаваться через обычную сеть.

Это приводит к DNSLeak, и еще хуже: внутренние имена хостов VPN не разрешаются правильно (время от времени).

Мне известны только варианты добавления записи DNS Domain: ~. в Tun0-Interface для разрешения. Но как мне удалить уже существующий из реального интерфейса?

Я уже использую этот конфиг для обновления systemd-resolved в моем клиенте OpenVPN.conf:

# Upate systemd-resolvd
up /etc/openvpn/update-systemd-resolved
down /etc/openvpn/update-systemd-resolved
down-pre
dhcp-option DOMAIN-ROUTE .

Кто-нибудь получил идея, как решить эту проблему?

// Обновление: похоже, это более известная проблема с NetworkManager, который начинает произвольно присоединять корневой домен DNS к ссылкам. Об этом есть интересное обсуждение в GitHub Issue в репозитории разработчика сценария update-systemd-resolved.

// Вероятно, этот коммит в NetworkManager сломал его. Так как он ввел по умолчанию маршрут DNS для всех интерфейсов поведения.

4
задан 17 May 2019 в 22:28

1 ответ

Добавьте к клиентскому конфигурационному файлу (файл с расширением .ovpn) загруженный с сервера OpenVPN строка:

dhcp-option DOMAIN-ROUTE .

, Как Вы знаете, прежде, чем добавить эту строку, в Ubuntu 18.04, которую необходимо установить update-systemd-resolved сценарии, как описано в https://github.com/jonathanio/update-systemd-resolved

, Если это все еще не работает, возможно, необходимо добавить внутренний сервер DNS также. Проверьте строки, которые Вы добавляете в конце .ovpn файла, похож:

script-security 2
dhcp-option DNS 10.1.0.1  # replace this IP with your DNS server IP.
dhcp-option DOMAIN yourinternaldomain.local  # replace this with your internal domain name.
dhcp-option DOMAIN-ROUTE .
up /etc/openvpn/update-systemd-resolved
down /etc/openvpn/update-systemd-resolved
down-pre
<час>

при использовании UI (гном) для соединения

Наконец, при использовании Значков VPN UI для соединения с VPN, необходимо повторно импортировать измененный файл .ovpn.

, Чтобы сделать, которые выполняются в терминале:

sudo apt install openvpn openvpn-systemd-resolved resolvconf
sudo apt install network-manager-openvpn network-manager-openvpn-gnome

Щелчок в меню "Пуск" Ubuntu:

Ubuntu Menu

Тип слово "сеть" и нажимают на Network. Это должно показать что-то как:

Network setup

Щелчок в" + " входит в систему VPN и нажимает в "импорте из файла" опцию:

import ovpn file

Когда-то импортированный, добавьте имя и нажмите "добавить" кнопку в верхнем правом из диалогового окна.

Вы все установлены!

<час>

Для соединения с VPN нажмите в значке сети и после этого в значке блокировки.

enter image description here

0
ответ дан 17 November 2019 в 06:00

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

Похожие вопросы: