Mengapa L2TP/IPsec Memerlukan UDP 1701 Selain IPsec
L2TP ialah protokol kedua yang bergerak di dalam yang pertama, jadi titik akhir masih perlu menghantar UDP 1701 selepas penyahkapsulan, walaupun tiada peranti perantara melihatnya.
Firewall yang membenarkan IKE dan ESP tetapi tidak UDP 1701 memutuskan sambungan L2TP dengan cara yang kelihatan seperti masalah kelayakan. Puncanya ialah L2TP ialah protokol kedua yang bergerak di dalam yang pertama. IPsec membawa dan mengesahkan pertukaran itu, dan L2TP menjalankan terowongnya sendiri di atas UDP 1701, yang masih perlu dihantar oleh tindanan tempatan. Mengetahui di mana setiap pengepala muncul menjelaskan peranti mana yang memerlukan peraturan mana.
Dua protokol, dua set port
Sambungan L2TP/IPsec menggunakan IKE pada UDP 500, penembusan NAT pada UDP 4500 di tempat yang ada terjemahan, dan ESP sebagai protokol IP 50 di tempat yang tiada. L2TP sendiri ialah protokol terowong pada UDP 1701, dan ia berjalan selepas IPsec mengesahkan rakan. Kedua-dua bahagian gagal secara berbeza, dan baris log yang melaporkannya datang daripada komponen yang berbeza. Set peraturan yang hanya meliputi separuh pertama menghasilkan sambungan yang berunding dan kemudian mati pada peringkat terowong.
Nombor port menerangkan titik hujung pengangkutan, dan ESP sama sekali bukan port. Itulah sebabnya antara muka firewall yang hanya menawarkan peraturan TCP dan UDP tidak dapat menyatakan dasar IPsec yang lengkap. Protokol 50 mesti dibenarkan sebagai protokol, dan peraturan yang hanya menyebut UDP tidak akan pernah sepadan dengannya.
Pembalut menjelaskan port itu
Di wayar, sambungan L2TP/IPsec biasanya menunjukkan IKE pada 500 dan ESP terkapsul pada 4500. Pengepala UDP 1701 terletak di dalam muatan terlindung, sebab itu tangkapan pada antara muka luar tidak menunjukkannya. Hos tempatan masih perlu menghantar datagram itu kepada daemon L2TP, dan penghantaran berlaku selepas penyahkapsulan. Oleh itu peraturan 1701 tergolong dalam firewall titik akhir itu sendiri, walaupun tiada peranti perantara pernah melihat port itu.
Urutan pemprosesan menjelaskan sebahagian besar kekeliruan. Jika tindanan menggunakan dasar IPsec sebelum penapis hos, paket L2TP yang dinyahkapsul dipadankan sebagai UDP 1701; jika urutannya diterbalikkan, port luar itulah yang dilihat oleh set peraturan. Kedua-dua tingkah laku wujud dalam amalan, sebab itu set peraturan yang sama kelihatan berfungsi pada satu platform dan gagal pada platform lain.
Periksa laluan mengikut urutan
Tangkap antara muka luar dahulu dan sahkan bahawa IKE dan ESP terkapsul bergerak dalam kedua-dua arah. Kemudian periksa pembilang firewall tempatan untuk trafik yang dinyahkapsul. Urutan itu penting, kerana tangkapan yang tidak menunjukkan apa-apa bermakna masalahnya berada di hulu hos.
sudo tcpdump -ni eth0 'udp port 500 or udp port 4500'
sudo nft list ruleset | grep -i -A2 1701
sudo ss -lunp | grep 1701
Tangkapan itu mengesahkan separuh pertama pertukaran dan menunjukkan sama ada rakan menjawab. Senarai peraturan menunjukkan sama ada peraturan 1701 wujud dan di mana ia terletak berbanding mana-mana dasar pembuangan. Senarai soket mengesahkan bahawa daemon L2TP terikat dan mendengar, yang menyingkirkan perkhidmatan yang tidak pernah dimulakan. Baca ketiga-tiganya sebelum menukar peraturan, kerana pendengar yang tiada dan port yang ditapis menghasilkan aduan yang sama daripada pengguna.
Apa yang imbasan port tidak dapat tunjukkan
Imbasan luaran UDP 1701 terhadap pelayan yang dikonfigurasikan dengan betul biasanya tidak melaporkan apa-apa, dan itulah hasil yang dijangka. Port itu tidak terdedah kepada internet; ia hanya dicapai selepas IPsec mengesahkan rakan. Menganggap hasil tertutup itu sebagai kerosakan membawa kepada membuka port yang sepatutnya kekal tertutup. Imbasan tidak dapat melihat ke dalam terowong lebih daripada ia dapat melihat trafik aplikasi.
Cubalah dengan klien sebenar sebaliknya, dan baca peringkat yang dicapainya. Jika sambungan berunding dan kemudian tersekat, daemon L2TP atau penapis tempatan ialah suspek; jika ia tidak pernah berunding, port luar itulah puncanya. Pemisahan tunggal itu menghapuskan sebahagian besar tekaan tentang peraturan mana yang perlu ditambah, dan lapisan protokol menjadikannya boleh diramal dan bukannya misteri.