VPN bağlantısında otomatik olarak yeni ad sunucusu nasıl alınır


11

Ben koşuyorum ubuntu xenial 16.04

Sanal özel bir buluta bağlanmak için openvpn kullanıyoruz. Bu bulutun kendi DNS sunucusu var (yerel rotamız - ev veya ofis gibi).

VPN'ye bağlandığımda, o ağdaki IP'lerin tümü kullanılabilir, ancak ana bilgisayar adıyla erişemiyorum. Nedeni basit: resolv.conf dosyası hala yerel ofis ad sunucumu gösteriyor. Doğru ad sunucusuna sahip olmak için resolv.conf dosyasının üzerine el ile yazarsam, hepsi iyidir.

Peki, VPN'ye bağlandıktan sonra resolv.conf dosyasını otomatik olarak yeniden yapılandırmasını nasıl sağlayabilirim?

Bir sistem etkinliğine bağlanabilir ve bir komut dosyası yürütebilir miyim?


1
Normalde VPN'nin kendi DNS sunucusunu itmesine izin verme seçeneği vardır. Hangi istemciyi kullanıyorsunuz - tunnelblick?
Ryder

Resmi openvpn istemcisini kullanıyorum. Bir yerde VPN işleminin DNS'yi güncelleyemediğini okudum.
Christian Bongiorno

--register-dnsSeçeneği denedin mi? Alternatif olarak, dhcp seçenekleri olarak (buradaki talimatların kapak tarafı openvpn.net/index.php/open-source/documentation/howto.html#dhcp ) olarak ayarlayabileceğiniz istemci tarafı seçenekleri vardır
Ryder

Yanıtlar:


8

OpenVPN paketinde bunun için bir komut dosyası vardır /etc/openvpn/update-resolv-conf. Şununla yapılandırmanız gerekir:

script-security 2
up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf

Bu, DNS sunucu adreslerini dhcp-option DNSOpenVPN eş / sunucu tarafından geçirilen seçeneklerden alır ve resolvconfbuna göre yapılandırılır . Ayrıca işler dhcp-option DOMAIN.

Ancak bu mükemmel değildir, çünkü bu, ad sunucuları listesinin üzerine yazmak yerine bu ad sunucularını mevcut ad sunucuları listesine ekleyecektir. Eğer kullanıyorsanız bunun yerine kendisine preprending DNS yapılandırmasını üzerine yazmak için kullanılabilir.openresolv-x


Kullanıyorsanız systemd-resolved, yerine /etc/openvpn/update-systemd-resolvedhangi kancaları kullanabilirsiniz .systemd-revolvedresolvconf

script-security 2 
up /etc/openvpn/update-systemd-resolved
down /etc/openvpn/update-systemd-resolved
down-pre

Debian'da, bu komut dosyası openvpn-systemd-resolved.


2
Bu 2 hat üzerinde, ayrıca eklemeniz gerekir script-security 2ulaşabilir veya çalıştırmak openvpnile--script-security 2
32r34wgf3e

0

İşte geldiğim çözüm: Tünel çalışıyorken bir komut dosyası çalıştırmanıza izin veren bir anahtar var. Anahtarı doğru olduğunu bildiğim biri ile resolv.conf dosyasının üzerine yazmak için kullanın. Bu tamamen bir hack, biliyorum.

sudo openvpn --up reset-dns.sh --client client.ovpn

komut dosyası (reset-dns):

#!/bin/bash
cp ~/resolv.conf /etc/resolv.conf

Ayrıca, "OMG! O tüneli kök olarak yürütüyorsun!" Başka hiçbir şekilde işlemez; DNS saldırımdan önce bile.

Kesinlikle daha iyi bir yola açığım. Ubuntu ağ yöneticisi çalışmaz. Ben tekrar tekrar ubuntu için bilet kestim

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.