Dua aliran paket melintasi gateway Shorewall yang menerminasi OpenVPN, dan hanya satu di antaranya terenkripsi. Yang pertama adalah transport klien ke pendengar VPN pada antarmuka yang menghadap internet. Yang kedua adalah permintaan yang didekripsi yang keluar dari antarmuka terowongan menuju server kantor atau layanan di gateway. Petakan keduanya sebelum menyunting kebijakan, karena aturan yang memenuhi yang pertama tidak melakukan apa pun untuk yang kedua.

Gambarkan kedua aliran sebelum menyunting kebijakan

Tulis aliran sebagai baris dengan sumber, tujuan, protokol, dan porta. Pada jalur luar, sumbernya adalah alamat publik klien dan tujuannya adalah porta pendengar gateway; Shorewall memperlakukannya sebagai lalu lintas internet ke firewall. Pada jalur dalam, sumbernya adalah rentang alamat terowongan dan tujuannya adalah layanan yang disetujui. Kedua baris memiliki pemilik berbeda meskipun satu administrator memelihara keduanya.

FlowZone relationshipWhat to constrain
Encrypted OpenVPN transportInternet to the firewall hostThe listener's actual protocol and port
Decrypted request to a LAN serviceVPN clients to the LAN zoneOne approved server and service
Decrypted request to the gatewayVPN clients to the firewall hostOnly the local services required
Request to another VPN clientVPN clients to VPN clientsDenied unless deliberately required

Tambahkan baris hanya jika permintaan berakhir di gateway itu sendiri, seperti akses ke resolver atau administrasi. Layanan pada host mengikuti kebijakan masukan host, bukan jalur yang diteruskan. Mencampur keduanya adalah cara aturan terowongan yang sempit akhirnya membuka antarmuka administrasi.

Tetapkan zona terowongan dan cakupan antarmuka

Zona road-warrior dideklarasikan di /etc/shorewall/zones, antarmuka terowongan dipasang di /etc/shorewall/interfaces, dan koneksi luar dijelaskan di /etc/shorewall/tunnels. Sesuaikan dengan sintaksis rilis yang terpasang, karena urutan kolom dan nama opsi berubah antar versi utama. Porta contoh dalam panduan bukan alasan untuk mengizinkan porta yang berbeda dari yang benar-benar didengarkan daemon. TCP dan UDP tidak dapat dipertukarkan hanya karena angkanya sama.

Panduan mengelompokkan antarmuka dengan tun+. Pada host dengan lebih dari satu terowongan, wildcard itu dapat menempatkan VPN kedua dengan tingkat kepercayaan berbeda di zona yang sama. Tinjau cakupan terhadap antarmuka yang benar-benar ada, dan pertahankan penamaan di bawah siklus hidup manajer koneksi alih-alih menyunting nama antarmuka secara manual.

Panduan historis memuat contoh konfigurasi OpenVPN yang jauh lebih tua, dan saran kriptonya tidak boleh disalin ke penerapan saat ini. Pinjam model zona dan aliran sebagai gantinya. Ambil dasar kriptografi dari kebijakan OpenVPN gateway yang terpelihara.

Izinkan hanya jalur yang Anda klasifikasikan

Penerimaan luas dari zona VPN ke LAN adalah sketsa awal, bukan kebijakan jadi. Tulis sumber klien yang diizinkan, alamat layanan sebenarnya, protokol, dan porta. Lalu baca aturan di atasnya dan default zona, karena penambahan sempit tidak membatalkan izin luas yang sudah cocok. Lalu lintas ke host gateway adalah hubungan terpisah dari lalu lintas yang diteruskan melaluinya.

Lalu lintas antar klien memerlukan keputusannya sendiri. client-to-client OpenVPN dan routeback Shorewall keduanya memengaruhi apakah klien dapat saling menjangkau, dan tidak satu pun boleh diaktifkan hanya agar satu aplikasi LAN berfungsi. Putuskan di mana isolasi diberlakukan sebelum Anda mengujinya.

Pertahankan jalur balasan dalam rencana yang sama. Layanan atau routernya harus tahu cara mengembalikan lalu lintas ke rentang terowongan, atau desainnya harus menerjemahkan sumber secara sengaja dan dalam cakupan yang dimaksud.

Validasi, lalu buktikan kedua jalur

Validasi konfigurasi sebelum memulai ulang apa pun, dan biarkan sesi administratif independen tetap terbuka jika kebijakan baru salah.

shorewall check

Setelah pemeriksaan bersih, terapkan konfigurasi dan baca kembali apa yang dimuat Shorewall. Pembacaan ini menggambarkan kebijakan yang berjalan, bukan apa yang tampaknya dikatakan sebuah berkas.

shorewall show zones
ip route get 192.168.10.20

Uji satu permintaan diizinkan yang baru dan satu permintaan yang sengaja ditolak dari klien yang sama. Jabat tangan OpenVPN yang berhasil hanya membuktikan pertukaran luar; layanan yang diizinkan dan sumber daya yang ditolak membuktikan kebijakan dalam yang Anda maksudkan. Lalu sambungkan kembali klien dan ulangi, karena nama dan alamat antarmuka terowongan dapat berubah antar sesi. Jika hasilnya berbeda, perbaiki cakupan zona alih-alih memperlebar aturan.

Artikel terkait