Log OpenVPN: cipher kanal kontrol versus cipher kanal data
DHE-RSA-AES256-SHA dalam log menjelaskan kanal kontrol TLS, bukan cipher yang melindungi lalu lintas Anda. Temukan hasil terpisah kanal data.
Baris log yang menyebut DHE-RSA-AES256-SHA bukan ringkasan seluruh koneksi. Baris itu milik jabat tangan TLS yang melindungi kanal kontrol, dan lalu lintas di dalam terowongan bisa dienkripsi dengan cara yang sama sekali berbeda. Menyajikannya sebagai cipher data VPN adalah kesalahan yang harus dihindari.
Ada dua hasil yang penting, dan keduanya menjawab pertanyaan berbeda. Satu adalah suite TLS yang dinegosiasikan untuk kanal kontrol; yang lain adalah cipher data untuk paket yang dibawa terowongan.
Dua hasil, dua pertanyaan
Kanal kontrol membawa jabat tangan dan pesan manajemen antarpihak. Cipher-nya dipilih oleh tumpukan TLS, jadi namanya mengikuti konvensi TLS. Kanal data membawa lalu lintas pengguna dan dikonfigurasi oleh negosiasi cipher OpenVPN sendiri.
Putuskan pertanyaan mana yang Anda jawab sebelum membaca salah satu baris. Apakah terowongan terenkripsi dan apakah jabat tangan kuat bukanlah pertanyaan yang sama.
Kutipan log yang menunjukkan kedua baris adalah yang berguna. Baca baris kontrol untuk versi dan suite TLS, dan baris data untuk algoritme yang benar-benar melindungi muatan.
Uraikan nama suite TLS dalam konteksnya sendiri
Dalam nama bergaya OpenSSL historis seperti DHE-RSA-AES256-SHA, setiap komponen menjelaskan keputusan berbeda. DHE adalah kesepakatan kunci Diffie-Hellman efemeral, RSA adalah metode autentikasi, AES256 adalah AES-256 dalam mode CBC untuk catatan TLS, dan SHA adalah MAC catatan berbasis SHA-1.
Komponen terakhir bukan sidik jari sertifikat, dan membacanya seperti itu adalah kesalahan umum. Nama itu juga tidak menyebut versi protokol dengan sendirinya, karena TLS 1.3 memakai skema penamaan yang sama sekali berbeda. TLS_AES_256_GCM_SHA384 mengikuti bentuk yang lebih baru itu, di mana hash akhir adalah bagian dari susunan suite, bukan pilihan MAC. Terapkan pembacaan per komponen hanya pada gaya penamaan yang lebih lama.
referensi suite OpenSSL menghubungkan nama-nama ini dengan definisinya jika ada komponen yang tidak dikenal.
Baca hasil kanal data untuk lalu lintas yang dibawa
Untuk lalu lintas yang dibawa, baca baris kanal data dari sesi yang sama. Daftar data-ciphers dalam konfigurasi adalah himpunan yang diizinkan, bukan bukti bahwa algoritme tertentu telah dinegosiasikan. Log mencatat pilihan; konfigurasi mencantumkan menu.
Cipher AEAD seperti AES-GCM membawa pemeriksaan integritasnya sendiri, jadi HMAC kanal data terpisah bukan bagian dari jalur itu.
Direktif auth tidak meningkatkan TLS, sertifikat, atau cipher data. Direktif itu memilih digest untuk bagian protokol yang masih memakainya, dan dengan cipher data AEAD tidak ada HMAC data terpisah untuk dikonfigurasi.
Jauhkan pemeriksaan identitas dari hasil cipher
Algoritme tanda tangan sertifikat, validasi rantai kepercayaan, dan verifikasi nama rekan adalah tiga sifat lain yang tidak dikatakan oleh nama cipher. Sertifikat yang kedaluwarsa gagal, sekuat apa pun suite-nya. Nama server yang tidak cocok gagal dengan cara yang sama. Memperbaiki pengaturan digest di profil tidak memperbaiki keduanya.
Simpan pemeriksaan itu di catatan tinjauan di samping hasil cipher, bukan dilebur ke dalamnya.
Catat hasil yang dinegosiasikan dari sesi saat ini
Ambil hasil dari koneksi saat ini dan catat versi klien serta server bersamanya. Log yang hanya ditambahkan bisa memuat baris sesi lama, dan mengutipnya sebagai yang saat ini adalah cara masalah yang sudah diperbaiki tampak bertahan.
Untuk tinjauan kebijakan, serahkan kepada pemilik konfigurasi versi dan suite TLS yang dinegosiasikan, cipher data yang dipilih, dan pengaturan validasi sertifikat secara bersamaan. Ubah lapisan itu, lalu baca log baru untuk mengonfirmasi nilai hasil negosiasi yang baru.