Perangkat lapangan membuka koneksi ke layanan, dan pertanyaan desain muncul sebagai pilihan antara VPN dan TLS. Kerangka itu salah, karena keduanya melakukan pekerjaan berbeda. TLS mengautentikasi titik akhir aplikasi dan melindungi percakapan; sedangkan VPN mengendalikan keterjangkauan dan melindungi paket antar rekan. Telusuri koneksi dari perangkat ke luar dan setiap lapisan punya jawabannya sendiri.

Jika Anda tidak dapat menyebutkan di mana TLS berakhir, Anda tidak dapat menyebutkan apa yang sebenarnya dipercaya aplikasi.

Temukan di mana TLS sebenarnya berakhir

Mulai dari aplikasi perangkat dan ikuti koneksi hingga proses yang menyelesaikan jabat tangan. Jika proksi mengakhiri TLS sebelum mainframe, jalur terlindungi berakhir di proksi. Lompatan yang tersisa membutuhkan perlindungan terdokumentasi sendiri.

Menyebutnya ujung ke ujung berdasarkan asumsi adalah cara tinjauan desain menyetujui celah. Gambarkan titik akhir dan jangkar kepercayaan pada diagram yang sama.

TLS membawa permintaan dan respons di kedua arah, jadi aplikasi dua arah tidak secara inheren membutuhkan VPN alih-alih TLS. Sebaliknya juga benar: penerapan mungkin masih membutuhkan VPN untuk protokol lain di perangkat yang sama.

Putuskan apa yang harus diautentikasi perangkat

Konfigurasikan validasi identitas server dan akar kepercayaan yang dimaksud. Jika setiap perangkat harus membuktikan identitasnya sendiri, pilih model autentikasi klien yang didukung dan daftarkan kredensial terpisah per perangkat. Kredensial bersama mengubah satu perangkat yang dicuri menjadi masalah seluruh armada.

Rencanakan perlindungan kunci, pembaruan, pencabutan, dan pemulihan sebelum pengiriman. Perangkat di lapangan yang tidak dapat didaftarkan ulang setelah pembaruan gagal berubah menjadi kunjungan lapangan, dan biaya itu membentuk desain lebih dari jabat tangan.

Gunakan pustaka yang didukung dan panduan terkini. Panduan penerapan TLS modern melarang negosiasi TLS 1.0 dan 1.1, dan rujukan ke TLSv1 dalam catatan desain lama bukan persyaratan.

Tutup saat jabat tangan gagal

Jabat tangan gagal atau pemeriksaan identitas gagal tidak boleh diam-diam kembali ke protokol teks jelas semula. Kembalinya itu adalah kerentanan yang seharusnya ditutup oleh pekerjaan TLS. Buat kegagalan terlihat oleh operator perangkat dan oleh layanan, dan wajibkan kanal terlindungi untuk operasi sensitif. Lalu biarkan otorisasi aplikasi memutuskan apa yang boleh dilakukan perangkat terautentikasi.

Definisikan masa hidup koneksi, pembingkaian, batas waktu, dan perilaku percobaan ulang sebagai bagian dari kontrak. Enkripsi tidak membuat perintah berulang menjadi aman, dan percobaan ulang setelah operasi sebelumnya yang tidak pasti membutuhkan jawaban di tingkat aplikasi.

Tuliskan aturan kembali. “Perangkat tersambung ulang tanpa TLS jika jabat tangan gagal” adalah keputusan desain, dan seharusnya eksplisit.

Beri VPN hanya pekerjaan yang bisa dilakukannya

VPN dapat membatasi keterjangkauan dan melindungi paket hingga rekannya sendiri. TLS melindungi hubungan aplikasi dengan titik akhir yang dipilih. Titik akhir keduanya bisa berbeda, dan tidak satu pun mengamankan data tersimpan titik akhir atau akses administratif.

Ukur biaya jabat tangan, perpesanan tetap, dan penyambungan ulang pada perangkat sebenarnya alih-alih mengasumsikan satu mekanisme lebih cepat. Lalu uji empat kasus yang penting: pertukaran yang dimaksud, identitas server yang salah, perangkat tidak sah, dan penyambungan ulang setelah operasi tidak pasti. Catat hasil setiap kasus, termasuk galat yang ditampilkan perangkat.

Artikel terkait