Sifer Windows dan strongSwan: padankan lapisan yang betul
Panjang kunci yang sama bukanlah sut yang serasi. Asingkan dasar IKE daripada transformasi ESP dan simpan CBC serta GCM dalam cadangan berbeza.
Kedua-dua hujung berkata AES-128 dan terowong masih enggan dibina. CBC dan GCM ialah transformasi berbeza yang kebetulan berkongsi panjang kunci yang sama, dan klien yang menawarkan satu tidak memenuhi gateway yang hanya menerima yang lain. Perkataan AES menerangkan sebuah keluarga, bukan persetujuan.
Terdapat juga paksi kedua, dan itulah yang menghasilkan ralat yang mengelirukan.
Dua lapisan, dua senarai bebas
IKE melindungi rundingan itu sendiri, manakala persatuan anak melindungi trafik yang benar-benar anda pedulikan. Windows mendedahkan yang pertama sebagai kaedah penyulitan dan kaedah integriti, dan yang kedua sebagai pemalar transformasi sifer dan pengesahan. Medan itu bukan alias antara satu sama lain, dan nilai yang sah dalam satu mungkin tidak bermakna atau salah dalam yang lain. Membaca profil dengan pemisahan itu dalam fikiran menghilangkan sebahagian besar kekeliruan.
Kesan praktikalnya ialah anda boleh mempunyai dasar pertukaran kunci yang sepenuhnya boleh diterima dan dasar saluran data yang tidak akan diterima oleh rakan. Satu senarai berunding; yang lain melindungi paket. Menukar nilai dalam yang pertama tidak memberi kesan kepada yang kedua, betapa serupanya kedua-duanya dalam dialog konfigurasi.
Tuliskan kedua-dua senarai sebelum membandingkannya dengan gateway. Perbandingan dari ingatan ialah cara satu medan diedit dua kali dan yang lain tidak pernah. Biarkan konsol gateway terbuka di sebelah profil.
Baca ralat di sebelah cadangan
Peringkat yang gagal memberitahu anda senarai mana yang perlu diperiksa. Penolakan semasa pertukaran kunci awal ialah masalah cadangan IKE, dan ia berlaku sebelum sebarang persatuan anak wujud. Kegagalan semasa persatuan trafik terlindung dirundingkan ialah masalah cadangan ESP, dan pertukaran kunci sudah berjaya. Mesej padanan dasar generik daripada klien tidak menamakan mana-mana peringkat, sebab itu pandangan gateway sendiri yang berguna.
swanctl --list-conns
swanctl --list-sas
journalctl -u strongswan -n 60 --no-pager
Bandingkan cadangan yang diterima, cadangan yang dikonfigurasikan dan yang dipilih untuk percubaan tunggal itu. Tiga senarai berbeza penting di sini, dan hanya yang terakhir menerangkan apa yang sebenarnya digunakan. Petik perkataan demi perkataan dalam tiket dan bukannya meringkaskannya.
Simpan CBC dan GCM sebagai alternatif berasingan
Gateway yang sengaja dibenarkan menerima mana-mana keluarga memerlukan dua cadangan, bukan satu. Dalam strongSwan koma memisahkan alternatif, dan sempang menyambungkan komponen satu sut. Menggabungkan kedua-dua keluarga dengan sempang menghasilkan satu cadangan mustahil dan bukannya dua yang boleh diterima.
proposals = aes128gcm16-prfsha256-ecp256, aes128-sha256-ecp256
esp_proposals = aes128gcm16-ecp256
Alternatif pertama membawa penyulitan disahkan dan masih menamakan fungsi pseudorawak, kerana terbitan kunci memerlukannya walaupun integriti datang daripada sifer. Alternatif kedua ialah penyulitan klasik dengan algoritma integriti berasingan. Kedua-duanya masih bergantung pada apa yang disokong oleh pelaksanaan kripto yang dimuatkan.
Cadangan ESP bukan cadangan IKE yang dinamakan semula
Token sifer kelihatan sama dalam kedua-dua senarai, dan hampir tiada apa-apa lagi yang dipindahkan. Cadangan ESP tidak mempunyai fungsi pseudorawak pertukaran kunci, dan keperluan integriti serta kerahsiaan ke hadapannya dihujahkan terhadap dasar Windows di pihak sebelah sana dan bukannya disalin daripada baris IKE. Menterjemah satu senarai ke senarai yang lain secara mekanikal menghasilkan sesuatu yang mengesahkan dan tidak pernah berunding.
Pilih satu arah dan kekal di dalamnya. Sama ada gateway mengekalkan dasar GCM sahaja dan klien menggunakan dasar serasi yang lengkap, atau gateway menerima kedua-dua keluarga dan klien mengekalkan sut sedia ada. Mengaktifkan sandaran yang dilarang oleh dasar keselamatan bukanlah pembetulan, sepantas mana pun ia membersihkan ralat.
Sahkan kedua-dua sut, kemudian pembaharuan kunci
Sahkan sut pertukaran kunci yang dipilih dan sut trafik yang dipilih secara berasingan, kerana ia datang daripada senarai berbeza dan boleh berjaya secara bebas. Kemudian biarkan pembaharuan kunci berlaku dan sahkan juga. Genggaman tangan pertama yang berfungsi dan pembaharuan kunci yang gagal menerangkan satu set cadangan yang hanya sebahagiannya boleh diterima.
Simpan bukti itu bersama perubahan. Pemutusan berulang memerlukan rekod pertukaran gagal tersendiri sebelum seseorang menyalahkan pemasa atau kecacatan platform.