Bagaimana cara menolak rute yang di-PUS oleh server OpenVPN?

27

Ketika saya membuat koneksi klien OpenVPN melalui Internet ke server OpenVPN perusahaan kami, ia mendorong beberapa rute statis. Sayangnya, rute ini memutus konektivitas di lingkungan jaringan lokal saya, karena mereka bertabrakan dengan rute saya sendiri. Bagaimana saya bisa menolak rute itu?

mbaitoff
sumber

Jawaban:

30

Waktu telah beranjak, dan mulai 2017 (OpenVPN 2.4) ini dimungkinkan dengan

pull-filter accept "route 192.168."
pull-filter ignore "route 172."
pull-filter accept "route 1"
pull-filter ignore "route "

Ini (contoh yang dibuat-buat) akan memungkinkan rute dipelajari yang dimulai dengan 192.168, mengabaikan semua 172. rute, memungkinkan rute lain ke 1.anything dan kemudian mengabaikan semua rute lainnya.

Untuk mengabaikan redirect-gatewayAnda dapat:

pull-filter ignore redirect-gateway

Perintah-perintah ini ditambahkan ke file konfigurasi klien Anda.

Anda juga dapat menggunakan kata kunci rejectyang memberi tahu server VPN bahwa itu tidak diterima. Tidak yakin penggunaan ini.

Dan akhirnya, Anda juga bisa memfilter opsi konfigurasi lainnya. Saya menggunakan ini untuk mengabaikan server DNS yang ditawarkan, karena DNS ditangani oleh server lokal untuk saya.

Criggie
sumber
3
Catatan, ini hanya berfungsi di OpenVPN 2.4.x.
ab77
Bekerja pada OpenVPN 2.4.7 menggunakan OpenVPN GUI 11.13.0 pada Windows 10 untuk menyelesaikan konflik subnet antara dua server OpenVPN Access, keduanya menggunakan konfigurasi default yang saya perlukan pada saat yang bersamaan. Terima kasih telah menyediakan karya terakhir untuk membuatnya bekerja!
flickerfly
24

Setelah mempelajari openvpnbuku pedoman ini secara ekstensif , saya telah menemukan jawaban untuk pertanyaan saya:

Saya tidak ingin rute dijalankan secara otomatis, tetapi ditangani oleh alat Anda sendiri, gunakan opsi berikut:

   --route-noexec
          Don't add or remove routes automatically.  Instead pass routes to --route-up script using environmental variables.

Jika Anda menerima semua yang didorong oleh server kecuali rute, gunakan opsi berikut:

  --route-nopull
          When used with --client or --pull, accept options pushed by server EXCEPT for routes.
          When used on the client, this option effectively bars the server from adding routes to the client's routing table, however note that
          this option still allows the server to set the TCP/IP properties of the client's TUN/TAP interface.
mbaitoff
sumber
2
fyi Anda juga dapat menggunakan route-nopulldalam file konfigurasi .opvn: stackoverflow.com/questions/35698215/…
knocte
1

Anda tidak dapat menolak rute individual, namun jika Anda memiliki akses untuk mengedit konfigurasi OpenVPN Anda, maka Anda dapat secara efektif menghentikan server --pushkonfigurasi apa pun untuk Anda dengan menghapus semua instance clientatau pulldari konfigurasi Anda. Sebagai gantinya, Anda perlu menambahkan tls-clientjika arahan ini belum ada di konfigurasi Anda ( clienthanya sinonim untuk pull, tls-client).

Tentu saja, jika Anda melakukan itu, Anda akan kehilangan semua rute dan konfigurasi lainnya yang biasanya akan pushdiedit kepada Anda, jadi Anda harus mengkonfigurasi pengaturan ini secara manual setelah terowongan Anda muncul.

Mike Insch
sumber
hei Mike, dan bagaimana cara secara manual menghubungkan rute ke hanya subnet yang saya minati? (10.0.0._) cara apa pun untuk mengonfigurasi ini dalam file .opvn?
knocte
rute 10.0.0.0 255.0.0.0
markhorrocks