Šifriramo prema GOST-u: vodič za postavljanje dinamičkog usmjeravanja prometa

Šifriramo prema GOST-u: vodič za postavljanje dinamičkog usmjeravanja prometa
Ako vaša kompanija prenosi ili prima lične podatke i druge povjerljive informacije putem mreže koja podliježe zaštiti u skladu sa zakonom, potrebno je koristiti GOST enkripciju. Danas ćemo vam reći kako smo implementirali takvu enkripciju baziranu na S-Terra crypto gateway (CS) kod jednog od kupaca. Ova priča će biti od interesa za stručnjake za informatičku sigurnost, kao i za inženjere, dizajnere i arhitekte. U ovom postu nećemo ulaziti duboko u nijanse tehničke konfiguracije; fokusiraćemo se na ključne tačke osnovnog podešavanja. Ogromne količine dokumentacije o postavljanju Linux OS demona, na kojima je baziran S-Terra CS, su besplatno dostupne na Internetu. Dokumentacija za postavljanje vlasničkog softvera S-Terra također je javno dostupna na portala proizvođač.

Nekoliko riječi o projektu

Topologija mreže korisnika bila je standardna - puna mreža između centra i grana. Bilo je potrebno uvesti enkripciju kanala za razmjenu informacija između svih lokacija, kojih je bilo 8.

Obično je u takvim projektima sve statično: statičke rute do lokalne mreže stranice postavljaju se na kripto gatewaye (CG), registruju se liste IP adresa (ACL) za enkripciju. Međutim, u ovom slučaju, stranice nemaju centraliziranu kontrolu i bilo što se može dogoditi unutar njihovih lokalnih mreža: mreže se mogu dodavati, brisati i mijenjati na sve moguće načine. Kako bi se izbjeglo rekonfiguriranje rutiranja i ACL-a na KS-u prilikom promjene adresiranja lokalnih mreža na lokacijama, odlučeno je da se koristi GRE tuneliranje i OSPF dinamičko rutiranje, koje uključuje sve KS i većinu rutera na nivou jezgre mreže na lokacijama ( na nekim lokacijama, administratori infrastrukture radije koriste SNAT prema KS na kernel ruterima).

GRE tuneliranje nam je omogućilo da riješimo dva problema:
1. Koristite IP adresu eksternog interfejsa CS-a za šifrovanje u ACL-u, koji obuhvata sav saobraćaj poslat drugim sajtovima.
2. Organizujte ptp tunele između CS-ova, koji vam omogućavaju da konfigurišete dinamičko rutiranje (u našem slučaju, MPLS L3VPN dobavljača je organizovan između sajtova).

Klijent je naručio implementaciju enkripcije kao usluge. U suprotnom, on bi morao ne samo da održava kripto gatewaye ili ih predaje nekoj organizaciji, već i samostalno prati životni ciklus certifikata za šifriranje, obnavlja ih na vrijeme i instalira nove.
Šifriramo prema GOST-u: vodič za postavljanje dinamičkog usmjeravanja prometa
A sada stvarna beleška - kako i šta smo konfigurisali

Napomena za CII temu: postavljanje kripto gatewaya

Osnovno podešavanje mreže

Prije svega, pokrećemo novi CS i ulazimo u administratorsku konzolu. Trebali biste početi promjenom ugrađene administratorske lozinke - komande promijenite korisničku lozinku administratora. Zatim morate izvršiti proceduru inicijalizacije (naredba inicijalizirati) tokom kojeg se unose podaci o licenci i inicijalizira se senzor slučajnog broja (RNS).

Obratite pažnju! Kada se S-Terra CC inicijalizira, uspostavlja se sigurnosna politika u kojoj sučelja sigurnosnog gatewaya ne dozvoljavaju prolazak paketa. Morate ili kreirati vlastitu politiku ili koristiti naredbu pokrenite csconf_mgr activate aktivirajte unaprijed definiranu politiku dozvoljavanja.
Zatim morate konfigurirati adresiranje vanjskih i internih sučelja, kao i zadanu rutu. Poželjno je raditi s konfiguracijom CS mreže i konfigurirati enkripciju preko Cisco konzole. Ova konzola je dizajnirana za unos komandi sličnih Cisco IOS komandama. Konfiguracija generirana pomoću konzole nalik Cisco-u se zauzvrat pretvara u odgovarajuće konfiguracijske datoteke s kojima OS demoni rade. Možete ići na konzolu sličnu Cisco sa administrativne konzole pomoću komande konfiguriše.

Promijenite lozinke za ugrađene korisničke cscons i omogućite:

>enable
Lozinka: csp (preinstalirano)
#configure terminal
#username cscons privilege 15 secret 0 #enable secret 0 Podešavanje osnovne mrežne konfiguracije:

#interface GigabitEthernet0/0
#ip adresa 10.111.21.3 255.255.255.0
#bez gašenja
#interface GigabitEthernet0/1
#ip adresa 192.168.2.5 255.255.255.252
#bez gašenja
#ip ruta 0.0.0.0 0.0.0.0 10.111.21.254

GRE

Izađite iz konzole nalik Cisco i idite na debian shell s naredbom sistem. Postavite vlastitu lozinku za korisnika korijen tim passwd.
U svakoj kontrolnoj sobi, zaseban tunel je konfigurisan za svaku lokaciju. Tunelski interfejs je konfigurisan u datoteci / etc / network / sučelja. Uslužni program za IP tunel, uključen u prethodno instalirani set iproute2, odgovoran je za kreiranje samog interfejsa. Komanda za kreiranje interfejsa je upisana u opciju pre-up.

Primjer konfiguracije tipičnog tunelskog interfejsa:
auto site1
iface site1 inet statički
adresa 192.168.1.4
mrežna maska ​​255.255.255.254
pre-up ip tunel dodaj site1 mod gre lokalni 10.111.21.3 daljinski 10.111.22.3 ključ hfLYEg^vCh6p

Obratite pažnju! Treba napomenuti da se postavke za tunelske interfejse moraju nalaziti izvan sekcije

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

U suprotnom, ove postavke će biti prepisane prilikom promjene mrežnih postavki fizičkih interfejsa putem konzole slične Cisco.

Dinamičko rutiranje

U S-Terri, dinamičko rutiranje je implementirano pomoću softverskog paketa Quagga. Da bismo konfigurirali OSPF, moramo omogućiti i konfigurirati demone zebra и ospfd. Zebra daemon je odgovoran za komunikaciju između demona rutiranja i OS-a. Ospfd daemon, kao što ime govori, odgovoran je za implementaciju OSPF protokola.
OSPF se konfiguriše ili preko demonske konzole ili direktno kroz konfiguracioni fajl /etc/quagga/ospfd.conf. Sva fizička i tunelska sučelja koja učestvuju u dinamičkom rutiranju se dodaju u fajl, a mreže koje će se oglašavati i primati najave su također deklarirane.

Primjer konfiguracije kojoj je potrebno dodati ospfd.conf:
interfejs eth0
!
interfejs eth1
!
interfejs sajt 1
!
interfejs sajt 2
ospf router
ospf router-id 192.168.2.21
mreža 192.168.1.4/31 područje 0.0.0.0
mreža 192.168.1.16/31 područje 0.0.0.0
mreža 192.168.2.4/30 područje 0.0.0.0

U ovom slučaju, adrese 192.168.1.x/31 su rezervirane za tunelske ptp mreže između lokacija, adrese 192.168.2.x/30 su dodijeljene za tranzitne mreže između CS i kernel rutera.

Obratite pažnju! Da biste smanjili tablicu usmjeravanja u velikim instalacijama, možete filtrirati reklame samih tranzitnih mreža koristeći konstrukcije nije povezan redistribucija ili redistribuirati povezanu mapu rute.

Nakon konfigurisanja demona, morate promijeniti status pokretanja demona u /etc/quagga/daemons. U opcijama zebra и ospfd nema promjene na da. Pokrenite quagga demon i postavite ga na automatsko pokretanje kada pokrenete KS komandu update-rc.d quagga enable.

Ako je konfiguracija GRE tunela i OSPF-a urađena ispravno, tada bi se rute u mreži drugih lokacija trebale pojaviti na KSh i core ruterima i na taj način nastaje mrežna povezanost između lokalnih mreža.

Mi šifriramo preneseni promet

Kao što je već napisano, obično prilikom šifriranja između lokacija navodimo raspone IP adresa (ACL) između kojih se šifrira promet: ako izvorna i odredišna adresa spadaju u ove raspone, tada je promet između njih šifriran. Međutim, u ovom projektu struktura je dinamična i adrese se mogu promijeniti. Pošto smo već konfigurisali GRE tuneliranje, možemo navesti eksterne KS adrese kao izvornu i odredišnu adresu za šifrovanje saobraćaja – na kraju krajeva, saobraćaj koji je već inkapsuliran GRE protokolom stiže na enkripciju. Drugim riječima, sve što dođe u CS iz lokalne mreže jedne stranice prema mrežama koje su najavile druge stranice je šifrirano. I unutar svake od lokacija može se izvršiti bilo koje preusmjeravanje. Dakle, ukoliko dođe do bilo kakve promjene u lokalnim mrežama, administrator treba samo da izmijeni najave koje dolaze iz njegove mreže prema mreži, a ona će postati dostupna drugim stranicama.

Šifriranje u S-Terra CS se izvodi korištenjem IPSec protokola. Koristimo algoritam "Skakavac" u skladu sa GOST R 34.12-2015, a za kompatibilnost sa starijim verzijama možete koristiti GOST 28147-89. Provjera autentičnosti se tehnički može izvršiti i na unaprijed definiranim ključevima (PSK-ovima) i na certifikatima. Međutim, u industrijskom radu potrebno je koristiti certifikate izdane u skladu sa GOST R 34.10-2012.

Rad sa certifikatima, kontejnerima i CRL-ovima se obavlja pomoću uslužnog programa cert_mgr. Prije svega, korištenjem naredbe cert_mgr kreirati potrebno je generirati privatni ključ kontejner i zahtjev za certifikatom, koji će biti poslan u Centar za upravljanje certifikatima. Nakon prijema certifikata, mora se uvesti zajedno s korijenskim CA certifikatom i CRL-om (ako se koristi) uz naredbu cert_mgr import. Možete osigurati da su svi certifikati i CRL-ovi instalirani pomoću naredbe cert_mgr show.

Nakon uspješne instalacije certifikata, idite na konzolu sličnu Cisco da biste konfigurirali IPSec.
Kreiramo IKE politiku koja specificira željene algoritme i parametre sigurnog kanala koji se kreira, a koji će biti ponuđen partneru na odobrenje.

#crypto isakmp politika 1000
#encr gost341215k
#hash gost341112-512-tc26
#authentication sign
#group vko2
#lifetime 3600

Ova politika se primjenjuje prilikom izgradnje prve faze IPSec-a. Rezultat uspješnog završetka prve faze je osnivanje SA (Security Association).
Zatim trebamo definirati listu izvornih i odredišnih IP adresa (ACL) za enkripciju, generirati skup transformacije, kreirati kriptografsku mapu (kripto mapu) i povezati je s vanjskim sučeljem CS-a.

Postavi ACL:
#ip pristupna lista proširena stranica1
#permit gre host 10.111.21.3 host 10.111.22.3

Skup transformacija (isto kao i za prvu fazu, koristimo algoritam šifriranja “Skakavac” koristeći način generiranja umetanja simulacije):

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

Kreiramo kripto mapu, specificiramo ACL, skup transformacije i ravnopravnu adresu:

#crypto map MAIN 100 ipsec-isakmp
#match address site1
#set transform-set GOST
#set peer 10.111.22.3

Vežemo kripto karticu za eksterno sučelje kase:

#interface GigabitEthernet0/0
#ip adresa 10.111.21.3 255.255.255.0
#kripto mapa GLAVNA

Za šifriranje kanala s drugim stranicama, morate ponoviti proceduru za kreiranje ACL i kripto kartice, mijenjajući ACL naziv, IP adrese i broj kripto kartice.

Obratite pažnju! Ako se provjera certifikata od strane CRL-a ne koristi, ovo mora biti eksplicitno navedeno:

#crypto pki trustpoint s-terra_technological_trustpoint
#revocation-check none

U ovom trenutku, podešavanje se može smatrati završenim. U izlazu komande poput Cisco konzole prikaži kripto isakmp sa и prikaži crypto ipsec sa Konstruisana prva i druga faza IPSec-a treba da se odraze. Iste informacije se mogu dobiti pomoću naredbe sa_mgr show, izvršeno iz debian shell-a. U izlazu komande cert_mgr show Certifikati udaljene lokacije bi se trebali pojaviti. Status takvih potvrda će biti daljinski. Ako se tuneli ne grade, potrebno je pogledati dnevnik VPN servisa koji je pohranjen u datoteci /var/log/cspvpngate.log. Kompletna lista log fajlova sa opisom njihovog sadržaja dostupna je u dokumentaciji.

Praćenje “zdravlja” sistema

S-Terra CC koristi standardni snmpd demon za nadzor. Pored tipičnih Linux parametara, S-Terra podržava izdavanje podataka o IPSec tunelima u skladu sa CISCO-IPSEC-FLOW-MONITOR-MIB, što koristimo prilikom praćenja statusa IPSec tunela. Podržana je i funkcionalnost prilagođenih OID-ova koji rezultate izvršavanja skripte prikazuju kao vrijednosti. Ova funkcija nam omogućava da pratimo datume isteka certifikata. Napisana skripta analizira izlaz komande cert_mgr show i kao rezultat daje broj dana do isteka lokalnog i korijenskog certifikata. Ova tehnika je nezamjenjiva kod primjene velikog broja CABG operacija.
Šifriramo prema GOST-u: vodič za postavljanje dinamičkog usmjeravanja prometa

Koja je korist od takve enkripcije?

S-Terra KSh podržava sve gore opisane funkcije. Odnosno, nije bilo potrebe za instaliranjem dodatnih modula koji bi mogli utjecati na sertifikaciju kripto gateway-a i certifikaciju cjelokupnog informacionog sistema. Može postojati bilo koji kanal između sajtova, čak i putem interneta.

Zbog činjenice da kada se interna infrastruktura promijeni, nema potrebe za rekonfiguracijom kripto gatewaya, sistem radi kao servis, što je vrlo zgodno za kupca: on može postaviti svoje usluge (klijent i server) na bilo koju adresu, a sve promjene će se dinamički prenositi između opreme za šifriranje.

Naravno, enkripcija zbog režijskih troškova (overhead) utiče na brzinu prijenosa podataka, ali samo neznatno - propusnost kanala može se smanjiti za maksimalno 5-10%. Istovremeno, tehnologija je testirana i pokazala je dobre rezultate čak i na satelitskim kanalima, koji su prilično nestabilni i imaju mali propusni opseg.

Igor Vinokhodov, inženjer 2. linije administracije Rostelecom-Solar

izvor: www.habr.com

Dodajte komentar