Di manakah laluan sepatutnya berada dalam OpenVPN: pada klien atau pelayan?
Laluan kosong dalam konfigurasi pelayan mengubah pelayan, bukan klien. Pilih fail klien, push global atau push untuk satu klien, dan semak apa yang tiba.
Anda menambah route 10.60.0.0 255.255.255.0 ke dalam konfigurasi pelayan, memulakan semula, menyambung semula komputer riba, dan subnet itu masih tidak dapat dicapai dari komputer riba tersebut. Baris itu diterima, perkhidmatan bermula dengan bersih, dan tiada apa yang kelihatan salah dalam log. Apa yang berlaku ialah laluan itu dipasang pada mesin yang anda sunting: gateway kini percaya ia boleh mencapai awalan itu, manakala klien tidak diberitahu apa-apa. Kedudukan ialah keseluruhan persoalan, dan ada empat tempat baris yang sama boleh tinggal.
Empat tempat dan siapa menerima setiap satu
Laluan boleh ditambah oleh konfigurasi klien itu sendiri, ditawarkan kepada setiap klien melalui push global, ditawarkan kepada satu klien melalui fail khusus klien, atau ditulis ke dalam konteks penghalaan pelayan itu sendiri.
Keempat-empat kes itu menggunakan sintaks yang hampir sama dan menghasilkan keputusan yang sama sekali berbeza. Tiga yang pertama mempengaruhi apa yang klien hantar ke dalam terowong; yang keempat mempengaruhi bagaimana pelayan mencapai rangkaian, yang berguna apabila pelayan itu sendiri memerlukan laluan dan berbahaya apabila ia disalah anggap sebagai pengagihan.
Tentukan yang mana antara empat itu anda mahu sebelum menulis baris, kemudian sahkan penerimanya.
| Placement | Effect | Receiver |
|---|---|---|
| Client profile route | Installed by the client at connect | That client only |
Global push "route ..." | Sent to every client that accepts pushed options | All pulling clients |
| Client-specific push | Sent to the matching client context | One identity |
| Server config route, no push | Added to the server's own table | The gateway itself |
Mengapa laluan pelayan kosong mengejutkan orang
Konfigurasi pelayan ialah tempat pertama pentadbir melihat, dan arahan laluan di situ dibaca seperti pernyataan tentang rangkaian VPN. Bukan. OpenVPN menganggapnya sebagai pemasangan laluan setempat pada mesin yang menjalankan daemon, yang merupakan jenis perubahan yang sama seperti yang anda lakukan dengan ip route dan kemudian lupakan.
Pengagihan memerlukan laluan itu di-push, dan push memerlukan klien menariknya. Klien yang dimulakan dengan pilihan tarikan dimatikan mengabaikan tawaran itu sepenuhnya. Periksa kedua-dua hujung jabat tangan itu sebelum menulis semula fail pelayan, kerana log pelayan tidak akan mengadu: dari sisinya tawaran telah dihantar. Laluan yang diterima juga hanya berkuat kuasa pada sambungan seterusnya, tidak pernah dalam sesi yang anda sudah ada.
Sebaik sahaja anda melihat kedua-duanya sebagai operasi berasingan, kegagalan berhenti menjadi misteri: pelayan mencapai awalan itu, klien tidak, dan kedua-dua pernyataan itu benar pada masa yang sama.
Fail setiap klien dan identiti yang dipadankannya
Fail khusus klien dinamakan sempena identiti yang disahkan oleh pelayan, yang secara lalai ialah nama umum sijil. Nama sambungan mesra dalam klien desktop bukan nilai itu, dan ketidakpadanan menghasilkan fail yang tidak pernah dibaca.
Periksa direktori yang benar-benar digunakan oleh pelayan, kemudian sahkan bahawa nama fail sepadan tepat dengan identiti yang disahkan, termasuk huruf besar dan kecil.
grep -n 'client-config-dir' /etc/openvpn/server/server.conf
ls -l /etc/openvpn/ccd/Di dalam fail itu laluan masih perlu di-push, kerana konteks setiap klien ialah satu set pilihan yang digunakan pada sesi klien itu, bukan jadual penghalaan setempat. Laluan kosong di situ mempunyai masalah yang sama seperti laluan kosong dalam fail global.
Fail klien sendiri dan alat yang memilikinya
Laluan yang diletakkan dalam konfigurasi klien dipasang apabila klien itu bersambung dan dialih keluar apabila ia terputus, yang merupakan kitaran hayat yang betul untuk destinasi statik.
Jika pengurus rangkaian memiliki profil itu, ia mungkin mengimport pilihan itu sekali dan kemudian menyimpan salinannya sendiri. Menyunting fail yang dimuat turun selepas itu tidak mengubah apa-apa, yang merupakan punca biasa "laluan ada tetapi tidak terpakai".
Periksa profil aktif dan bukan fail yang anda muat turun, dan periksa tetapan import yang dipaparkan oleh pengurus. Kemudian sambung dan tanya sistem laluan mana yang digunakan oleh alamat tertentu, daripada menganggap terowong menang kerana laluan itu wujud dalam fail teks.
Sahkan pada klien, kemudian periksa laluan balik
Tanya jadual penghalaan klien itu sendiri tentang destinasi, bukan jadual pelayan. Carian untuk satu hos di dalam awalan itu sudah cukup untuk menunjukkan antara muka dan hop seterusnya yang akan digunakan.
ip route get 10.60.0.10Jika carian menunjuk ke terowong, pengagihan berjaya dan masalah yang tinggal ada di tempat lain. Jika ia menunjuk ke gateway lalai, laluan itu tidak dipasang, ditapis oleh pilihan di sebelah klien, atau milik profil yang tidak digunakan oleh klien.
Anggap pengagihan berjaya dan masih tiada apa yang bertindak balas: maka periksa penghantaran ke hadapan pada gateway, laluan balik sebelah sana, dan mana-mana firewall di antaranya. Laluan memilih jalan, ia tidak memberi akses.