Empat keluarga protokol mencakup hampir setiap perangkat yang masih ada di rak, dan masing-masing gagal dengan cara berbeda di Linux. Port yang dipublikasikan dan proposal yang dikonfigurasi di ujung jauh menentukan paket Anda, bukan distribusi yang kebetulan Anda jalankan. Memasang apa yang disebut pos forum lalu mengedit sampai sesuatu tersambung adalah cara satu sore hilang. Baca perangkatnya, pasang kedua, verifikasi ketiga.

Catat apa yang dipublikasikan ujung jauh

Tuliskan protokol, port, dan autentikasi yang diharapkan perangkat sebelum Anda membuka manajer paket. Empat keluarga mencakup sebagian besar peralatan lama, dan tabel di bawah adalah seluruh keputusan dalam satu layar.

FamilyPortsLinux side
PPTPTCP 1723 plus GRE, IP protocol 47pppd with a peer file
L2TP/IPsecUDP 500, 4500, 1701NetworkManager plugin over strongSwan
IKEv1 aggressive with XAuthUDP 500native strongSwan connection
AnyConnect-style portalTCP 443openconnect with a TUN device

Buku manual dan aturan firewall perangkat itu sendiri lebih dapat dipercaya daripada nama protokol di halaman masuknya. Perangkat yang mengiklankan IPsec mungkin hanya berbicara IKEv1, dan rilis firmware yang tidak pernah diterapkan siapa pun mungkin yang akhirnya menambahkan IKEv2. Konfirmasi jalur data sekaligus port penyiapan, karena di situlah peralatan lama dan jaringan modern berbeda. Salah di langkah ini berarti men-debug klien Anda terhadap fitur yang tidak pernah dimiliki ujung seberang.

PPTP: buktikan GRE sebelum menyunting pppd

PPTP di Linux bukan daemon yang Anda jalankan melainkan pemanggilan pppd, dan parameter koneksi berada di berkas peer bernama yang dibaca pppd saat dipanggil. Distribusi masih mengemasnya, meski kelemahan protokol yang diketahui membuatnya tidak layak untuk apa pun yang sensitif, jadi simpanlah secara ketat untuk perangkat yang tidak menawarkan hal lain. Perhatikan GRE saat klien bernegosiasi, dengan tangkapan singkat alih-alih dugaan. Kegagalan yang paling banyak membuang waktu bukan autentikasi melainkan jalur data yang hilang.

pppd call branch-office
tcpdump -ni any proto gre -c 5

Jika penyiapan selesai dan tautan tidak pernah membawa lalu lintas, curigai jalur GRE sebelum menyentuh kredensial. Grup keamanan cloud memerlukan aturan eksplisit untuk protokol 47, dan sebagian jaringan memblokirnya sepenuhnya tanpa galat yang terlihat. Uji dari jaringan yang benar-benar akan Anda pakai, bukan dari laboratorium yang mengizinkan segalanya.

L2TP/IPsec: satu proposal yang cocok mengalahkan sepuluh percobaan

Baca log daemon alih-alih dialog desktop, karena dialog menggabungkan beberapa kegagalan berbeda menjadi satu pesan. Galat NO_PROPOSAL_CHOSEN termasuk fase satu: klien menawarkan enkripsi, hash, atau grup Diffie-Hellman yang tidak akan diterima server. Daftar apa yang didukung perangkat dan tulis satu proposal yang cocok, karena kombinasi acak biasanya menghasilkan galat yang sama lebih lambat. Di desktop, klien praktisnya adalah plugin NetworkManager L2TP dengan strongSwan atau Libreswan di bawahnya.

String proposal yang berarti satu hal bagi plugin desktop bisa berarti lain bagi daemon yang menerima pekerjaannya, jadi pertahankan sintaksis yang sesuai dengan lapisan yang Anda sunting. Jika perangkat juga menuntut rahasia terowongan, itu tahap terpisah dari kunci IPsec. Pastikan mana yang ditanyakan antarmuka sebelum mengetik apa pun ke dalamnya.

IKEv1 agresif dengan XAuth, dan kasus portal

Titik akhir bergaya FortiGate biasanya menginginkan mode agresif dengan XAuth dan alamat mode terkonfigurasi, yang mungkin tidak diekspos plugin grafis sama sekali. Daemon asli menanganinya, dan blok di bawah adalah bentuk konfigurasi itu, bukan berkas lengkap. Periksa dokumentasi vendor yang terbaru untuk nilai proposalnya.

conn branch
    keyexchange=ikev1
    aggressive=yes
    leftauth=psk
    leftauth2=xauth
    leftsourceip=%config
    right=203.0.113.10

Rilis strongSwan lama memakai xauth=client tempat versi 5 memakai leftauth2=xauth, jadi potongan yang disalin bisa gagal hanya karena sintaksis. Untuk portal TLS, openconnect yang berbicara protokol AnyConnect menangani Cisco dan sebagian besar merek yang diganti nama, dan memerlukan perangkat TUN plus hak istimewa untuk mengonfigurasinya. Berikan alamat portal persis seperti yang ditampilkan peramban, termasuk jalur apa pun yang diharapkan perangkat, lalu periksa alamat yang ditetapkan sebelum menguji apa pun di belakangnya. Membuat antarmuka lebih dulu menghilangkan satu kelas kejutan saat penyiapan.

sudo ip tuntap add dev tun0 mode tun
sudo openconnect --protocol=anyconnect vpn.example.com

Sambungkan, lalu verifikasi dalam urutan tetap

Jalankan tepat satu manajer VPN pada satu waktu, karena profil NetworkManager dan daemon yang dijalankan dengan tangan akan berebut rute dan DNS. Turunkan profil sebelum menguji koneksi manual, dan pastikan tidak ada antarmuka terowongan lama yang bertahan. Lalu verifikasi dalam urutan ini: alamat terowongan, rute ke satu-satunya host internal yang Anda butuhkan, resolusi nama, dan akhirnya permintaan sungguhan. Ikon hijau membuktikan autentikasi dan tidak lebih.

ip -4 addr show tun0
ip route get 10.20.30.10
getent hosts app.internal

Jika sebuah langkah gagal, berhentilah di situ alih-alih menguji langkah berikutnya, karena kegagalan DNS di hilir rute yang rusak tidak mengajari Anda apa pun. Simpan salinan profil yang berfungsi sebelum bereksperimen, karena berkas koneksi yang terhapus mudah hilang dan melelahkan dibangun ulang. Simpan nilai proposal dalam catatan yang sama dengan model perangkat dan versi firmware, karena catatan itulah bedanya migrasi dan proyek arkeologi saat kotaknya diganti.

Artikel terkait