Šifruojame pagal GOST: dinaminio srauto maršruto nustatymo vadovas

Šifruojame pagal GOST: dinaminio srauto maršruto nustatymo vadovas
Jei jūsų įmonė per tinklą perduoda ar gauna asmens duomenis ir kitą konfidencialią informaciją, kuriai taikoma apsauga pagal įstatymus, ji privalo naudoti GOST šifravimą. Šiandien mes jums pasakysime, kaip pas vieną iš klientų įdiegėme tokį šifravimą, pagrįstą S-Terra kriptovaliutų šliuzu (CS). Ši istorija bus įdomi informacijos saugumo specialistams, taip pat inžinieriams, dizaineriams ir architektams. Šiame įraše mes nesigilinsime į techninės konfigūracijos niuansus, sutelksime dėmesį į pagrindinius pagrindinės sąrankos dalykus. Internete yra laisvai prieinami didžiuliai dokumentai apie Linux OS demonų, kuriais grindžiama S-Terra CS, nustatymą. Patentuotos S-Terra programinės įrangos nustatymo dokumentai taip pat yra viešai prieinami adresu portalas gamintojas.

Keletas žodžių apie projektą

Kliento tinklo topologija buvo standartinė – pilnas tinklelis tarp centro ir filialų. Reikėjo įvesti informacijos mainų kanalų šifravimą tarp visų svetainių, kurių buvo 8.

Paprastai tokiuose projektuose viskas yra statiška: kriptovaliutų šliuzuose (CG) nustatomi statiški maršrutai į vietinį svetainės tinklą, registruojami IP adresų (ACL) sąrašai šifravimui. Tačiau šiuo atveju svetainėse nėra centralizuoto valdymo, o vietiniuose tinkluose gali nutikti bet kas: tinklus galima pridėti, ištrinti ir visais įmanomais būdais keisti. Kad KS nebūtų perkonfigūruotas maršrutas ir ACL keičiant vietinių tinklų adresavimą svetainėse, buvo nuspręsta naudoti GRE tuneliavimą ir OSPF dinaminį maršrutizavimą, kuris apima visas KS ir daugumą maršrutizatorių tinklo branduolio lygiu svetainėse ( kai kuriose svetainėse infrastruktūros administratoriai pirmenybę teikia SNAT, o ne KS branduolio maršrutizatoriuose).

GRE tuneliavimas leido mums išspręsti dvi problemas:
1. Naudokite išorinės CS sąsajos IP adresą šifravimui ACL, kuris apima visą srautą, siunčiamą į kitas svetaines.
2. Organizuokite ptp tunelius tarp CS, kurie leidžia konfigūruoti dinaminį maršrutą (mūsų atveju teikėjo MPLS L3VPN yra organizuotas tarp svetainių).

Klientas užsakė įdiegti šifravimą kaip paslaugą. Priešingu atveju jam tektų ne tik prižiūrėti kriptovaliutų vartus arba juos perduoti kokiai nors organizacijai, bet ir savarankiškai stebėti šifravimo sertifikatų gyvavimo ciklą, juos laiku atnaujinti ir diegti naujus.
Šifruojame pagal GOST: dinaminio srauto maršruto nustatymo vadovas
O dabar tikrasis atmintinė – kaip ir ką sukonfigūravome

Pastaba CII temai: kriptovaliutų šliuzo nustatymas

Pagrindinė tinklo sąranka

Pirmiausia paleidžiame naują CS ir patenkame į administravimo konsolę. Pradėti reikėtų nuo integruoto administratoriaus slaptažodžio – komandos pakeitimo pakeisti vartotojo slaptažodžio administratorių. Tada turite atlikti inicijavimo procedūrą (komandą inicijuoti), kurio metu įvedami licencijos duomenys ir inicijuojamas atsitiktinių skaičių jutiklis (RNS).

Pastaba! Kai S-Terra CC inicijuojamas, nustatoma saugumo politika, pagal kurią saugos šliuzo sąsajos neleidžia paketams praeiti. Turite sukurti savo politiką arba naudoti komandą paleiskite csconf_mgr activate suaktyvinti iš anksto nustatytą leidimo politiką.
Tada turite sukonfigūruoti išorinių ir vidinių sąsajų adresavimą, taip pat numatytąjį maršrutą. Pageidautina dirbti su CS tinklo konfigūracija ir konfigūruoti šifravimą naudojant į Cisco panašią konsolę. Ši konsolė skirta įvesti komandas, panašias į Cisco IOS komandas. Konfigūracija, sukurta naudojant „Cisco“ tipo konsolę, savo ruožtu konvertuojama į atitinkamus konfigūracijos failus, su kuriais veikia OS demonai. Galite pereiti į „Cisco“ tipo konsolę iš administravimo konsolės naudodami komandą konfigūruoti.

Pakeiskite integruotų vartotojo cscons slaptažodžius ir įgalinkite:

> įjungti
Slaptažodis: csp (iš anksto įdiegtas)
#konfigūruoti terminalą
#username cscons privilegija 15 paslaptis 0 #įgalinti paslaptį 0 Pagrindinės tinklo konfigūracijos nustatymas:

#interface GigabitEthernet0/0
#ip adresas 10.111.21.3 255.255.255.0
#be išjungimo
#interface GigabitEthernet0/1
#ip adresas 192.168.2.5 255.255.255.252
#be išjungimo
#ip maršrutas 0.0.0.0 0.0.0.0 10.111.21.254

GRE

Išeikite iš „Cisco“ tipo konsolės ir eikite į debiano apvalkalą su komanda sistema. Nustatykite savo slaptažodį vartotojui šaknis komanda passwd.
Kiekvienoje valdymo patalpoje kiekvienai vietai sukonfigūruojamas atskiras tunelis. Tunelio sąsaja sukonfigūruota faile / etc / network / interface. IP tunelio programa, įtraukta į iš anksto įdiegtą iproute2 rinkinį, yra atsakinga už pačios sąsajos sukūrimą. Sąsajos kūrimo komanda įrašoma į išankstinę parinktį.

Tipiškos tunelio sąsajos konfigūracijos pavyzdys:
auto svetainė1
iface site1 inet statinis
adresas 192.168.1.4
tinklo kaukė 255.255.255.254
išankstinis IP tunelis pridėti svetainės1 režimas gre vietinis 10.111.21.3 nuotolinis 10.111.22.3 raktas hfLYEg^vCh6p

Pastaba! Reikėtų pažymėti, kad tunelio sąsajų nustatymai turi būti už atkarpos ribų

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

Priešingu atveju šie nustatymai bus perrašyti keičiant fizinių sąsajų tinklo nustatymus per „Cisco“ tipo konsolę.

Dinaminis maršruto parinkimas

S-Terra dinaminis maršruto parinkimas įgyvendinamas naudojant Quagga programinės įrangos paketą. Norėdami sukonfigūruoti OSPF, turime įjungti ir sukonfigūruoti demonus zebras и ospfd. Zebra demonas yra atsakingas už ryšį tarp maršruto demonų ir OS. ospfd demonas, kaip rodo pavadinimas, yra atsakingas už OSPF protokolo įgyvendinimą.
OSPF konfigūruojamas per demono konsolę arba tiesiogiai per konfigūracijos failą /etc/quagga/ospfd.conf. Į failą įtraukiamos visos fizinės ir tunelinės sąsajos, dalyvaujančios dinaminiame maršrute, taip pat deklaruojami tinklai, kurie bus reklamuojami ir gaus pranešimus.

Konfigūracijos, kurią reikia pridėti, pavyzdys ospfd.conf:
sąsaja eth0
!
sąsaja eth1
!
sąsajos svetainė1
!
sąsajos svetainė2
maršrutizatorius ospf
ospf maršrutizatoriaus ID 192.168.2.21
tinklas 192.168.1.4/31 sritis 0.0.0.0
tinklas 192.168.1.16/31 sritis 0.0.0.0
tinklas 192.168.2.4/30 sritis 0.0.0.0

Šiuo atveju adresai 192.168.1.x/31 yra rezervuoti tuneliniams ptp tinklams tarp svetainių, adresai 192.168.2.x/30 skiriami tranzitiniams tinklams tarp CS ir branduolio maršrutizatorių.

Pastaba! Norėdami sumažinti maršruto lentelę dideliuose įrenginiuose, galite filtruoti pranešimus apie pačius tranzito tinklus naudodami konstrukcijas nėra prijungtas perskirstymas arba perskirstyti prijungtą maršruto žemėlapį.

Sukonfigūravę demonus, turite pakeisti demonų paleidimo būseną /etc/quagga/daemons. Variantuose zebras и ospfd jokio pakeitimo į taip. Paleiskite quagga demoną ir nustatykite jį į automatinį paleidimą, kai paleidžiate KS komandą update-rc.d quagga įgalinimas.

Jei GRE tunelių ir OSPF konfigūracija atlikta teisingai, maršrutai kitų svetainių tinkle turėtų atsirasti KSh ir pagrindiniuose maršrutizatoriuose ir taip atsiranda tinklo ryšys tarp vietinių tinklų.

Mes užšifruojame perduodamą srautą

Kaip jau buvo rašyta, dažniausiai šifruodami tarp svetainių nurodome IP adresų diapazonus (ACL), tarp kurių yra šifruojamas srautas: jei šaltinio ir paskirties adresai patenka į šiuos diapazonus, tada srautas tarp jų yra šifruojamas. Tačiau šiame projekte struktūra yra dinamiška ir adresai gali keistis. Kadangi GRE tuneliavimą jau sukonfigūravome, išorinius KS adresus galime nurodyti kaip srauto šifravimo šaltinio ir paskirties adresus – juk šifruoti atkeliauja srautas, kuris jau yra uždengtas GRE protokolu. Kitaip tariant, viskas, kas patenka į CS iš vienos svetainės vietinio tinklo į tinklus, apie kuriuos paskelbė kitos svetainės, yra užšifruota. Kiekvienoje svetainėje galima atlikti bet kokį peradresavimą. Taigi, jei pasikeičia vietiniai tinklai, administratoriui tereikia modifikuoti iš jo tinklo į tinklą ateinančius pranešimus ir jie taps prieinami kitoms svetainėms.

S-Terra CS šifravimas atliekamas naudojant IPSec protokolą. Mes naudojame „Grasshopper“ algoritmą pagal GOST R 34.12-2015, o suderinamumui su senesnėmis versijomis galite naudoti GOST 28147-89. Autentifikavimas techniškai gali būti atliekamas naudojant iš anksto nustatytus raktus (PSK) ir sertifikatus. Tačiau pramoninėje veikloje būtina naudoti sertifikatus, išduotus pagal GOST R 34.10-2012.

Darbas su sertifikatais, konteineriais ir CRL atliekamas naudojant įrankį cert_mgr. Visų pirma, naudojant komandą cert_mgr sukurti reikia sugeneruoti privataus rakto konteinerį ir sertifikato užklausą, kuri bus išsiųsta į Sertifikatų valdymo centrą. Gavus sertifikatą, jis turi būti importuotas kartu su šakniniu CA sertifikatu ir CRL (jei naudojamas) su komanda cert_mgr importas. Galite įsitikinti, kad visi sertifikatai ir CRL yra įdiegti naudodami komandą cert_mgr šou.

Sėkmingai įdiegę sertifikatus, eikite į Cisco tipo konsolę, kad sukonfigūruotumėte IPSec.
Sukuriame IKE politiką, kurioje nurodomi norimi kuriamo saugaus kanalo algoritmai ir parametrai, kurie bus pasiūlyti partneriui tvirtinti.

#crypto isakmp politika 1000
#encr gost341215k
#hash gost341112-512-tc26
#autentifikavimo ženklas
#grupė vko2
#gyvenimas 3600

Ši politika taikoma kuriant pirmąjį IPSec etapą. Sėkmingai užbaigus pirmąjį etapą, buvo įkurta SA (Saugumo asociacija).
Toliau turime apibrėžti šaltinio ir paskirties IP adresų (ACL) sąrašą šifravimui, sugeneruoti transformacijų rinkinį, sukurti kriptografinį žemėlapį (kripto žemėlapį) ir susieti jį su išorine CS sąsaja.

Nustatyti ACL:
#ip prieigos sąrašo išplėstinė svetainė1
#permit gre host 10.111.21.3 host 10.111.22.3

Transformacijų rinkinys (tas pats, kaip ir pirmojoje fazėje, mes naudojame „Grasshopper“ šifravimo algoritmą naudodami modeliavimo įterpimo generavimo režimą):

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

Sukuriame kriptovaliutų žemėlapį, nurodome ACL, transformacijų rinkinį ir partnerio adresą:

#crypto map MAIN 100 ipsec-isakmp
#match adresas svetainė1
#set transform-set GOST
#nustatyti lygiavertį 10.111.22.3

Kripto kortelę sujungiame su išorine kasos aparato sąsaja:

#interface GigabitEthernet0/0
#ip adresas 10.111.21.3 255.255.255.0
#kripto žemėlapis PAGRINDINIS

Norėdami užšifruoti kanalus su kitomis svetainėmis, turite pakartoti ACL ir kriptovaliutų kortelės sukūrimo procedūrą, pakeisti ACL pavadinimą, IP adresus ir kripto kortelės numerį.

Pastaba! Jei sertifikato patvirtinimas CRL nenaudojamas, tai turi būti aiškiai nurodyta:

#crypto pki pasitikėjimo taškas s-terra_technological_trustpoint
#atšaukimas-netikrinti nė vieno

Šiuo metu sąranka gali būti laikoma baigta. „Cisco“ tipo konsolės komandų išvestis rodyti kripto isakmp sa и rodyti crypto ipsec sa Sukonstruotos pirmosios ir antrosios IPSec fazės turėtų būti atspindėtos. Tą pačią informaciją galima gauti naudojant komandą sa_mgr šou, vykdomas iš debiano apvalkalo. Komandos išvestyje cert_mgr šou Turėtų pasirodyti nuotolinių svetainių sertifikatai. Tokių sertifikatų statusas bus nuotolinis. Jei tuneliai nestatomi, reikia pažiūrėti į VPN paslaugų žurnalą, kuris saugomas faile /var/log/cspvpngate.log. Visą žurnalo failų sąrašą su jų turinio aprašymu rasite dokumentacijoje.

Sistemos „sveikatos“ stebėjimas

S-Terra CC stebėjimui naudoja standartinį snmpd demoną. Be įprastų „Linux“ parametrų, „S-Terra“ palaiko duomenų apie IPSec tunelius išdavimą pagal CISCO-IPSEC-FLOW-MONITOR-MIB, kurį naudojame stebėdami IPSec tunelių būseną. Taip pat palaikomos tinkintų OID funkcijos, kurios scenarijaus vykdymo rezultatus išveda kaip reikšmes. Ši funkcija leidžia mums sekti sertifikato galiojimo datas. Parašytas scenarijus analizuoja komandos išvestį cert_mgr šou ir dėl to pateikia dienų skaičių iki vietinių ir šakninių sertifikatų galiojimo pabaigos. Šis metodas yra būtinas, kai skiriama daug AKS.
Šifruojame pagal GOST: dinaminio srauto maršruto nustatymo vadovas

Kokia tokio šifravimo nauda?

Visas aukščiau aprašytas funkcijas palaiko S-Terra KSh. Tai yra, nereikėjo diegti jokių papildomų modulių, kurie galėtų turėti įtakos kriptovaliutų sertifikavimui ir visos informacinės sistemos sertifikavimui. Tarp svetainių gali būti bet kokie kanalai, net ir internetu.

Dėl to, kad pasikeitus vidinei infrastruktūrai, nereikia iš naujo konfigūruoti kriptovaliutų, sistema veikia kaip paslauga, o tai labai patogu klientui: savo paslaugas (klientą ir serverį) jis gali talpinti bet kokiais adresais, o visi pakeitimai bus dinamiškai perkeliami tarp šifravimo įrangos.

Žinoma, šifravimas dėl pridėtinių išlaidų (overhead) įtakoja duomenų perdavimo greitį, tačiau tik nežymiai – kanalo pralaidumas gali sumažėti daugiausiai 5-10%. Tuo pačiu metu technologija buvo išbandyta ir parodė gerus rezultatus net palydoviniuose kanaluose, kurie yra gana nestabilūs ir turi mažą pralaidumą.

Igoris Vinokhodovas, „Rostelecom-Solar“ 2-osios valdymo linijos inžinierius

Šaltinis: www.habr.com

Добавить комментарий