Kami menyulitkan mengikut GOST: panduan untuk menyediakan penghalaan trafik dinamik

Kami menyulitkan mengikut GOST: panduan untuk menyediakan penghalaan trafik dinamik
Jika syarikat anda menghantar atau menerima data peribadi dan maklumat sulit lain melalui rangkaian yang tertakluk kepada perlindungan mengikut undang-undang, ia dikehendaki menggunakan penyulitan GOST. Hari ini kami akan memberitahu anda bagaimana kami melaksanakan penyulitan sedemikian berdasarkan gerbang kripto (CS) S-Terra di salah seorang pelanggan. Kisah ini akan menarik minat pakar keselamatan maklumat, serta jurutera, pereka bentuk dan arkitek. Kami tidak akan menyelami lebih mendalam tentang nuansa konfigurasi teknikal dalam siaran ini; kami akan menumpukan pada perkara utama persediaan asas. Jumlah besar dokumentasi mengenai penyediaan daemon OS Linux, yang mana S-Terra CS berasaskan, tersedia secara percuma di Internet. Dokumentasi untuk menyediakan perisian S-Terra proprietari juga tersedia secara umum di portal itu pengilang.

Sedikit perkataan mengenai projek itu

Topologi rangkaian pelanggan adalah standard - jaringan penuh antara pusat dan cawangan. Ia adalah perlu untuk memperkenalkan penyulitan saluran pertukaran maklumat antara semua tapak, yang mana terdapat 8.

Biasanya dalam projek sedemikian semuanya statik: laluan statik ke rangkaian tempatan tapak ditetapkan pada gerbang crypto (CG), senarai alamat IP (ACL) untuk penyulitan didaftarkan. Walau bagaimanapun, dalam kes ini, tapak tidak mempunyai pengurusan berpusat, dan apa-apa boleh berlaku dalam rangkaian tempatan mereka: rangkaian boleh ditambah, dipadam dan diubah suai dalam setiap cara yang mungkin. Untuk mengelakkan konfigurasi semula penghalaan dan ACL pada KS apabila menukar pengalamatan rangkaian tempatan di tapak, diputuskan untuk menggunakan terowong GRE dan penghalaan dinamik OSPF, yang merangkumi semua KS dan kebanyakan penghala di peringkat teras rangkaian di tapak ( di sesetengah tapak, pentadbir infrastruktur lebih suka menggunakan SNAT ke arah KS pada penghala kernel).

Terowong GRE membolehkan kami menyelesaikan dua masalah:
1. Gunakan alamat IP antara muka luaran CS untuk penyulitan dalam ACL, yang merangkumi semua trafik yang dihantar ke tapak lain.
2. Atur terowong ptp antara CS, yang membolehkan anda menyediakan penghalaan dinamik (dalam kes kami, MPLS L3VPN pembekal disusun antara tapak).

Pelanggan mengarahkan pelaksanaan penyulitan sebagai perkhidmatan. Jika tidak, dia bukan sahaja perlu menyelenggara gerbang kripto atau menyumber luarnya kepada beberapa organisasi, tetapi juga memantau kitaran hayat sijil penyulitan secara bebas, memperbaharuinya tepat pada masanya dan memasang yang baharu.
Kami menyulitkan mengikut GOST: panduan untuk menyediakan penghalaan trafik dinamik
Dan kini memo sebenar - bagaimana dan apa yang kami sediakan

Nota kepada subjek CII: menyediakan gerbang kripto

Persediaan rangkaian asas

Pertama sekali, kami melancarkan CS baharu dan masuk ke konsol pentadbiran. Anda harus bermula dengan menukar kata laluan pentadbir terbina dalam - arahan tukar pentadbir kata laluan pengguna. Kemudian anda perlu menjalankan prosedur permulaan (command memulakan) semasa data lesen dimasukkan dan penderia nombor rawak (RNS) dimulakan.

Perhatikan! Apabila S-Terra CC dimulakan, dasar keselamatan diwujudkan di mana antara muka gerbang keselamatan tidak membenarkan paket melaluinya. Anda mesti sama ada membuat dasar anda sendiri atau menggunakan arahan jalankan csconf_mgr activate mengaktifkan dasar membenarkan yang telah ditetapkan.
Seterusnya, anda perlu mengkonfigurasi pengalamatan antara muka luaran dan dalaman, serta laluan lalai. Adalah lebih baik untuk bekerja dengan konfigurasi rangkaian CS dan mengkonfigurasi penyulitan melalui konsol seperti Cisco. Konsol ini direka untuk memasukkan arahan yang serupa dengan arahan Cisco IOS. Konfigurasi yang dijana menggunakan konsol seperti Cisco, seterusnya, ditukar kepada fail konfigurasi yang sepadan dengan daemon OS berfungsi. Anda boleh pergi ke konsol seperti Cisco dari konsol pentadbiran dengan arahan mengkonfigurasi.

Tukar kata laluan untuk cscon pengguna terbina dalam dan dayakan:

>membolehkan
Kata laluan: csp(dipasang)
#configure terminal
#username cscons privilege 15 rahsia 0 #dayakan rahsia 0 Menyediakan konfigurasi rangkaian asas:

#antaramuka GigabitEthernet0/0
#alamat ip 10.111.21.3 255.255.255.0
#tiada penutupan
#antaramuka GigabitEthernet0/1
#alamat ip 192.168.2.5 255.255.255.252
#tiada penutupan
#ip laluan 0.0.0.0 0.0.0.0 10.111.21.254

GrΔ™

Keluar dari konsol seperti Cisco dan pergi ke shell debian dengan arahan sistem. Tetapkan kata laluan anda sendiri untuk pengguna akar pasukan passwd.
Di setiap bilik kawalan, terowong berasingan dikonfigurasikan untuk setiap tapak. Antara muka terowong dikonfigurasikan dalam fail / etc / network / interfaces. Utiliti terowong IP, termasuk dalam set iproute2 yang diprapasang, bertanggungjawab untuk mencipta antara muka itu sendiri. Perintah penciptaan antara muka ditulis ke dalam pilihan pra-up.

Contoh konfigurasi antara muka terowong biasa:
tapak auto1
tapak iface1 inet statik
alamat 192.168.1.4
255.255.255.254 netmask
terowong ip pra-siap tambah mod tapak1 gre tempatan 10.111.21.3 jauh 10.111.22.3 kunci hfLYEg^vCh6p

Perhatikan! Perlu diingatkan bahawa tetapan untuk antara muka terowong mesti terletak di luar bahagian

###netifcfg-begin####
*****
###netifcfg-end###

Jika tidak, tetapan ini akan ditimpa apabila menukar tetapan rangkaian antara muka fizikal melalui konsol seperti Cisco.

Penghalaan dinamik

Dalam S-Terra, penghalaan dinamik dilaksanakan menggunakan pakej perisian Quagga. Untuk mengkonfigurasi OSPF kita perlu mendayakan dan mengkonfigurasi daemon zebra ΠΈ ospfd. Daemon zebra bertanggungjawab untuk komunikasi antara daemon penghalaan dan OS. Daemon ospfd, seperti namanya, bertanggungjawab untuk melaksanakan protokol OSPF.
OSPF dikonfigurasikan sama ada melalui konsol daemon atau terus melalui fail konfigurasi /etc/quagga/ospfd.conf. Semua antara muka fizikal dan terowong yang mengambil bahagian dalam penghalaan dinamik ditambahkan pada fail, dan rangkaian yang akan diiklankan dan menerima pengumuman juga diisytiharkan.

Contoh konfigurasi yang perlu ditambah ospfd.conf:
antara muka eth0
!
antara muka eth1
!
tapak antara muka1
!
tapak antara muka2
penghala ospf
id penghala ospf 192.168.2.21
rangkaian 192.168.1.4/31 kawasan 0.0.0.0
rangkaian 192.168.1.16/31 kawasan 0.0.0.0
rangkaian 192.168.2.4/30 kawasan 0.0.0.0

Dalam kes ini, alamat 192.168.1.x/31 dikhaskan untuk rangkaian ptp terowong antara tapak, alamat 192.168.2.x/30 dikhaskan untuk rangkaian transit antara penghala CS dan kernel.

Perhatikan! Untuk mengurangkan jadual penghalaan dalam pemasangan yang besar, anda boleh menapis iklan rangkaian transit itu sendiri menggunakan binaan tiada agihan semula disambungkan atau mengagihkan semula peta laluan yang disambungkan.

Selepas mengkonfigurasi daemon, anda perlu menukar status permulaan daemon masuk /etc/quagga/daemons. Dalam pilihan zebra ΠΈ ospfd tiada perubahan kepada ya. Mulakan daemon quagga dan tetapkannya kepada autorun apabila anda memulakan arahan KS update-rc.d quagga enable.

Jika konfigurasi terowong GRE dan OSPF dilakukan dengan betul, maka laluan dalam rangkaian tapak lain akan muncul pada KSh dan penghala teras dan, dengan itu, sambungan rangkaian antara rangkaian tempatan timbul.

Kami menyulitkan trafik yang dihantar

Seperti yang telah ditulis, biasanya apabila menyulitkan antara tapak, kami menentukan julat alamat IP (ACL) antara trafik yang disulitkan: jika alamat sumber dan destinasi berada dalam julat ini, maka trafik antara mereka disulitkan. Walau bagaimanapun, dalam projek ini strukturnya adalah dinamik dan alamat mungkin berubah. Memandangkan kami telah pun mengkonfigurasikan terowong GRE, kami boleh menentukan alamat KS luaran sebagai alamat sumber dan destinasi untuk menyulitkan trafik - lagipun, trafik yang telah dirangkumkan oleh protokol GRE tiba untuk penyulitan. Dalam erti kata lain, semua yang masuk ke dalam CS daripada rangkaian tempatan satu tapak ke arah rangkaian yang telah diumumkan oleh tapak lain disulitkan. Dan dalam setiap tapak, sebarang pengalihan boleh dilakukan. Oleh itu, jika terdapat sebarang perubahan dalam rangkaian tempatan, pentadbir hanya perlu mengubah suai pengumuman yang datang dari rangkaiannya ke arah rangkaian, dan ia akan tersedia untuk tapak lain.

Penyulitan dalam S-Terra CS dilakukan menggunakan protokol IPSec. Kami menggunakan algoritma "Grasshopper" mengikut GOST R 34.12-2015, dan untuk keserasian dengan versi lama anda boleh menggunakan GOST 28147-89. Pengesahan secara teknikal boleh dilakukan pada kedua-dua kunci yang dipratentukan (PSK) dan sijil. Walau bagaimanapun, dalam operasi perindustrian adalah perlu untuk menggunakan sijil yang dikeluarkan mengikut GOST R 34.10-2012.

Bekerja dengan sijil, bekas dan CRL dilakukan menggunakan utiliti cert_mgr. Pertama sekali, menggunakan arahan cert_mgr buat adalah perlu untuk menjana bekas kunci peribadi dan permintaan sijil, yang akan dihantar ke Pusat Pengurusan Sijil. Selepas menerima sijil, ia mesti diimport bersama sijil CA akar dan CRL (jika digunakan) dengan arahan cert_mgr import. Anda boleh memastikan bahawa semua sijil dan CRL dipasang dengan arahan cert_mgr show.

Selepas berjaya memasang sijil, pergi ke konsol seperti Cisco untuk mengkonfigurasi IPSec.
Kami mencipta dasar IKE yang menentukan algoritma dan parameter yang dikehendaki bagi saluran selamat yang dibuat, yang akan ditawarkan kepada rakan kongsi untuk kelulusan.

#crypto isakmp polisi 1000
#encr gost341215k
#hash gost341112-512-tc26
#tanda pengesahan
#kumpulan vko2
#seumur hidup 3600

Dasar ini digunakan semasa membina fasa pertama IPSec. Hasil kejayaan menyiapkan fasa pertama ialah penubuhan SA (Security Association).
Seterusnya, kita perlu mentakrifkan senarai alamat IP sumber dan destinasi (ACL) untuk penyulitan, menjana set transformasi, mencipta peta kriptografi (peta kriptografi) dan mengikatnya pada antara muka luaran CS.

Tetapkan ACL:
#ip akses-senarai tapak lanjutan1
#permit gre hos 10.111.21.3 hos 10.111.22.3

Satu set transformasi (sama seperti untuk fasa pertama, kami menggunakan algoritma penyulitan "Grasshopper" menggunakan mod penjanaan sisipan simulasi):

#crypto ipsec transform-set GOST esp-gost341215k-mac

Kami mencipta peta kripto, menentukan ACL, mengubah set dan alamat rakan sebaya:

#crypto map UTAMA 100 ipsec-isakmp
#padanan alamat tapak1
#set transform-set GOST
#set rakan sebaya 10.111.22.3

Kami mengikat kad kripto ke antara muka luar daftar tunai:

#antaramuka GigabitEthernet0/0
#alamat ip 10.111.21.3 255.255.255.0
#crypto map UTAMA

Untuk menyulitkan saluran dengan tapak lain, anda mesti mengulangi prosedur untuk mencipta kad ACL dan crypto, menukar nama ACL, alamat IP dan nombor kad crypto.

Perhatikan! Jika pengesahan sijil oleh CRL tidak digunakan, ini mesti dinyatakan dengan jelas:

#crypto pki trustpoint s-terra_technological_trustpoint
#pembatalan-semak tiada

Pada ketika ini, persediaan boleh dianggap selesai. Dalam output arahan konsol seperti Cisco tunjukkan crypto isakmp sa ΠΈ tunjukkan crypto ipsec sa Fasa pertama dan kedua IPSec yang dibina harus dicerminkan. Maklumat yang sama boleh diperoleh menggunakan arahan rancangan sa_mgr, dilaksanakan daripada shell debian. Dalam output arahan cert_mgr show Sijil tapak jauh akan muncul. Status sijil tersebut adalah jauh. Jika terowong tidak dibina, anda perlu melihat log perkhidmatan VPN, yang disimpan dalam fail /var/log/cspvpngate.log. Senarai lengkap fail log dengan penerangan kandungannya tersedia dalam dokumentasi.

Memantau "kesihatan" sistem

S-Terra CC menggunakan daemon snmpd standard untuk pemantauan. Selain parameter Linux biasa, S-Terra out of the box menyokong pengeluaran data tentang terowong IPSec selaras dengan CISCO-IPSEC-FLOW-MONITOR-MIB, iaitu apa yang kami gunakan semasa memantau status terowong IPSec. Kefungsian OID tersuai yang mengeluarkan hasil pelaksanaan skrip sebagai nilai juga disokong. Ciri ini membolehkan kami menjejak tarikh tamat tempoh sijil. Skrip bertulis menghuraikan output arahan cert_mgr show dan sebagai hasilnya memberikan bilangan hari sehingga sijil tempatan dan akar tamat tempoh. Teknik ini amat diperlukan apabila mentadbir sejumlah besar CABG.
Kami menyulitkan mengikut GOST: panduan untuk menyediakan penghalaan trafik dinamik

Apakah faedah penyulitan sedemikian?

Semua fungsi yang diterangkan di atas disokong di luar kotak oleh S-Terra KSh. Iaitu, tidak perlu memasang sebarang modul tambahan yang boleh menjejaskan pensijilan gerbang crypto dan pensijilan keseluruhan sistem maklumat. Boleh ada sebarang saluran antara tapak, walaupun melalui Internet.

Disebabkan fakta bahawa apabila infrastruktur dalaman berubah, tidak perlu mengkonfigurasi semula gerbang crypto, sistem berfungsi sebagai perkhidmatan, yang sangat mudah untuk pelanggan: dia boleh meletakkan perkhidmatannya (klien dan pelayan) di mana-mana alamat, dan semua perubahan akan dipindahkan secara dinamik antara peralatan penyulitan.

Sudah tentu, penyulitan disebabkan kos overhed (overhed) menjejaskan kelajuan pemindahan data, tetapi hanya sedikit - daya pengeluaran saluran boleh berkurangan maksimum 5-10%. Pada masa yang sama, teknologi ini telah diuji dan menunjukkan hasil yang baik walaupun pada saluran satelit, yang agak tidak stabil dan mempunyai lebar jalur yang rendah.

Igor Vinokhodov, jurutera barisan ke-2 pentadbiran Rostelecom-Solar

Sumber: www.habr.com

Tambah komen