Permintaan selalu datang dalam bentuk yang sama: tutup IPsec di tepi karena membawa terowongan yang tidak disetujui siapa pun, dan keluhan pertama datang dari orang yang ponselnya berhenti melakukan panggilan lewat Wi-Fi. Kedua fakta sama-sama benar, dan tidak satu pun membenarkan melepas kendali. Yang dibutuhkan firewall adalah pengecualian layanan dengan fitur bernama, sumber terbatas, tujuan terdokumentasi, dan pemilik. Lima langkah mengubahnya menjadi aturan yang bisa ditinjau orang asing tahun depan.

Namai layanannya sebelum menamai protokolnya

Telepon meja pada layanan SIP dan perangkat yang menjalankan Wi-Fi Calling operator tidak berbagi profil jaringan, dan VoIP sebagai istilah firewall tidak menggambarkan keduanya. Data port dan tujuan harus berasal dari vendor atau operator yang menjalankan layanan, bukan dari daftar port yang diingat milik sistem telepon lain. Itulah perbedaan antara aturan yang melindungi fitur dan aturan yang melindungi kata.

Referensi port layanan Apple mencantumkan UDP 500 dan 4500 untuk Wi-Fi Calling, yang kebetulan merupakan pasangan persis yang dibuang oleh sebagian besar blokir IPsec menyeluruh. Tuliskan nama fitur di catatan perubahan di samping port tersebut. Tambahkan versi atau tanggal referensi yang Anda gunakan, karena tabel vendor diedit. Aturan yang menyebut layanan yang menjadi alasannya dapat ditinjau; yang menyebut kategori protokol tidak.

Tulis pengecualian sebagai kontrak, bukan bantuan

Pengecualian menyatakan fitur yang diizinkan, kelas perangkat yang memakainya, transportasi yang dibutuhkan, dan tujuan yang didokumentasikan pihak yang bertanggung jawab. Pengecualian juga memuat pemilik dan tanggal tinjauan, karena titik akhir operator dan model perangkat berubah tanpa memberi tahu tim firewall. Berikan tinjauan kepada seseorang, bukan nama tim yang akan bertahan lebih lama daripada timnya. Pertahankan rumusan cukup spesifik agar orang asing dapat menurunkan aturan hanya dari catatan.

Letakkan pengecualian pada siklus yang sama dengan kebijakan tepi lainnya, sehingga operator yang memindahkan tujuan atau armada yang mengganti model perangkat diketahui saat tinjauan, bukan saat gangguan berikutnya. Tutup lingkaran dengan orang yang melaporkan panggilan terputus, karena hanya dia yang dapat mengonfirmasi perbaikan tanpa membuka kembali terowongan yang seharusnya ditutup oleh blokir. Konfirmasi itu juga masuk ke catatan, dengan tanggal.

Izin permanen yang diberi label perbaikan ponsel sementara tidak dapat dipertahankan dua tahun kemudian. Izin yang terikat pada layanan yang teridentifikasi memiliki masa berlaku yang diperpanjang dengan sengaja.

Batasi sumber dengan jujur

Membatasi pengecualian pada segmen perangkat terkelola jauh lebih kuat daripada membuka protokol untuk setiap laptop di gedung. Jika jaringan tidak dapat mengenali segmen itu, tuliskan hal itu alih-alih menyiratkan bahwa aturan tersebut mengetahui perangkat. Hasil baik termurah adalah memakai ulang batas yang sudah ada karena alasan lain, sehingga pengecualian mewarisi kendali alih-alih menciptakan yang baru. Penyaringan berdasarkan alamat bukan autentikasi perangkat, dan catatan perubahan tidak boleh menyiratkan sebaliknya.

Alamat sumber atau alamat perangkat keras bukan bukti keberadaan ponsel fisik. Apakah salah satunya bermakna sepenuhnya bergantung pada kendali lain di dalam segmen itu. Jika argumen aturan bertumpu pada alamat MAC, periksa apa yang mencegah pengguna mengubahnya sebelum aturan dirilis.

Terima apa yang tidak bisa dikatakan aturan port

Port mengidentifikasi titik akhir transportasi, bukan niat bisnis. Ketika layanan panggilan yang disetujui dan terowongan yang tidak disetujui sama-sama berjalan pada UDP 4500, tidak ada aturan berbasis port yang memisahkannya. Aturan yang mengklaim melakukannya tampak tepat dan tidak, yang lebih buruk daripada aturan yang mengakui bentuknya sendiri. Ini batas mekanismenya, bukan kesalahan penulisnya.

Katakan itu di samping aturan, dan pasangkan pengecualian dengan penegakan apa pun yang dimiliki jaringan, seperti manajemen perangkat atau daftar tujuan yang diizinkan. Lalu nyatakan pengecualian sesempit mungkin sesuai alat, misalnya dengan aturan nftables yang menyebut segmen dan pasangan port serta menempatkan penolakan umum setelahnya:

nft add rule inet edge forward ip saddr 10.40.0.0/24 udp dport { 500, 4500 } counter accept
nft add rule inet edge forward udp dport { 500, 4500 } counter drop

nftables mengevaluasi secara berurutan dan berhenti pada kecocokan pertama, jadi izin yang dibatasi harus berada di atas penolakan umum. Balik keduanya dan pengecualian diam-diam tidak melakukan apa pun.

Validasi fitur dan penolakan

Jalankan validasi yang disetujui pada panggilan Wi-Fi biasa, dari kelas perangkat yang menjadi alasan pengecualian, dan pastikan klien yang dikecualikan masih gagal. Jangan pernah menggunakan panggilan darurat sebagai kasus uji dalam keadaan apa pun. Lalu periksa aturan yang dirilis, karena penghitung yang macet di nol adalah bukti tercepat bahwa pengecualian tidak pernah cocok:

nft -a list chain inet edge forward

Sertakan penyambungan ulang atau perubahan jaringan dalam pengujian, dan ulangi dari awal dingin dengan ponsel bergabung ke jaringan alih-alih sudah terpasang. Jika penghitung bergerak sementara panggilan masih gagal, masalahnya sudah keluar dari firewall dan menjadi urusan daftar tujuan operator.

Artikel terkait