IPSec (IP Security) - satu set protokol dan algoritma untuk mengenkripsi data dalam jaringan IPv4 dan IPv6. Kedengarannya tidak rumit, tetapi IPSec tidak menetapkan aturan yang jelas untuk mengenkripsi lalu lintas; sebaliknya, pengembang mengimplementasikan seperangkat alat (protokol dan algoritme), yang dengannya administrator membuat saluran aman untuk data.
Saya ingin menyentuh IPSec di RouterOS sedikit lebih dalam daripada HOWTO sederhana, dengan teori dan contoh minimal tentang cara mengkonfigurasi dan men-debug IPSec. Ini bukan panduan, dan tanpa latihan di bangku tes, tidak disarankan untuk memulai pengaturan terowongan dan server VPN nyata.
Keuntungan dan kerugian IPSec
Kekuatan:
- Bekerja pada level jaringan model OSI
- Itu dapat mengenkripsi paket sumber sepenuhnya atau dari lapisan transport dan lebih tinggi
- Ada mekanisme untuk mengatasi NAT
- Berbagai macam enkripsi dan algoritma hashing traffic dapat dipilih
- IPSec - Satu Set Standar Terbuka, Dapat Diperpanjang
- Dalam kasus Mikrotik, itu tidak memerlukan pembelian biaya tambahan atau lisensi
Kelemahan:
- Kesulitan
- Berbagai terminologi dan alat konfigurasi untuk vendor yang berbeda
- Menggunakan algoritma enkripsi yang kuat membutuhkan daya komputasi yang baik.
- Mudah mendeteksi DPI
Protokol dalam IPSec

Secara global, semua protokol yang akan Anda tangani selama konfigurasi dapat dibagi menjadi dua kelompok: protokol pertukaran kunci dan protokol perlindungan data.
Protokol Pertukaran Kunci (IKE)
Tugas utama adalah untuk mengotentikasi peserta dalam koneksi dan menyetujui parameter enkripsi dan kunci untuk melindungi informasi yang dikirimkan.
- IKE (Internet Key Exchange) - didefinisikan pada tahun 1998. Banyak fitur (misalnya, bridging NAT) ditambahkan kemudian sebagai add-on dan mungkin tidak diimplementasikan dengan berbagai vendor. Dasar negosiasi utama adalah ISAKMP.
- IKEv2 (Internet Key Exchange versi 2) - revisi terbaru dari 2014. Ini adalah pengembangan protokol IKE, di mana beberapa masalah diselesaikan, mekanisme perjanjian utama disederhanakan, dan ekstensi (NAT-T, Keepalives, Mode Config) menjadi bagian dari protokol.
Dalam praktiknya, sebagian besar koneksi IPSec diimplementasikan menggunakan IKE karena peralatan yang ketinggalan zaman atau keengganan administrator untuk mengubah sesuatu.
Protokol Perlindungan Data (ESP, AH)
Tugas utama adalah melindungi data pengguna.
- ESP (Encapsulating Payload Security) - mengenkripsi dan mengautentikasi sebagian data yang dikirimkan
- AH (Authentication Header) - mengotentikasi seluruh paket (kecuali untuk bidang yang bisa berubah-ubah), tidak mengenkripsi data, tetapi memungkinkan Anda untuk memastikan bahwa paket itu tidak berubah selama transmisi melalui jaringan
Prosedur Instalasi Koneksi IPSec

Peserta koneksi IPSec biasanya disebut rekan, yang menunjukkan kesetaraan mereka dalam koneksi yang ditetapkan. Konfigurasi yang dekat dengan client-server dimungkinkan, tetapi ketika membangun terowongan IPSec permanen, salah satu rekan dapat menjadi inisialisasi.
- Salah satu rekan memulai koneksi IPSec
- Ada pertukaran informasi kunci, otentikasi rekan, koordinasi parameter koneksi
- Berdasarkan informasi kunci yang diterima, terowongan terenkripsi tambahan dibentuk
- Menggunakan terowongan terenkripsi, rekan-rekan menentukan parameter enkripsi data dan bertukar informasi untuk menghasilkan kunci
- Hasil dari fase sebelumnya adalah seperangkat aturan dan kunci untuk perlindungan data (SA)
- Secara berkala mengintip pembaruan kunci enkripsi
Salah satu konsep kunci dalam IPSec adalah SA (Security Association) - satu set algoritma enkripsi untuk mengenkripsi dan mem-hashing informasi, serta kunci enkripsi, yang disetujui oleh rekan-rekan.
Terkadang Anda dapat menemukan divisi ke:
- ISAKMP SA - parameter dan kunci yang terkait dengan terowongan bantu
- Data SA (atau hanya SA) - parameter dan kunci yang terkait dengan enkripsi lalu lintas
Protokol perjanjian utama
Protokol IKE dapat bekerja dalam dua mode: utama (utama) dan agresif (agresif), protokol IKEv2 berisi satu mode.
IKE Main

Fase pertama terdiri dari enam paket:
1-2: Penyelarasan pengaturan enkripsi terowongan sekunder dan berbagai opsi IPSec
3-4: Berbagi informasi untuk menghasilkan kunci rahasia
5-6: Otentikasi Sebaya Menggunakan Saluran Terenkripsi Tambahan
Fase kedua terdiri dari tiga paket:
1-3: Menggunakan saluran tambahan terenkripsi. Koordinasi parameter perlindungan lalu lintas, pertukaran informasi untuk menghasilkan kunci rahasia
IKE Agresif

Fase pertama terdiri dari tiga paket:
1: Mengajukan penawaran untuk menginstal saluran terenkripsi tambahan dan informasi untuk menghasilkan kunci pribadi
2: Menanggapi penawaran, informasi untuk menghasilkan kunci rahasia, data untuk otentikasi
3: Data otentikasi
Fase kedua terdiri dari tiga paket:
1-3: Menggunakan saluran tambahan terenkripsi. Koordinasi parameter perlindungan lalu lintas, pertukaran informasi untuk menghasilkan kunci rahasia
Dalam mode agresif, inisiator hanya mengirim satu set parameter dalam kalimat. Pertukaran informasi untuk otentikasi rekan terjadi sebelum pemasangan terowongan bantu yang aman. Mode agresif lebih cepat konsisten, tetapi kurang aman.
IKEv2

Di IKEv2, fase-fase tersebut dinamai: IKE_SA_INIT dan IKE_AUTH. Tetapi jika saya berbicara tentang Phase1 dan Phase2 nanti dalam teks, ini juga berlaku untuk fase IKEv2.
Setiap fase IKEv2 terdiri dari dua paket:
IKE_SA_INIT: Koordinasi parameter enkripsi terowongan bantu, pertukaran informasi untuk menghasilkan kunci pribadi
IKE_AUTH: menggunakan saluran tambahan terenkripsi. Otentikasi teman sebaya, koordinasi parameter perlindungan lalu lintas, pertukaran informasi untuk menghasilkan kunci rahasia
Basis Data Perundingan Keamanan (SAD)
Hasil dari IKE (dan IKEv2) adalah Security Assotiations (SA), yang menentukan pengaturan perlindungan lalu lintas dan kunci enkripsi. Setiap SA adalah searah dan koneksi IPSec berisi sepasang SA. Semua SA disimpan dalam database SAD dan dapat diakses oleh administrator untuk melihat dan mengatur ulang.
Enkapsulasi data

IPSec menyediakan dua opsi untuk merangkum data:
- Mode transportasi - hanya muatan paket yang dilindungi, meninggalkan header asli. Untuk membangun terowongan, mode transportasi biasanya digunakan bersama dengan ipip atau gre, yang payload-nya sudah berisi seluruh paket sumber.
- Mode terowongan - mengenkapsulasi sepenuhnya paket asli dalam paket baru (mirip dengan gre atau ipip). Tetapi untuk tunnel ipsec, antarmuka eksplisit tidak dibuat dalam sistem, ini bisa menjadi masalah jika routing statis dinamis atau kompleks digunakan.
Database Kebijakan Keamanan (SPD)
Database aturan yang menentukan lalu lintas apa yang harus dienkripsi, protokol perlindungan data, tipe enkapsulasi, dan sejumlah parameter lainnya.
Posisi pemeriksaan SPD dapat ditampilkan pada diagram Alur Paket.

NAT menjembatani
IPSec menggunakan protokol lapisan jaringan untuk mentransfer data yang tidak dapat ditangani NAT. Untuk mengatasi masalah tersebut, protokol NAT-T digunakan (ekstensi dalam IKE dan bagian dari IKEv2). Inti dari NAT-T adalah dalam enkapsulasi tambahan paket IPSec dalam paket UDP yang diproses oleh NAT.
IPSec di Mikrotik
IPSec tersedia secara gratis di perangkat apa pun yang menjalankan RouterOS dengan paket Keamanan terinstal.
Enkripsi perangkat keras
Untuk melepas CPU, akselerasi perangkat keras enkripsi ditambahkan ke beberapa model router MikroTik, daftar lengkap dapat ditemukan di wiki .
Opsi anggaran terbanyak: RB750Gr3 , RB3011 , HAP AC ^ 2 .
Saya sendiri saya memeriksa kecepatan IPSec antara dua RB1100AHx2 dan antara dua RB750Gr3.
Untuk mencapai hasil maksimum pada RB1100AHx2 Anda harus:
- Gunakan port 11 yang terhubung langsung ke CPU dan konfigurasikan satu inti CPU untuk menangani 11 lalu lintas port
- Gunakan antrian perangkat keras saja pada antarmuka, nonaktifkan RPS
- Aktifkan FastPath Layer3 (sekitar 800mb / detik), atau mengecualikan lalu lintas IPSec dari conntrack (sekitar 700mb / detik)
Tanpa manipulasi yang dijelaskan pada port paling lambat (eter13), dimungkinkan untuk mendapatkan ~ 170Mb / detik, pada ~ ~ 400Mb / detik yang biasa.
Pada RB750Gr3 tanpa optimisasi sekitar 200Mb / detik.
Router single-core Qualcomm menunjukkan hasil 10-40mb / detik tergantung pada model, optimisasi, dan beban kerja dari proses lain.
Saya sarankan Anda membiasakan diri dengan presentasi dari karyawan mikrotik, mereka menyentuh topik pengaturan mengoptimalkan untuk mengurangi beban pada CPU dan meningkatkan kecepatan, yang saya tidak tambahkan ke teks.
Perbedaan 6.42.X dan 6.43.X
Tergantung pada versi RouterOS yang Anda gunakan, menu konfigurasi IPSec akan bervariasi.



Sudah ada perubahan baru dalam versi pengujian, jadi baca Catatan Rilis sebelum memutakhirkan.

Konfigurasi IPsec

Menu [IP] -> [IPSec] tidak seseram yang terlihat pada pandangan pertama. Diagram menunjukkan bahwa item konfigurasi utama adalah: Peer dan Profil.
Tab Remote Peers dan Installed SAs bersifat informatif.
Profil Sebaya dan Sebaya
Konfigurasi peer IPSec untuk membuat koneksi IKE dan membuat terowongan aman tambahan.

Konfigurasikan IPSec Remote Peers

Catatan- Dimulai dengan 6.43, RouterOS bersumpah saat menggunakan PSK tanpa otentikasi tambahan. Jika Anda tidak ingin mengkonfigurasi kunci, sertifikat, atau xAuth tambahan, Anda dapat beralih ke IKEv2 atau mengabaikan peringatan.
- Sebagai rekan, Anda dapat menentukan IP atau subnet tertentu (relevan untuk VPN Client-Server)
- Jika ada aturan yang bertentangan, aturan dengan subnet yang lebih akurat akan digunakan untuk terhubung ke peer (mirip dengan rute)
- Otentikasi kunci XAuth dan rsa tidak berfungsi di IKEv2
- Untuk IKEv2, Mikrotik membuat implementasi xAuth tidak kompatibel dengan platform lain
- Mode pasif biasanya digunakan untuk membuat konfigurasi VPN Client-Server (konfigurasi L2TP / IPsec atau IKEv2), tetapi dapat berguna saat menghubungkan sejumlah besar terowongan Site-to-Site ke satu titik, untuk mengurangi lalu lintas palsu.
- Jika Anda berencana untuk menggunakan xAuth, maka "server" harus pasif. Pengguna untuk server dibuat di [IPSec] -> [Pengguna]
- Saat menggunakan kebijakan Hasilkan, pilih mode port-ketat
Menyiapkan profil (Proposal) untuk harmonisasi Fase 1


Catatan- Opsi tambahan untuk IKE menjadi bagian dari IKEv2, pengaturan diabaikan
- Korelasi grup DH dengan jumlah mereka (nomor grup digunakan oleh vendor lain)
- Saat mengirim Proposal, sistem mengurutkan algoritme pasangan + grup dh dari lebih persisten ke kurang persisten

Kebijakan dan Proposal Kebijakan
Politisi memeriksa paket yang lewat untuk kepatuhan dengan kondisi dan menerapkan tindakan yang ditentukan. Jika Anda kembali ke aliran Paket, maka blok dengan Kebijakan IPSec adalah rekonsiliasi dengan kebijakan. Tindakan menentukan: protokol keamanan IPSec (ESP atau AH), proposal untuk negosiasi SA, mode enkapsulasi.

Paket melewati kebijakan satu per satu hingga cocok dengan kondisi salah satunya.
Pengaturan Kebijakan

Anotasi- Biasanya tidak diperlukan Src spesifik. dan Dst. Port, tetapi secara umum, kemampuan untuk mengenkripsi lalu lintas aplikasi individual menarik
- Tidak semua protokol ip disajikan dalam daftar Protokol (misalnya, tidak ada gre), Anda dapat menentukan jumlah protokol yang diperlukan secara manual.
- Template bukan politisi! Mereka digunakan jika menghasilkan-kebijakan diatur dalam konfigurasi rekan.
- Apa yang harus dilakukan jika SA spesifik untuk suatu kebijakan tidak ditemukan. Sebelumnya, ada masalah dengan L2TP / IPSec ketika beberapa klien tidak dapat terhubung karena NAT yang sama (ketika menggunakan IKE), bug ini diselesaikan (dengan asumsi bahwa klien ini bukan windows) jika Anda mengatur level = unik. Kalau tidak, beralihlah ke IKEv2
- Saat mengatur kebijakan, gunakan [Safe mode], satu gerakan canggung dan Anda berisiko kehilangan akses ke router menggunakan Level3
Menyiapkan Proposal untuk persetujuan SA


Grup
Digunakan untuk mengaitkan templat kebijakan dan rekan kerja.

Di salah satu versi RouterOS yang lebih lama, ada bug dengan grup default yang tidak berfungsi.
Konfigurasi mode
Mengirim dan menerima parameter IP tanpa menggunakan protokol tambahan. Memungkinkan Anda membuat IPSec yang hanya terdiri dari Klien-ke-Server VPN.


Kunci dan Pengguna
Digunakan untuk otentikasi rekan canggih.
Kunci
Kunci RSA: pembangkitan, impor, ekspor. Tidak didukung di IKEv2.

Pengguna
Basis data pengguna XAuth untuk "server". Klien menentukan pengaturan xAuth dalam konfigurasi rekan. Dimungkinkan untuk meneruskan otentikasi xAuth ke server RADIUS.

Rekan jarak jauh
Daftar semua rekan yang memasang dan memasang terowongan bantu (Fase 1). Anda dapat menghapus rekan-rekan untuk memperbarui kunci terowongan bantu.


SA Terpasang
Database SAD atau daftar semua SA yang dinegosiasikan. Anda dapat melihat algoritma dan kunci perlindungan data yang digunakan.


Bendera Hardware AEAD menunjukkan penggunaan enkripsi perangkat keras.

Administrator dapat mengatur ulang SA, tetapi hanya semua dari jenis yang sama (esp atau ah) pada saat yang sama.
IPSec dan Firewall
Di Firewall, Anda dapat memeriksa apakah lalu lintas masuk atau keluar kebijakan IPSec atau tidak. Aplikasi yang jelas adalah L2TP / IPSec, Anda dapat melarang pemasangan koneksi L2TP jika lalu lintas belum dienkripsi sebelumnya.

Protokol dan port yang digunakan dalam IPSec
- IKE - UDP: 500
- IKEv2 - UDP: 4500
- NAT-T - UDP: 4500
- ESP - ipsec-esp (50)
- AH - ipsec-ah (51)
IPSec dan Endpoinds
Dan sekarang tentang sakitnya ...
Mikrotik wiki memiliki tabel dengan hashing dan algoritma enkripsi untuk: Windows , iOS , OS-X .
Saya tidak menemukan informasi tentang klien vpn android bawaan, tetapi secara umum ini berfungsi dengan proposal dari windows. Tidak ada dukungan IKEv2 di Android, Anda harus menggunakan StrongSwan .
Contoh konfigurasi
Skema dan konfigurasi dasar untuk contoh dengan terowongan Site-to-Site:

#Mikrotik1 /ip address add address=10.10.10.10/24 interface=ether1 network=10.10.10.0 add address=192.168.100.1/24 interface=ether2 network=192.168.100.0 /ip firewall nat add action=masquerade chain=srcnat out-interface=ether1 /ip route add distance=1 gateway=10.10.10.1 dst-address=0.0.0.0/0 #Mikrotik2 /ip address add address=10.20.20.20/24 interface=ether1 network=10.20.20.0 add address=192.168.200.1/24 interface=ether2 network=192.168.200.0 /ip firewall nat add action=masquerade chain=srcnat out-interface=ether1 /ip route add distance=1 gateway=10.20.20.1 dst-address=0.0.0.0/0
IPSec dalam mode terowongan

Konfigurasi langkah demi langkah:
- Buat Proposal untuk IKE Phase1
- Buat pesta. Kami menunjukkan alamat, proposal, mode pertukaran, kunci PSK. Saya memilih IKEv2, Anda dapat menggunakan utama / agresif seperti yang diinginkan
- Buat Proposal untuk SA
- Tentukan subnet di mana kita membuat terowongan
- Tentukan alamat SA, mode terowongan, dan proposal untuk enkripsi lalu lintas
- Mengedit Aturan NAT
Mikrotik1
Opsi konsol:
#1 /ip ipsec peer profile add dh-group=modp2048 enc-algorithm=aes-128 hash-algorithm=sha256 name=ipsec-tunnel-ike nat-traversal=no #2 /ip ipsec peer add address=10.20.20.20/32 exchange-mode=ike2 profile=ipsec-tunnel-ike secret=test-ipsec #3 /ip ipsec proposal add auth-algorithms=sha256 enc-algorithms=aes-256-cbc name=ipsec-tunnel-sa #4-5 /ip ipsec policy add dst-address=192.168.200.0/24 proposal=ipsec-tunnel-sa sa-dst-address=10.20.20.20 sa-src-address=10.10.10.10 src-address=192.168.100.0/24 tunnel=yes #6 /ip firewall nat set 0 ipsec-policy=out,none
Mikrotik2
Opsi konsol:
#1 /ip ipsec peer profile add dh-group=modp2048 enc-algorithm=aes-128 hash-algorithm=sha256 name=ipsec-tunnel-ike nat-traversal=no #2 /ip ipsec peer add address=10.10.10.10/32 exchange-mode=ike2 profile=ipsec-tunnel-ike secret=test-ipsec #3 /ip ipsec proposal add auth-algorithms=sha256 enc-algorithms=aes-256-cbc name=tets-ipsec-sa #4-5 /ip ipsec policy add dst-address=192.168.100.0/24 proposal=tets-ipsec-sa sa-dst-address=10.10.10.10 sa-src-address=10.20.20.20 src-address=192.168.200.0/24 tunnel=yes #6 /ip firewall nat set 0 ipsec-policy=out,none
Dan di sini NAT?Untuk bekerja dalam mode tunnel, Anda memerlukan rute palsu ke subnet jarak jauh, atau rute default, jika paket tidak akan melangkah lebih jauh dari keputusan Routing. Biasanya tidak ada masalah dengan opsi pertama, tetapi dengan rute default dan Source NAT (yang pertama dan kedua hadir di sebagian besar router rumah dan kantor) akan ada masalah.
Ingat Aliran Paket. Paket melewati Sumber NAT lebih awal dari kebijakan IPSec, aturan dengan penyamaran tidak tahu apa-apa bahwa lalu lintas dimaksudkan untuk dikirim ke terowongan "sesaat" dan akan menyiarkan tajuk paket untuk dikirim ke IPSec ketika paket dengan tajuk yang diubah diperiksa di alamat sumber Kebijakan di header tidak akan sesuai dengan aturan dan paket akan terbang ke rute default, yang, setelah melihat alamat tujuan dari jaringan pribadi, kemungkinan besar akan menjatuhkannya.
Ada beberapa solusi untuk masalah ini:
- Menggunakan rute palsu
- Menggunakan aturan terima opsional sebelum SourceNAT
- Subjek src-nat hanya untuk paket-paket yang tidak ada kebijakan IPSec (dalam contoh)
- Kecualikan lalu lintas dari pelacakan koneksi menggunakan RAW
Verifikasi koneksi yang dibangun

- Kami melihat tetangga di Remote Peers
- Kami melihat SA yang diinstal (penghitung lalu lintas tidak akan berubah sampai Anda memulainya)
- Dalam politik, status mapan dan bendera (A) ctive
IPIP / IPSec

Terowongan IPIP Preset:
#Mikrotik1 # ipip /interface ipip add allow-fast-path=no clamp-tcp-mss=no name=ipip-vpn remote-address=10.20.20.20 # ip ipip /ip address add address=10.30.30.1/30 interface=ipip-vpn # /ip route add distance=1 dst-address=192.168.200.0/24 gateway=10.30.30.2 #Mikrotik2 # , /interface ipip add allow-fast-path=no clamp-tcp-mss=no name=ipip-vpn remote-address=10.10.10.10 /ip address add address=10.30.30.2/30 interface=ipip-vpn /ip route add distance=1 dst-address=192.168.100.0/24 gateway=10.30.30.1
Konfigurasi Langkah-demi-Langkah IPSec:
- Buat Proposal untuk IKE Phase1
- Buat pesta. Tunjukkan alamat, proposal, mode pertukaran, kunci PSK
- Buat Proposal untuk SA
- Tentukan subnet di mana kita membuat terowongan
- Kami menentukan alamat SA, jenis lalu lintas yang akan kami enkripsi dan proposal
Mikrotik1
Opsi konsol:
#1 /ip ipsec peer profile add dh-group=modp2048 enc-algorithm=aes-128 hash-algorithm=sha256 name=ipsec-tunnel-ike nat-traversal=no #2 /ip ipsec peer add address=10.20.20.20/32 exchange-mode=ike2 profile=ipsec-tunnel-ike secret=test-ipsec #3 /ip ipsec proposal add auth-algorithms=sha256 enc-algorithms=aes-256-cbc name=ipsec-tunnel-sa #4-5 /ip ipsec policy add dst-address=10.20.20.20/32 proposal=ipsec-tunnel-sa protocol=ipencap src-address=10.10.10.10/32 sa-dst-address=10.20.20.20 sa-src-address=10.10.10.10
Mikrotik2
#1 /ip ipsec peer profile add dh-group=modp2048 enc-algorithm=aes-128 hash-algorithm=sha256 name=ipsec-tunnel-ike nat-traversal=no #2 /ip ipsec peer add address=10.10.10.10/32 exchange-mode=ike2 profile=ipsec-tunnel-ike secret=test-ipsec #3 /ip ipsec proposal add auth-algorithms=sha256 enc-algorithms=aes-256-cbc name=tets-ipsec-sa #4-5 /ip ipsec policy add dst-address=10.10.10.10/32 proposal=tets-ipsec-sa protocol=ipencap src-address=10.20.20.20/32 sa-dst-address=10.10.10.10 sa-src-address=10.20.20.20
Untuk lalai, perbedaan nyata dalam konfigurasi terowongan dan mode transportasi dalam Kebijakan IPSec:

Pemeriksaan koneksi mirip dengan mode terowongan.
L2TP / IPSec
Contoh-contoh sebelumnya sangat cocok untuk membuat VPN permanen antara dua rekan, dengan alamat IP eksternal statis.
Jika alamat salah satu rekan adalah dinamis (dan biasanya terletak di belakang NAT), Anda harus menggunakan VPN Client-to-Server lain.

Pra-konfigurasi L2TP:
# /ip pool add name=pool-l2tp ranges=192.168.77.10-192.168.77.20 # /ppp profile add change-tcp-mss=yes local-address=192.168.77.1 name=l2tp-ipsec only-one=yes remote-address=pool-l2tp use-compression=no use-encryption=no use-mpls=no use-upnp=no # /ppp secret add name=user1 password=test1 profile=l2tp-ipsec service=l2tp add name=user2 password=test2 profile=l2tp-ipsec service=l2tp add name=user3 password=test3 profile=l2tp-ipsec service=l2tp # L2TP ( ipsec) /interface l2tp-server server set authentication=chap,mschap2 default-profile=l2tp-ipsec enabled=yes
Mengapa saya mengabaikan penyetelan otomatis IPsecDalam konfigurasi ipip, gre, eoip, l2tp ada konfigurasi otomatis koneksi ipsec, sebenarnya sistem menciptakan aturan dinamis untuk Peer dan Kebijakan untuk Anda, tetapi pertama-tama kami tidak mencari cara yang mudah, dan kedua, ketika memutakhirkan dari 6.42 ke 6.43, terowongan yang dibuat secara otomatis bangkrut dan bukan fakta bahwa ini tidak akan terjadi lagi.
Konfigurasi Langkah-demi-Langkah IPSec:
- Buat grup baru (Anda dapat menggunakan default)
- Buat Proposal untuk IKE Phase1
- Kami membuat pesta, atau lebih tepatnya sebuah subnet. Bersumpah pada kunci PSK, tetapi jika kita berurusan dengan windows sebagai klien, maka kita punya pilihan: Sertifikat atau PSK.
- Tetapkan pasif = ya dan kirim-init-kontak = tidak, di generate-policy = port-ketat (terima port dari klien)
- Buat Proposal untuk SA
- Buat templat untuk menghasilkan kebijakan
- Tentukan proposal untuk SA
Konfigurasi mikrotik
Dalam tangkapan layar, kesalahannya adalah menentukan dst. port dan src. port tidak diperlukan
Opsi konsol:
#1 /ip ipsec policy group add name=l2tp-ipsec #2 /ip ipsec peer profile add dh-group=modp1024 enc-algorithm=aes-256 hash-algorithm=sha256 name=l2tp-ipsec-ike #3-4 /ip ipsec peer add address=0.0.0.0/0 generate-policy=port-strict passive=yes policy-template-group=l2tp-ipsec profile=l2tp-ipsec-ike secret=secret-ipsec-pass send-initial-contact=no #5 /ip ipsec proposal add auth-algorithms=sha256,sha1 enc-algorithms=aes-256-cbc,aes-128-cbc name=l2tp-ipsec-sa pfs-group=none #6-7 /ip ipsec policy add dst-address=0.0.0.0/0 group=l2tp-ipsec proposal=l2tp-ipsec-sa protocol=udp src-address=0.0.0.0/0 template=yes
Konfigurasi firewall untuk membuat koneksi L2TP hanya setelah IPSec
/ip firewall filter # IKE, NAT-T ipsec-esp add chain=input protocol=17 dst-port=500,4500 action=accept add chain=input protocol=50 action=accept # L2TP, ipsec add chain=input protocol=17 dst-port=1701 ipsec-policy=in,ipsec action=accept add chain=input protocol=17 dst-port=1701 action-drop
IKEv2 VPN
Opsi L2TP populer, tetapi berkat konfigurasi mode, Anda dapat mengonfigurasi server VPN hanya menggunakan IPSec. Ini adalah jenis VPN yang menjanjikan, tetapi sejauh ini jarang digunakan, jadi selain mengkonfigurasi sisi server, saya akan memberikan contoh pengaturan klien StrongSwan di android.

Tentu saja, tidak semuanya cerah. Sebagian besar sistem operasi "pengguna" (khususnya Windows dan Android) setuju untuk bekerja dengan VPN semacam itu hanya jika mereka disahkan oleh sertifikat atau EAP.
Sertifikat adalah titik kelemahan saya, jika ada yang tahu cara membuat sertifikat yang ditandatangani sendiri dengan benar yang diimpor oleh Windows dan akan digunakan dalam koneksi, tulis di komentar.
Pembuatan sertifikat awal:
#Root CA /certificate add name=ca common-name="IKEv2 CA" days-valid=6928 /certificate sign ca ca-crl-host=<IP > # vpn /certificate add common-name=<IP > subject-alt-name=IP:<IP > key-usage=tls-server name=vpn days-valid=6928 # /certificate sign vpn ca=ca # # , # Revoke /certificate add common-name=client key-usage=tls-client name=client days-valid=6928 # /certificate sign client ca=ca
Konfigurasi Selangkah demi Selangkah oleh IKEv2 VPN:
- Kami membuat kumpulan alamat untuk distribusi ke pelanggan
- Buat profil konfigurasi mode untuk mendistribusikan parameter IP ke klien
- Buat grup untuk menautkan template Sebaya dan kebijakan
- Buat Proposal untuk IKE Phase1
- Buat profil untuk menghubungkan teman-teman. Otentikasi Sertifikat, Protokol IKEv2, Mode Pasif
- Tentukan profil konfigurasi mode, grup 3 langkah dan aktifkan pembuatan kebijakan
- Buat Proposal untuk SA
- Buat templat untuk menghasilkan kebijakan
- Tentukan Proposal untuk SA
Konfigurasikan Mikrotik
#1 /ip pool add name=pool-ike ranges=192.168.77.10-192.168.77.20 #2 /ip ipsec mode-config add address-pool=pool-ike address-prefix-length=32 name=ikev2-vpn static-dns=77.88.8.8 system-dns=no #3 /ip ipsec policy group add name=ikev2-vpn #4 /ip ipsec peer profile add enc-algorithm=aes-256,aes-128 hash-algorithm=sha256 name=ikev2-vpn #5-6 /ip ipsec peer add address=0.0.0.0/0 auth-method=rsa-signature certificate=vpn exchange-mode=ike2 generate-policy=port-strict mode-config=ikev2-vpn passive=yes policy-template-group=ikev2-vpn profile=ikev2-vpn send-initial-contact=no #7 /ip ipsec proposal add auth-algorithms=sha256,sha1 enc-algorithms=aes-256-cbc,aes-128-cbc name=ikev2-vpn #8-9 /ip ipsec policy add dst-address=0.0.0.0/0 group=ikev2-vpn proposal=ikev2-vpn src-address= 0.0.0.0/0 template=yes
Jika koneksi berhasil, Anda akan melihat: kebijakan dinamis, menulis ke Peer jarak jauh, dan sepasang SA.



Lisensi demo routerOS x86 tidak memiliki batasan pada jumlah terowongan IPSec, termasuk IKEv2 VPN. Anda dapat menggunakan demo RouterOS x86 (jangan bingung dengan RouterOS CHR gratis, semuanya menyedihkan) di VPS dan dapatkan server VPN pribadi dengan upaya administrasi minimal, tanpa membeli lisensi untuk RouterOS atau RouterOS CHR.
Beberapa kata tentang analisis log IPSec
Log in Mikrotik adalah cerita yang terpisah, kadang-kadang mereka cukup rinci untuk menganalisis masalah, tetapi kurangnya fitur dangkal: bersih, salin, temukan kekuatan Anda untuk menginstal server syslog terpisah.
Sedangkan untuk IPSec, berikut adalah opsi analisis log cepat (kami hanya meninggalkan yang diperlukan di tab terpisah):

/system logging action add memory-lines=100000 name=ipsec target=memory /system logging add action=ipsec topics=ipsec,error add action=ipsec topics=ipsec,debug,!packet add action=ipsec topics=ipsec,info
Dan beberapa contoh masalah konfigurasi IPSec yang khas:
Proposal Masalah Konsistensi pada Phase1
- Baca pesan kesalahan. Masalahnya adalah ketika merekonsiliasi Proposal di tahap pertama.
- Kami melihat di atas, router itu sendiri menyarankan agar ia mengirim pesta, dan apa yang dikonfigurasi secara lokal
Masalah masalah rekonsiliasi IKE_SA_INITDalam log Anda akan melihat sesuatu seperti berikut ini:

Menganalisis lalu lintas
Dalam permintaan, Anda dapat melihat proposal dari jamuan makan:

Dalam jawaban kita melihat bahwa tidak ada proposal yang cocok ditemukan:

Proposal masalah rekonsiliasi untuk SA
Router meminta tentang kesalahan proposal pada fase2 dan menunjukkan apa yang dikonfigurasikan secara lokal dan apa yang jauh.
Proposal Masalah rekonsiliasi IKE_AUTH
Kami melihat bahwa ada koneksi dan otentikasi rekan, tetapi lebih lanjut kesalahan proposal. Anda tidak akan melihat detail apa pun dalam debug, di wireshark (lalu lintas IKE_AUTH dienkripsi).
Kesalahan Otentikasi PSKUntuk IKE:

Untuk IKEv2:

Mode IKE salah
Kita melihat bahwa Phase1 rusak dalam batas waktu, meskipun paket berada di antara rekan-rekan. Tetapi ukuran paket yang masuk jauh lebih besar, jika kita menganalisis melalui wireshark, kita akan melihat bahwa rekan jauh menggunakan mode agresif.

Kami melihat bahwa paket dikirim dari kami ke UDP: 500, dan mereka datang ke UDP: 4500 dan agak besar. Di sini peer jarak jauh memiliki mode IKEv2.
Terakhir, baca bagian pemecahan masalah dari wiki . Dan semua materi tentang IPSec diinginkan untuk berkenalan, saya hanya menjelaskan seperangkat alat dan pengaturan dasar.