Ada server OpenVPN yang berjalan di Debian dan mendorong DNS di file konfigurasi server:
tekan "dhcp-option DNS 8.8.8.8"
Apakah ada opsi untuk memungkinkan pengguna mengubah server DNS di sisi klien?
Inilah yang perlu dilakukan, server openvpn harus mendorong DNS karena jika tidak, banyak klien OpenVPN tidak akan dapat membuka halaman web sampai secara manual mengatur server DNS dalam pengaturan jaringan sistem.
Tujuan saya adalah untuk secara otomatis menerapkan server DNS default untuk pengguna yang tidak memiliki keterampilan teknis, dan juga memungkinkan pengguna komputer yang terampil untuk mengatur server DNS mereka sendiri.
Perhatikan bahwa hanya mengubah pengaturan DNS pada PC sementara opsi 'push "dhcp-option DNS 8.8.8.8"' aktif di server openvpn, tidak melakukan apa-apa. DNS yang didorong oleh server tetap terlepas dari pengaturan DNS lokal.
Ada ide?
Konfigurasi server OpenVPN:
# cat /etc/openvpn/openvpn.conf
server 10.186.35.0 255.255.255.0
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
ifconfig-pool-persist ipp.txt
#push "route 0.0.0.0 0.0.0.0"
#push "redirect-gateway"
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
comp-lzo
user nobody
group users
persist-key
persist-tun
status openvpn-status.log
verb 3
script-security 3
auth-user-pass-verify /etc/openvpn/auth-chap via-env
client-cert-not-required
duplicate-cn
management 127.0.0.1 5119
script-security 3 system
username-as-common-name
client-connect /etc/openvpn/scripts/clientconnect.sh
client-disconnect /etc/openvpn/scripts/clientdisconnect.sh
log-append /var/log/openvpn.log
log /var/log/openvpn.log
PEMBARUAN: Sistem operasi klien adalah Windows dan Mac
Jawaban:
Mulai 2017 (OpenVPN 2.4) ini sekarang mungkin. Tambahkan baris ini ke file konfigurasi klien Anda:
dan itu akan mengabaikan semua baris konfigurasi yang dimulai dengan teks yang dikutip.
Opsi dicocokkan dari atas ke bawah, sehingga pencocokan pertama digunakan. Anda dapat menggunakan ini untuk mengizinkan beberapa rute dan menolak yang lain, jika itu sesuai dengan kebutuhan Anda.
Tiga kata kunci aksi yang
accept
,ignore
, danreject
. Saya belum menemukan kasus penggunaan untukreject
.sumber
Dalam dokumentasi OpenVPN resmi Anda dapat menemukan:
Sayangnya, selain apa yang Anda minta, ini memiliki efek samping menonaktifkan juga redirect-gateway yang disediakan oleh konfigurasi Anda dan ini dapat mewakili masalah, untuk kasus Anda.
Apa yang saya sarankan adalah pendekatan yang sama sekali berbeda.
Seperti yang Anda sebutkan dengan jelas: " Tujuan saya adalah untuk secara otomatis menerapkan server DNS default untuk pengguna yang tidak memiliki keterampilan teknis, sementara juga memungkinkan pengguna komputer yang terampil untuk mengatur server DNS mereka sendiri. " DNS-config dan pengguna mana yang tidak Anda inginkan untuk memberikan konfigurasi tersebut.
Oleh karena itu, alih-alih mendorong konfigurasi Anda langsung ke file konfigurasi OpenVpn utama (... dan, karenanya, berikan konfigurasi tersebut kepada SEMUA pengguna Anda), Anda dapat mengimplementasikan konfigurasi per-pengguna . Anda dapat melakukan ini dengan:
Jadi, untuk konfigurasi utama, Anda harus menghapus :
dan tambahkan referensi ke direktori / etc / openvpn / userconf (sebagai contoh. Jangan ragu untuk memilih apa pun yang Anda suka):
Kemudian, dalam direktori userconf tersebut, buat satu file untuk masing-masing pengguna yang ingin Anda berikan DNS tersebut, termasuk dalam file tersebut dua baris yang dihapus di atas.
Tentunya Anda bebas untuk menyempurnakan konfigurasi openvpn untuk setiap pengguna, tidak membatasi kustomisasi pada dua baris di atas.
Sebagai catatan akhir, Anda mungkin tertarik pada parameter ccd-eksklusif juga.
sumber
Masalah saya tidak persis sama, tetapi gejalanya cukup mirip untuk pertanyaan ini muncul di hasil pencarian, jadi kalau-kalau ada orang lain di sini untuk alasan yang sama:
Saya menggunakan Tunnelblick , sebuah GUI OpenVPN untuk Mac OS. Server OpenVPN saya tidak disetel untuk mendorong opsi DHCP atau DNS apa pun, tetapi klien masih menggunakan server DNS melalui VPN, bukan server DNS lokal non-VPN yang ingin saya gunakan.
Solusinya adalah masuk ke Tunnelblick's Configurations → tab Settings dan ubah Set DNS / WINS ke Don't set nameserver .
sumber
Terima kasih untuk @aldaviva, ini berfungsi pada macOS 10.11 saya.
Lampirkan tangkapan layar saya.
sumber