Tunel tapak ke tapak menjawab satu soalan, sama ada kedua-dua pejabat boleh bertukar paket, dan membiarkan yang penting terbuka: peranti cawangan mana boleh mencapai perkhidmatan pusat yang mana. Menganggap tunel sebagai kepercayaan bersama ialah cara komputer riba tetamu berakhir di laluan yang sama dengan pelayan kewangan. Penyelesaiannya bukan tunel yang lebih baik, tetapi senarai kebenaran eksplisit yang dikuatkuasakan selepas penyahsulitan. Panduan ini membawa senarai itu daripada definisi kepada penafian yang terbukti.

Bekerja mengikut urutan ini, dan jangan meluaskan laluan tunel sehingga langkah dasar di bawah lulus.

Tulis matriks sebelum menyentuh get laluan

Baris yang berguna menamakan tiga perkara: kumpulan sumber, hos atau rangkaian perkhidmatan destinasi, dan protokol serta port yang benar-benar digunakan oleh aplikasi. Cawangan dan pusat data bukan entri. DNS peribadi dan perkhidmatan pengesahan mendapat baris sendiri hanya apabila aplikasi tidak dapat berfungsi tanpanya.

Kumpulkan sumber mengikut peranan dan bukan mengikut kemudahan subrangkaian: kakitangan, tetamu, pentadbiran. Apabila ketiga-tiganya berkongsi satu LAN rata, get laluan tidak dapat membezakan mereka pada lapisan rangkaian, jadi kawalan identiti atau segmentasi mesti datang dahulu. Kemudian letakkan matriks itu secara bertulis dengan pemilik dan tarikh semakan pada setiap baris.

SumberDestinasiPerkhidmatanKeputusan
kakitangan cawanganaplikasi tempahan 10.10.5.10TCP 443benarkan pada get laluan yang menyahsulit
kakitangan cawanganVLAN pentadbiran pelayanmana-manapenafian tersirat
Wi-Fi tetamumana-mana julat pusatmana-manatolak sebelum tunel
hos lompat pentadbiranVLAN pelayanTCP 22 dan 3389benarkan dengan MFA, tembok api hos menyempitkan lagi

Kuatkuasakan di tempat paket dinyahsulit

Peraturan yang membenarkan IKE dan ESP hanya membina tunel luar. Trafik dalaman tiba secara terbuka pada antara muka tunel, dan di situlah senarai kebenaran berada: rantaian pemajuan pada peranti yang menyahsulit, lepasan lalai, satu peraturan bagi setiap baris matriks. Pada get laluan Linux itu bermakna pemajuan diaktifkan dan peraturan penapis berada pada peranti tunel, bukan pada pautan fizikal, seperti yang dijelaskan oleh panduan pemajuan strongSwan.

Pemilih trafik ialah keputusan penghalaan, bukan keputusan kebenaran. Pemilih luas yang meliputi kedua-dua subrangkaian mungkin betul untuk penghalaan manakala tembok api masih hanya membenarkan TCP 443 ke satu hos. Pemilih dirundingkan untuk tunel dan menerangkan apa yang boleh masuk ke dalamnya, bukan apa yang boleh digunakan oleh peranti tertentu. Jangan sekali-kali meluaskan peraturan tembok api kerana pemilih itu luas.

iptables -A FORWARD -i tun0 -s 10.20.0.0/24 -d 10.10.5.10 -p tcp --dport 443 -j ACCEPT
iptables -A FORWARD -i tun0 -j DROP

NAT dan subrangkaian bertindih mengubah peraturan

Apabila get laluan cawangan menterjemah setiap hos ke satu alamat sebelum tunel, setiap baris berasaskan sumber runtuh ke alamat tunggal itu. Sama ada hentikan penterjemahan trafik tunel, atau terima bahawa peraturan mesti bersandar pada sesuatu yang lain, seperti alamat sumber asal yang direkodkan sebelum penterjemahan. Hujung jauh mempunyai masalah yang sama, kerana hos destinasi melihat alamat selepas NAT dan bukan yang asal.

Julat bertindih ialah perangkap yang lain. Dua pejabat yang kedua-duanya menggunakan 192.168.1.0/24 tidak boleh diterangkan dalam satu jadual dasar tanpa memetakan satu pihak, dan pemetaan bukan pengganti pengalamatan yang tidak berlanggar. Betulkan pelan sebelum menulis peraturan yang terpaksa anda buka kemudian.

Buktikan penafian, bukan hanya kejayaan

Menguji hanya aplikasi yang dibenarkan membuktikan sangat sedikit, kerana peraturan longgar di suatu tempat di hulu menghasilkan keputusan yang sama.

Dari peranti cawangan biasa, capai perkhidmatan yang dimaksudkan dan sahkan keseluruhan sesi berfungsi. Kemudian cuba destinasi yang mesti kekal tertutup, seperti port pentadbiran pada pelayan yang tiada urusan dengan cawangan, dan baca pembilang atau entri log yang menggugurkannya. Melumpuhkan set peraturan untuk memeriksa sama ada ia berfungsi membatalkan ujian dan membiarkan get laluan terbuka semasa anda melihat.

Kekalkan senarai itu hidup

Aplikasi bergerak, dan peraturan yang hidup lebih lama daripada aplikasinya menjadi lubang yang tiada siapa memilikinya. Lampirkan tarikh semakan pada baris, dan tukar skop pemilih serta peraturan tembok api dalam langkah penyelenggaraan yang sama apabila perkhidmatan bertukar alamat.

Sekatan peringkat hos masih penting di belakang tunel: tembok api pelayan itu sendiri harus menerima julat cawangan hanya untuk perkhidmatan yang diterbitkannya. Dua lapisan yang bersetuju lebih mudah diaudit daripada satu lapisan yang dipercayai sepenuhnya.

Artikel berkaitan