Domov / Ovládanie PC / Obojsmerné ssl prepojenie s platobným systémom. Zabezpečenie bezpečnosti platobných systémov na báze SSL protokolu. Bezpečné pripojenie SSL s obojsmernou autentifikáciou

Obojsmerné ssl prepojenie s platobným systémom. Zabezpečenie bezpečnosti platobných systémov na báze SSL protokolu. Bezpečné pripojenie SSL s obojsmernou autentifikáciou

Nastavenie prístupu na web

Ďalšie nastavenia servera webového prístupu

Nastavenie zabezpečeného pripojenia (na základe Secure Socket Layers, SSL)

V prípade potreby môžete nakonfigurovať ochranu pripojenias webovým prístupovým serverom DIRECTUM : Informácie prenášané cez komunikačné kanály budú šifrované. Aby ste mohli pracovať so zabezpečenými pripojeniami, postupujte takto:

1. Vykonajte zmeny v konfiguračnom súbore servera webového prístupu:

· Krok 1: Spustite konfiguračnú pomôcku servera Web Access Server C:\Program Files\DIRECTUM Company\WebAccessConfig\DirWebConfigurator.exe.

· Krok 2. Okno "Vyberte webovú stránku servera Web Access Server". DIRECTUM":

A) v rozbaľovacom zozname vyberte webovú stránku servera webového prístupu DIRECTUM . V predvolenom nastavení má názov „Web Access Server“. DIRECTUM";

b) kliknite na tlačidlo OK ;

· Krok 3. Okno "Web Access Server Settings". DIRECTUM “, záložka „Všeobecné“:

A) v rozbaľovacom zozname "Zabezpečené pripojenie" vyberte hodnotu "Pre vzdialené". Ak potrebujete vytvoriť bezpečné pripojenie a pre používateľov lokálna sieť, potom vyberte hodnotu „Pre vzdialené a lokálne“;

b) kliknite na tlačidlo OK .

2. Nakonfigurujte službu IIS na prácu s protokolom SSL -pripojenie inštaláciou certifikátu overenia servera. Na tento účel sa vygeneruje certifikát s účelom „Poskytuje získanie identifikácie zo vzdialeného počítača“ s možnosťou exportu do služby podnikového certifikátu, v dôsledku čoho musíte získať *. pfx -súbor so súkromným kľúčom.

3. Ak používate Certificate Web Service Windows potom urobte nasledovné:

A) Pri generovaní certifikátu uveďte možnosť prípadného exportu certifikátu. Po nainštalovaní certifikátu do lokálneho systému je možné ho zobraziť pomocou internet Explorer – Položka ponuky „Možnosti internetu“, karta „Obsah“, tlačidlo Certifikáty . Ak chcete exportovať, použite tlačidlo Export , špecifikujte Áno, exportovať súkromný kľúč a zadajte heslo.

b) Importujte certifikát. Ak to chcete urobiť, na karte „Zabezpečenie adresára“ na karte vlastností webovej lokality kliknite na tlačidlo Certifikáty a podľa pokynov na obrazovke importujte certifikát pomocou hesla, ktoré ste nastavili v predchádzajúcom kroku. Po prijatí certifikátu sa vytvorí a funguje bezpečný port 443 pripojenia SSL bude možné.

4. Ak chcete podporovať otvorené (nezabezpečené) pripojenia, musíte túto možnosť nastaviť Povoliť podporu pre otvorené pripojenia HTTP na karte Webová lokalita vo vlastnostiach webovej lokality.

5. Aby ste mohli nainštalovať certifikát certifikačnej autority pomocou odkazu z prihlasovacej stránky, potrebujete používateľa, ktorý spúšťa aplikačnú skupinu " DIRECTUM “, povoľte „Čítať“ a „Vyžiadať certifikáty“ v module snap-in „Certifikačná autorita“ vo vlastnostiach požadovanej certifikačnej autority na karte „Zabezpečenie“.

Pozri tiež:

Vydali sme novú knihu „Content Marketing in v sociálnych sieťach: Ako sa dostať do hlavy predplatiteľov a zamilovať si svoju značku.

Svet je posadnutý internetovou bezpečnosťou. Ak ste v trende a korešpondujete výlučne v telegrame, prečítajte si o tom, ako vytvoriť bezpečné pripojenie na webe. V každom prípade sa vám bude hodiť a ak ste internetový obchod, tak sa bez neho vôbec nezaobídete. Popri tom sa bavme o certifikátoch: čo sú a prečo sú potrebné.

Čo je HTTPS

Toto je protokol zabezpečeného pripojenia. Šifruje informácie vymieňané medzi serverom a prehliadačom používateľa – pomáha chrániť heslá, čísla kreditných kariet a adresy Email. Používanie HTTPS je silné a robí ho o niečo atraktívnejším vyhľadávače Google hodnotí zabezpečené stránky vyššie ako nezabezpečené. Ak chcete na svojom webe povoliť protokol HTTPS, musíte najskôr nainštalovať certifikát SSL na server.

Prečo potrebujete certifikát SSL

Vytvára jedinečný digitálny podpis stránky, ktorý pomáha zabezpečiť spojenie. Bez certifikátu SSL nebudete môcť získať protokol HTTPS, bez ohľadu na to, ako veľmi sa snažíte. Obsahuje:

  • doména lokality;
  • celé meno vlastníka spoločnosti;
  • fyzická adresa spoločnosti;
  • doba platnosti certifikátu;
  • Podrobnosti o vývojárovi protokolu SSL.

Budete tiež potrebovať certifikát na pripojenie k akémukoľvek platobnému systému, ako je napríklad Yandex.Money. Logika je jednoduchá – nikto vás nenechá riskovať peniaze iných ľudí.

Ako si vybrať SSL certifikát

Sú rozdelené do dvoch typov, v závislosti od stupňa ochrany a.

Overenie domény SSL

Najjednoduchšia možnosť. Bude fungovať po overení vlastníctva domény. Môžete to urobiť tromi spôsobmi:

  • Prostredníctvom e-mailu. Dostanete e-mail s pokynmi na overenie. Ako odosielacia adresa sa vyberie pošta z domény Whois alebo poštové schránky správcu alebo správcu webu.
  • Cez záznam DNS. Ak máte nastavený e-mailový server, vytvorte vlastný záznam DNS. Podľa nej vám systém potvrdí, že ste skutočne vlastníkom stránky. Metóda je automatizovaná a vhodná pre tých, ktorí majú v nastaveniach skrytý Whois mail.
  • Prostredníctvom hash súboru. Umiestnite špeciálny súbor .txt na váš server, aby certifikačná autorita mohla určiť jeho existenciu.

Toto overenie je vhodné, ak máte osobný blog alebo malý offline podnik, pretože vám neumožňuje chrániť subdomény a vykonávať finančné transakcie. Navyše na potvrdenie čistoty domény a vašich myšlienok nemusíte robiť nič zložité a hotový certifikát je hotový rýchlo.

Obchodné overenie

Tento typ certifikátu SSL je bezpečnejší, pretože potvrdzujete, že spoločnosť je pripojená k stránke. Ak to chcete urobiť, musíte do overovacieho centra odoslať niekoľko dokumentov a prijať hovor na firemné číslo. Certifikáty overenia podnikania sú rozdelené do 3 typov:

  • Rozšírené overenie SSL. Ide o certifikáty s rozšírenou validáciou. Potrebuje ich každý, kto pracuje s veľkým množstvom peňazí: banky, veľké internetové obchody, finančné spoločnosti, platobné systémy.
  • Zástupný znak SSL. Takýto certifikát chráni ako samotnú stránku, tak aj jej subdomény. Navyše ich môže byť ľubovoľný počet a môžu byť umiestnené na rôznych serveroch. Vyžaduje sa, ak používate subdomény s rôznymi regionálnymi väzbami alebo rôznymi projektmi.
  • SAN SSL. Hlavnou výhodou tohto typu certifikátu je podpora alternatívnych doménových mien: externých aj interných.

Môžem si na svoj web nainštalovať bezplatný certifikát SSL?

Áno. Väčšina týchto produktov je spoplatnená, no existujú možnosti, za ktoré nemusíte platiť peniaze. Ide o základné certifikáty overené doménou. Neumožnia vám pripojiť online pokladnicu k zdroju, ale budú môcť chrániť pripojenie používateľa k serveru. Takéto SSL sú vhodné pre malé informačné stránky alebo offline podniky. Príkladom je základný StartSSL certifikát.

Inštalácia certifikátu SSL

Najprv musíte vygenerovať CSR žiadosť o certifikát. Obsahuje všetky informácie o vlastníkovi domény a verejnom kľúči. Väčšina poskytovateľov SSL vám to umožňuje ako súčasť procesu objednávania certifikátu, ale požiadavku môžete vygenerovať aj na strane webového servera.

Pri generovaní kľúča CSR musíte zadať:

  • Názov servera: „site.com“ alebo „*.site.com“, ak získavate certifikát WIldcard. Hviezdička znamená ľubovoľný počet ľubovoľných znakov pred bodkou.
  • Kód krajiny: RU, UA, KZ atď.
  • Región, napríklad región Saratov.
  • Mesto.
  • Úplný názov organizácie alebo meno vlastníka lokality.

Žiadosť o CSR sa odošle do overovacieho centra. Výsledkom je, že získate certifikát SSL a súbor so súkromným kľúčom, ktorý nemožno stratiť a zverejniť vo verejnej doméne.

Potom musíte certifikát nainštalovať na webový server. Zvážte prípady s Apache a nginx.

Apache

Ak to chcete urobiť, musíte na server nahrať všetky certifikáty: primárne aj stredné. Najprv ho potrebujete v adresári /usr/local/ssl/crt (štandardne sa používa, vo vašom prípade sa môže líšiť). Všetky certifikáty budú uložené v ňom.

Potom si stiahnite hlavný certifikát a otvorte ho v ľubovoľnom textový editor a skopírujte celý obsah spolu s riadkami „BEGIN“ a „END“.

V adresári /ssl/crt/ vytvorte súbor s názvom vashsite.crt a vložte doň obsah certifikátu.

Presuňte súbor so súkromným kľúčom do adresára /usr/local/ssl/private/

Do súboru VirtualHost pridajte riadky:

SSL Engine zapnutý

SSLCertificateKeyFile /usr/local/ssl/private/private.key

SSLCertificateFile /usr/local/ssl/crt/yoursite.crt

SSLCertificateChainFile /usr/local/ssl/crt/intermediate.crt

Musíte zadať platné cesty k súborom. Uložte zmeny a reštartujte server.

nginx

Tu je proces inštalácie certifikátu SSL mierne odlišný. Najprv musíte skombinovať koreňový, stredný a SSL certifikát do jedného. Ak to chcete urobiť, vytvorte súbor s názvom vashsite.crt a prilepte tam obsah certifikátov spolu s riadkami „BEGIN“ a „END“ (poradie: SSL, medium, root). Nemali by tam byť prázdne riadky.

Takmer to isté je potrebné urobiť so súkromným kľúčom - vytvorte súbor vashsite.key a preneste obsah kľúča stiahnutého z webovej stránky poskytovateľa.

Umiestnite oba súbory (yoursite.crt a yoursite.key) do adresára /etc/ssl/ (toto je predvolené nastavenie, ale môže sa líšiť).

V konfiguračnom súbore upravte VirtualHost. Pridať:

server(
počúvať 443;
ssl zapnuté;

ssl_certificate /etc/ssl/yoursite.crt
ssl_certificate_key /etc/ssl/yoursite.key;
názov_servera yoursite.com;

Ak sa adresár s certifikátom a kľúčom líši od predvoleného, ​​zmeňte ho.

Teraz uložte zmeny a reštartujte nginx.

Ako získať funkčné pripojenie HTTPS

Po nainštalovaní certifikátov SSL bude stránka dostupná na dvoch adresách: http://yoursite.com a https://yoursite.com. Treba si nechať len to posledné. Ak to chcete urobiť, nastavte súbor robots.txt a vykonajte presmerovanie 301 zo starej stránky.

V "robotoch" musíte aktualizovať hostiteľa. Príklad: Hostiteľ: https://yoursite.com. Ak chcete nastaviť presmerovanie, musíte do súboru .htacsess pridať riadky:

RewriteCond %(SERVER_PORT) !^443$

RewriteRule ^(.*)$ https://yoursite.com/$1 .

Teraz zostáva informovať vyhľadávače o zmenách. V "Webmaster" "Yandex" pridajte stránku s https a zadajte ju ako hlavnú pre starú stránku.

Výsledky

Zistili sme, čo je https, ako ho nainštalovať na vašu stránku a ako všetko správne nastaviť. Tento protokol sa už stal štandardom pripojenia a časom naň prejdú všetky živé stránky. Tento proces podporujú vyhľadávače – prítomnosť zavedeného protokolu zabezpečeného pripojenia HTTPS sa stala jedným z faktorov hodnotenia. Preto, ak sa chcete dostať na vrchol, musíte si ho nainštalovať.

Nastavenie platobných systémov

Nastavenie platobných systémov do značnej miery závisí od toho, ako samotný prevádzkovateľ platobného systému zabezpečuje komunikáciu so svojimi terminálmi. Ak sa používajú mestské platobné terminály, spravidla sa používa zabezpečené pripojenie SSL a musíte povoliť a nakonfigurovať SSL WEB server na komunikáciu s terminálmi, ako je uvedené nižšie. Ak sa webové stránky na internete používajú na platby, ako často je v takýchto prípadoch potrebné konfigurovať http server o účtovaní uhlíka. Pred nastavením Carbon Billingu si u prevádzkovateľa platobného systému najprv overte, na akom komunikačnom protokole poskytuje pripojenie k svojim platobným terminálom.
SSL WEB server pre platby má niekoľko parametrov, ktorých význam je popísaný nižšie.

Povoliť webový server SSL pre platby- Ak prevádzkovateľ platobného systému pracuje s platobnými terminálmi cez SSL, potom je potrebné povoliť SSL WEB server.
IP adresa pre pripojenie HTTPS- adresa pre pripojenie terminálov alebo stránok platobných systémov na uskutočnenie platby klientovi v databáze Carbon Billing.
Port pre pripojenie HTTPS- predvolene sa používa port 1443. Ak je potrebné tento port zmeniť, ak je to možné, zadajte porty vyššie ako 1024.
Povolené adresy klientov pre SSL WEB server
Doména pre serverový certifikát SSL- tu uveďte svoju verejnú doménu alebo doménu registrovanú samostatne pre platobný server na Carbon Billing. Táto možnosť je voliteľná a umožňuje vám kontaktovať webový server SSL pomocou názvu domény namiesto adresy IP.
Vyžadovať a overiť klientsky certifikát- Nezabudnite skontrolovať, či nastavujete webové rozhranie pokladne. Ak si nastavíte prácu s platobný systém, potom špecifikujte potrebu kontroly klientsky certifikát od prevádzkovateľa platobného systému.
Vytvorte klientsky certifikát- Vytvorí sa klientsky certifikát, ktorý bude potrebné poskytnúť prevádzkovateľovi platobného systému. Certifikát s príponou .pfx bude dostupný na serveri v adresári /var/lib/usrcert a bude mať názov súboru rovnaký ako názov CN, ktorý ste zadali pri vytváraní certifikátu. Súbor certifikátu si môžete stiahnuť zo servera pomocou programu winscp.

V prípade nastavenia HTTP WEB servera pre platby.

Povoliť HTTP server pre platby- Ak prevádzkovateľ platobného systému pracuje s platobnými terminálmi cez otvorené http spojenie, povoľte HTTP server.
IP adresa pre pripojenie HTTP- Adresa webového servera na pripojenie terminálov alebo platobných serverov.
Port pripojenia HTTP- štandardne sa používa port 1444. Ak je potrebné tento port zmeniť, ak je to možné, zadajte porty vyššie ako 1024.
Povolené adresy klientov pre server HTTP- ak nie je uvedené, prístup bude otvorený pre všetkých.


Ak využívate služby prevádzkovateľov platobných systémov uvedených nižšie na tejto karte, povoľte im zodpovedajúce položky ponuky. V budúcnosti budú tieto začiarkavacie políčka nastavovať špecifické systémové nastavenia požadované pre každého z operátorov, ktorých používate. Ak váš operátor nie je jedným z operátorov uvedených nižšie, neuvádzajte žiadneho z nich.

Pri nastavovaní platobného systému Robokassa nezabudnite zadať tajné heslo potrebné na vytvorenie spojenia medzi terminálom a serverom.


Kritickosť parametra subjectAltName certifikátov ssl

Pri generovaní ssl certifikátov pre server, napríklad pre https platobný server, sa používa prípona subjectAltName. Historicky je toto rozšírenie v certifikáte štandardne označené ako kritické, čo môže viesť k problémom pri integrácii fakturácie s niektorými platobnými systémami.

Pri generovaní klientskych certifikátov nie je nastavený subjectAltName.

Kritickosť parametra je zrušená voľbou v lokálnej konzole "Konfigurácia servera - Pokročilé nastavenia - Nastavenia pre vývojárov - Nerobiť parameter AltName SSL kritickým".

Po povolení tejto možnosti sa všetky novovygenerované certifikáty servera vygenerujú s nekritickou príponou subjectAltName. Starý certifikát pre https platobný server bude potrebné ručne vygenerovať nasledovne:

1. Znovu pripojte oddiel obsahujúci konfiguráciu na rw (na to musí byť povolený režim vzdialeného asistenta):

Mount -o rw,remount /mnt/bk_disc/

2. Otvorte súbor /etc/ics/ics.conf pomocou editora a zakomentujte riadok MHTTPD_F_CERT .

3. Reštartujte platobný server https:

/etc/init.d/mhttpd_F reštartujte

Zmena certifikátu na platobnom serveri https nemá vplyv na predtým vygenerované klientske certifikáty pre pokladne alebo platobné systémy.

Nastavenie prijímania platieb cez http bez šifrovania

Ak je potrebné prijímať platby z platobných systémov pomocou nezabezpečeného protokolu http, je potrebné vykonať nasledujúce nastavenia:

1) Povoľte http server na prijímanie platieb.


2) Zadajte IP adresu, na ktorú sa majú prijímať požiadavky. Táto adresa musí patriť do jedného z rozhraní fakturácie uhlíka:


Potom zadajte port, na ktorom bude server prijímať požiadavky.

3) Vytvorte zoznam IP adries, z ktorých budú akceptované požiadavky. Toto je veľmi dôležitý krok keďže http neznamená autorizáciu platobného systému prostredníctvom certifikátu:


Protokoly platobného systému Robokassa a Unikassa môžu štandardne pracovať s HTTP. Ak je napríklad potrebné prijať požiadavky na http pomocou protokolu OSMP, musíte urobiť nasledovné:

1) Načítajte server v ud. asistenta a pripojte sa cez ssh ako root.

2) Spustite nasledujúce príkazy:

Mount -o rw,remount /mnt/ro_disc chattr -i -R /var /www/fiscal/htdocs/http/ cp /var /www/fiscal/htdocs/osmp.php /var /www/fiscal/htdocs/http/ osmp.php chown mhttpd_F:mhttpd_F /var /www/fiscal/htdocs/http/osmp.php

V skripte musíte upraviť riadok:

Mcedit /var /www/fiscal/htdocs/http/osmp.php riadok: include "../include/class_page.php"; nahradiť: include "../../include/class_page.php";

Uložte súbor a ukončite editor.

Po mäkkom reštarte bude modul prijímania platieb OSMP dostupný na http://1.1.1.1:1444/osmp.php z IP adresy 2.2.2.2.

Prístup so záporným zostatkom

Môže byť implementovaný dvoma spôsobmi:

  • Prostredníctvom editora pravidiel a tarifných sietí;
  • Cez [súbor dodatočných nastavení ics_tune.sh]

DIGITÁLNA CERTIFIKÁCIA BEZPEČNÉHO SSL PRIPOJENIA

Pre bezpečný prenos dát medzi prehliadačom a webovým serverom sa používa protokol prenosu dát https, ktorý je založený na zabezpečenom pripojení SSL.

Tento článok hovorí všeobecné informácie o šifrovaní verejného kľúča, digitálnych certifikátoch, infraštruktúre verejných kľúčov (PKI - Public Key Infrastructure), o vytvorení certifikačnej autority, konfigurácii kontajnerov servletov Apache Tomcat a JBoss na nadviazanie jednosmerného a obojsmerného zabezpečeného pripojenia, generovaní úložiska certifikátov a ako na vytvorenie certifikátu SSL pomocou nástrojov keytool. Dozviete sa tiež o spôsoboch kontroly zrušených certifikátov v jazyku Java (zoznamy CRL, protokol OCSP) a konfigurácii prehliadača na prácu s certifikátmi.

Moderným spôsobom bezpečného prenosu správ cez sieť je metóda šifrovania verejným kľúčom. Podstatou metódy je prítomnosť dvojice kľúčov: verejného a súkromného. Verejný a súkromný kľúč sú algoritmy na konverziu pôvodnej správy na zašifrovanú správu a zašifrovanú správu na originál.

Verejný kľúč je voľne dostupný a dostupný pre každého, kto chce poslať zašifrovanú správu. Odosielateľ, ktorý správu zašifroval, ju môže s istotou preniesť cez nezabezpečený komunikačný kanál a byť si istý, že túto správu bude môcť prečítať iba adresát.

Súkromný kľúč je prísne tajný vlastníkom páru kľúčov. Po prijatí správy zašifrovanej verejným kľúčom príjemca použije súkromný kľúč na jej dešifrovanie. Keďže súkromný kľúč pozná iba adresát správy, nikto iný ho nemôže prečítať, čo zaručuje utajenie správy.

Správu zašifrovanú súkromným kľúčom môže dešifrovať ktokoľvek, kto má verejný kľúč.

Na základe tohto šifrovacieho algoritmu sa vytvorí bezpečné pripojenie SSL.

Digitálny certifikát

Digitálny certifikát je elektronický dokument, ktorý identifikuje vlastníka. Obsahuje základné informácie o vlastníkovi, verejný kľúč vlastníka, dátumy expirácie, digitálny podpis emitenta (vydavateľa) a ďalšie potrebné informácie. Digitálny certifikát má sekciu rozšírení (voliteľné), ktorá obsahuje distribučné body zoznamu zrušení, informácie o vydavateľovi a ďalšie. Digitálny certifikát vám umožňuje organizovať bezpečné SSL pripojenie. Ako vytvoriť certifikát SSL je popísané ďalej v tomto článku.

Hlavné vlastnosti vyššie uvedených certifikátov sú:

SSL certifikát certifikačnej autority musí obsahovať pole CA nastavené na TRUE, čo umožňuje vydávanie iných certifikátov, t.j. tento certifikát nie je v reťazci konečný.

Certifikáty SSL servera v poli CN (bežný názov) musia obsahovať Doménové meno alebo IP adresa, na ktorej sa pristupuje k serveru, inak bude certifikát zneplatnený;

Klientske SSL certifikáty obsahujú e-mailovú adresu klienta, meno a priezvisko. Na rozdiel od certifikátu servera nie je pole CN pre obsah rozhodujúce a môže obsahovať krstné meno a priezvisko, ako aj e-mailovú adresu.

Digitálny certifikát SSL sa považuje za platný počas doby platnosti uvedenej v jeho poliach. Certifikát teda nemožno použiť pred dátumom začiatku a po dátume vypršania platnosti, pretože. systémy, ktoré s ním prídu do kontaktu, budú hlásiť nedôveru voči nemu.

Existujú situácie, keď používateľ alebo vydavateľ certifikátu potrebuje certifikát pozastaviť alebo úplne zastaviť. Povedzme, že sa stratil súkromný kľúč, ktorý by mal byť bezpečne uložený, alebo k nemu získali prístup votrelci. V takejto situácii musí používateľ kontaktovať vydavateľa (vydavateľa) certifikátu, aby ten zrušil jeho platnosť. Vydavateľ môže tiež certifikát odvolať, ak sa zistí, že klient o sebe uviedol sfalšované údaje. Na tieto účely je vytvorený špeciálny zoznam, nazývaný zoznam zrušených certifikátov (CRL). Tento zoznam obsahuje sériové číslo certifikátu, dátum vypršania jeho platnosti a dôvod zrušenia. Od momentu, keď sa certifikát dostane do CRL, je považovaný za neplatný a vydavateľ nezodpovedá za obsah takéhoto certifikátu. Jednou z metód kontroly zoznamu CRL je protokol OCSP, ktorý si však vyžaduje prítomnosť OCSP respondéra u certifikačnej autority.

Infraštruktúra verejného kľúča (PKI)

Hlavnou úlohou infraštruktúry verejného kľúča (PKI) je definovať politiku vydávania digitálnych certifikátov.

Ak chcete vydávať a odvolávať certifikáty SSL, generovanie zoznamov odvolaní (CRL) vyžaduje špeciálne softvér(BY). Príkladom takéhoto softvéru je Microsoft CA (súčasť MS Windows Server 2000/2003/2008), OpenSSL (distribuovaný do unixových operačných systémov). Tento softvér je umiestnený na zariadení certifikačného centra.

Certifikačná autorita (CA) je organizácia, ktorá vydáva digitálne SSL certifikáty na základe údajov poskytnutých zákazníkom. Za pravosť údajov uvedených v SSL certifikáte zodpovedá výlučne certifikačná autorita, čo znamená, že vlastníkom certifikátu je presne ten, za koho sa vydáva.

Najbežnejšie CA na svete sú Verisign a Comodo. Týmto certifikátom CA dôveruje 99 % prehliadačov a väčšina serverového softvéru. Vytvorenie certifikačnej autority je popísané nižšie.

Bezpečné pripojenie SSL s obojsmernou autentifikáciou

Bezpečné pripojenie SSL sa najčastejšie používa v elektronickom obchode. Ako príklad si uveďme nákup tovaru cez elektronický obchod. Kupujúci uvádza čísla a kódy kreditné karty, chce mať istotu, že sa nedostanú do rúk útočníka. Preto sa server autentifikuje poskytnutím certifikátu klientovi. Garantom tejto pravosti je certifikačná autorita. Údaje klienta budú šifrované verejným kľúčom servera. Tieto údaje je možné dešifrovať iba pomocou súkromného kľúča, ktorý je na serveri. Klient sa preto nemusí báť, že útočník zachytí jeho dáta, aj tak ich nedokáže dešifrovať.

Klientsky SSL certifikát sa používa v prípadoch, keď server potrebuje potvrdenie, že klient je ten, za koho sa vydáva. Napríklad banka poskytuje sieťový prístup na správu osobného účtu. Chce sa chrániť a mať istotu, že ho kontaktuje majiteľ tohto účtu, a nie útočník, ktorý získal prihlasovacie meno a heslo. V tejto situácii klient poskytne svoj verejný kľúč serveru a všetky dáta prijaté zo servera môže dešifrovať iba klient a nikto iný, pretože. je vlastníkom súkromného kľúča.

Obrázok je diagram, ktorý ukazuje kroky na vytvorenie zabezpečeného pripojenia SSL.

Obr 1 - Schéma vytvorenia bezpečného SSL spojenia s obojsmernou autentifikáciou

Keď sa klient pokúsi o prístup k chránenému zdroju, server odošle svoj digitálny certifikát. Po obdržaní certifikátu ho klient skontroluje. Overenie je nasledovné: dátum začiatku a konca platnosti nesmie uplynúť, vydavateľ certifikátu musí byť dôveryhodný, certifikát nesmie byť v CRL. Ak kontrola zlyhá, proces vytvárania spojenia sa preruší. Ak sú splnené podmienky overenia, klient odošle svoj certifikát na server. Server vykoná podobnú kontrolu. Ak kontrola zlyhá, server odmietne prístup k svojim zdrojom. Po úspešnom overení sa vytvorí zabezpečené spojenie a údaje sa prenesú v šifrovanej podobe.

V tejto schéme sú prenášané dáta dvojito šifrované. Klient zašifruje správu verejným kľúčom servera a potom svojim vlastným súkromným kľúčom. Po prijatí správy server dešifruje správu pomocou verejného kľúča klienta a potom pomocou jeho súkromného kľúča. Server a klient sa teda navzájom autentifikujú, pretože iba oni môžu dešifrovať prijaté dáta.

Je potrebné poznamenať, že použitie tejto techniky znižuje rýchlosť výmeny údajov, pretože operácie šifrovania/dešifrovania si vyžadujú dodatočný čas a rýchlosť ich vykonávania závisí od výkonu výpočtových zdrojov.

Vytvorenie certifikačnej autority

Na testovacie účely alebo keď nie je praktické kúpiť digitálny certifikát, mali by ste si vytvoriť svoju vlastnú CA.

Koreňová CA je CA, ktorej všetci dôverujú. Má SSL certifikát, ktorý je podpísaný vlastným súkromným kľúčom. Takéto certifikáty SSL sa nazývajú self-signed.

Súkromný kľúč koreňovej CA musí byť udržiavaný veľmi zabezpečený, pretože ak dôjde k jeho strate alebo krádeži, stratí sa dôvera vo všetky podriadené certifikáty SSL.

Podriadená CA je CA, ktorá vydáva certifikáty SSL klientom. Certifikát podriadenej certifikačnej autority je podpísaný súkromným kľúčom nadradenej certifikačnej autority. certifikačné centrá, webové servery, webové prehliadače, poštových klientov, pre ktoré sa generujú certifikáty požadovaného typu. Typy certifikátov sú určené politikou certifikačnej autority.

Z uvedeného vyplýva, že reťazec certifikátov sa vytvára od koreňovej CA až po finálny klientsky certifikát.

Obr. 2 - Reťaz certifikátov

Na vytvorenie certifikačnej autority použijeme dvojúrovňovú schému znázornenú na obrázku 3. Táto schéma má koreňovú certifikačnú autoritu (Root CA) a podriadenú certifikačnú autoritu (Essuing CA). Koreňová CA podpisuje svoj vlastný certifikát SSL a certifikáty SSL podriadených CA. Treba poznamenať, že čím viac úrovní sa použije, tým je schéma bezpečnejšia.

V certifikátoch koreňovej a podriadenej certifikačnej autority sú distribučné miesta CRL registrované v rozšírení. Distribučný bod CRL je sieťová adresa. Na túto adresu by sa mal s danou frekvenciou nahrávať súbor CRL vygenerovaný špeciálnym softvérom.

Obr. 3 - Dvojúrovňová schéma certifikačného centra

Príklad organizácie certifikačného centra na so sídlom v spoločnosti Microsoft CA nájdete v článku „Nasadenie reťazca certifikačných autorít na základe Microsoft CA“.

Získanie certifikátu SSL servera od CA a konfigurácia kontajnera Servlet

Digitálny certifikát servera SSL vám umožňuje vytvoriť bezpečné pripojenie SSL, ktoré vám umožní prenášať údaje v šifrovanej forme.

Ak chcete získať certifikát, ktorý bude používať kontajner servletu, musíte CA vygenerovať žiadosť o podpis certifikátu (CSR). Žiadosť obsahuje základné informácie o organizácii a verejnom kľúči.

Hlavné pole, ktoré musí byť správne vyplnené, sa nazýva Common Name (CN). V tomto poli musíte zadať názov domény alebo IP adresu hostiteľa, kde sa nachádza kontajner servletu.

Na vygenerovanie súkromného a verejného kľúča a vyžiadanie SSL certifikátu môžete použiť nástroj keytool, ktorý je súčasťou JDK (Java development kit).

IN príkazový riadok musíte zadať nasledujúci príkaz:

$JAVA_HOME\bin> keytool -genkey -alias -keyalg -úložisko kľúčov

Obr. 4 - Vytvorenie úložiska certifikátov SSL pomocou nástroja keytool

Tento príkaz keytool vytvorí sklad certifikátov s názvom , ktorý uchováva súkromný kľúč a certifikát SSL s vlastným podpisom, zašifrovaný pomocou algoritmu RSA. K certifikátu SSL môžete pristupovať podľa mena .

Počas vytvárania úložiska vás obslužný program keytool vyzve na zadanie hesla pre prístup do úložiska, informácií o organizácii a hesla pre tajný (súkromný) kľúč. Pri odpovedi na otázku nástroja Keytool „Aké je vaše meno a priezvisko?“ musíte zadať názov domény alebo IP adresu hostiteľa, pretože hodnota odpovede sa použije ako pole CN certifikátu SSL.

Po vygenerovaní skladu kľúčov pomocným programom keytool by mala byť zaslaná žiadosť certifikačnej autorite o podpísanie certifikátu SSL. Robí sa to príkazom:

$JAVA_HOME\bin> keytool -certreq -keyalg RSA -alias - súbor - úložisko kľúčov

V súbore žiadosť o certifikát sa uloží. Potom sa na webovej stránke certifikačného centra vyplní špeciálny formulár a obsah tohto súboru sa skopíruje do jedného z polí.

Na vydanie certifikátu SSL organizácii môže certifikačné centrum vyžadovať základné dokumenty, osvedčenie o registrácii a pod. Po prijatí žiadosti o certifikát SSL certifikačné centrum vykoná overenie porovnaním údajov v žiadosti o certifikát a zaslaných dokumentov a potom žiadosť podpíše. Podpísaná žiadosť je certifikát.

Obr. 5 - Schéma získania certifikátu servera

Po prijatí certifikátu od certifikačnej autority je potrebné ho umiestniť do úložiska po pridaní SSL certifikátov koreňovej a sprostredkovateľskej certifikačnej autority. Ak chcete pridať certifikáty SSL do úložného priestoru, použite nasledujúce príkazy pomocného programu keytool:

1) pridanie certifikátu koreňovej CA pomocou nástroja keytool: $JAVA_HOME\bin> keytool -import -trustcacerts -alias rootca -file - úložisko kľúčov

2) pridanie prechodného certifikátu CA pomocou nástroja keytool: $JAVA_HOME\bin> keytool -import -trustcacerts -alias subca -file - úložisko kľúčov

3) nahradenie certifikátu s vlastným podpisom certifikátom podpísaným v certifikačnej autorite (uvádza sa hodnota parametra alias, ktorý bol použitý pri vytváraní úložiska): $JAVA_HOME\bin> keytool -import -trustcacerts -alias - súbor - úložisko kľúčov

Aby aplikácie mohli používať zabezpečené pripojenie SSL, musí byť nakonfigurovaný kontajner servletu. Pre Apache Tomcat a JBoss pridajte do súboru server.xml nasledujúci obsah:

clientAuth="false" sslProtocol="TLS"

keystoreFile=" "

keystorePass=" "

keystoreType="JKS"

keyAlias=" "

Táto položka umožňuje kontajneru servletu vytvoriť zabezpečené pripojenie pomocou digitálneho certifikátu SSL, ktorý sa nachádza v obchode S heslom podľa aliasu .

Vyššie uvedená konfigurácia využíva jednosmernú autentifikáciu, t.j. poskytnutie digitálneho certifikátu SSL sa vyžaduje iba zo servera. Na vytvorenie obojsmernej autentifikácie, t.j. keď klient poskytuje aj digitálny certifikát SSL, musíte zmeniť konfiguráciu kontajnera servletu takto:

maxThreads="150" schéma="https" secure="true"

clientAuth="true" sslProtocol="TLS"

keystoreFile="

keystorePass=" "

keystoreType="JKS"

keyAlias=" "

truststoreFile="

truststorePass=" "truststoreType="JKS"

V tejto konfigurácii je nastavený parameter clientAuth=”true” a je pripojený trust store. Vytvorenie úložiska dôveryhodných certifikátov SSL sa vykonáva pomocou nástroja keytool rovnakým spôsobom ako v bežnom úložisku. Musíte k nemu pridať certifikáty certifikačných autorít, ktoré vydávajú digitálne certifikáty, ktorým by mal kontajner servletov dôverovať. V opačnom prípade budú certifikáty poskytnuté SSL kontajnerom servletu počas autentifikácie odmietnuté. nebude im veriť.

Kontrola zrušených certifikátov na serveri

Existujú 3 spôsoby overenia certifikátu na zrušenie: statická validácia CRL, dynamická validácia CRL a validácia OCSP. Pozrime sa na tieto metódy podrobnejšie.

1) Statická kontrola CRL

Pri použití tohto typu overenia musí administrátor servera v konfigurácii zadať názov súboru na lokálnom disku, kde sa nachádza zoznam zrušených certifikátov. Tento zoznam je stiahnutý zo sieťového zdroja certifikačnej autority.

Ak chcete pripojiť CRL v kontajneroch servletov Apache Tomcat a Jboss, pridajte do konektora ssl nasledujúci atribút:

crlFile=”

Nevýhodou tohto spôsobu je nutnosť správcu neustále sledovať aktualizáciu súboru CRL.

2) Dynamická kontrola CRL

Táto metóda vám umožňuje vykonávať kontrolu CRL automaticky. To si vyžaduje, aby bol atribút CRLDistributionPoint špecifikovaný v sekcii rozšírenia certifikátu SSL poskytnutého klientom, ktorý špecifikuje adresu URL, na ktorej sa nachádza zoznam zrušených certifikátov (CRL).

Aby bol klientsky certifikát SSL overený v CRL, musia byť pre Java Virtual Machine nakonfigurované dva parametre. Tieto voľby možno zadať v spúšťacom skripte kontajnera servletu. Pre Apache Tomcat a Jboss v systéme Windows to vyzerá takto:

nastaviť JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.net.ssl.checkRevocation=true

Dcom.sun.security.enableCRLDP=true -Djava.security.debug=certpath

Voľba java.security.debug=certpath vám umožňuje sledovať autentifikáciu certifikátu v konzole spusteného kontajnera.

Nevýhody tejto metódy zahŕňajú oneskorenie prístupu k chránenému zdroju spojené so sťahovaním veľkého súboru CRL.

3) Overenie pomocou protokolu OCSP

OCSP (Online Certificate Status Protocol) bol vyvinutý ako alternatíva k CRL. Táto kontrola je podporovaná technológiou JSSE (Java Secure Socket Extension) od verzie JDK 5. OCSP funguje v spojení s CRL. K CRL sa pristupuje, keď sa počas komunikácie OCSP vyskytne chyba. Ak OCSP určil stav certifikátu SSL, kontrola CRL sa nevykoná. Certifikát môže mať jeden z troch stavov: odvolaný, normálny, neznámy.

Na overenie OCSP musí certifikát obsahovať atribút AuthorityInfoAccess v sekcii rozšírenia s hodnotou adresy URL odpovedača OCSP.

OCSP Responder je softvér umiestnený na sieťovom prostriedku certifikačnej autority, ktorý spracováva požiadavky na určenie stavu certifikátu a vydáva výsledky overovania.

Aby sa virtuálny stroj Java mohol porovnávať s OCSP, musíte nastaviť vlastnosť ocsp.enable=true. Táto vlastnosť je nakonfigurovaná v súbore JAVA_HOME\jre\lib\security\java.security. V tomto súbore môžete zadať adresu OCSP respondéra vo vlastnosti ocsp.responderURL. Táto vlastnosť sa použije, ak v certifikáte SSL nie je žiadna adresa URL odpovede.

Získanie klientskeho SSL certifikátu od certifikačnej autority a konfigurácia webového prehliadača

Existujú situácie, keď server nielen potrebuje preukázať, že je tým, za koho sa vydáva, ale aj keď server vyžaduje, aby klient preukázal svoju identitu digitálnym certifikátom.

Klientsky SSL certifikát môžete získať bez toho, aby ste si sami vygenerovali žiadosť, a to pomocou certifikačnej autority. K tomu je potrebné na webovej stránke CA vyplniť formulár s uvedením mena, priezviska, e-mailovej adresy atď. Na základe týchto údajov bude vygenerovaná žiadosť. V tejto situácii je generovanie tajného kľúča priradené certifikačnej autorite. Po overení údajov a podpísaní žiadosti je klientovi zaslaný súbor obsahujúci tajný kľúč a certifikát, ako aj súbory koreňovej a sprostredkovateľskej certifikačnej autority.

Po prijatí súborov certifikátov musíte nakonfigurovať softvér, ktorý vytvorí zabezpečené pripojenia.

Obr 6 - Schéma získania klientskeho certifikátu SSL

Ako príklad si nainštalujte klientsky SSL certifikát do webového prehliadača spoločnosti Microsoft internet Explorer. Ak to chcete urobiť, vyberte z ponuky Nástroje > Možnosti siete Internet. Na karte „Obsah“ vyberte „Certifikáty ...“.

Obr. 7 - Správa SSL certifikátov v MS Internet Explorer

Spustite Sprievodcu importom certifikátu kliknutím na tlačidlo „Importovať...“. V tomto sprievodcovi zadajte cestu ku koreňovému certifikátu CA. Potom vyberte úložisko dôveryhodných koreňových certifikačných autorít a pridajte doň certifikát.

Podobne sa certifikáty sprostredkovateľských CA pridávajú do úložiska „Sprostredkovateľské CA“ a klientsky certifikát do úložiska „Osobné“.

Obr. 8 - Certifikačný reťazec

Ak chcete zobraziť obsah certifikátu, vyberte požadovaný certifikát SSL a kliknite na tlačidlo „Zobraziť“.

Ak je klientsky certifikát získaný od známej certifikačnej autority, jej SSL certifikáty sú už spravidla obsiahnuté v úložiskách webového prehliadača a nie je potrebné ich pridávať. Stačí pridať klientsky certifikát.

Ak server, s ktorým bude vykonaná interakcia, dostal certifikát, ktorý nie je od bežnej certifikačnej autority, potom by mal byť serverový certifikát zaradený medzi dôveryhodné, aby webový prehliadač nezobrazoval hlásenie o nedôvere k takémuto certifikátu.

Kontrola zrušených certifikátov na klientovi

Ak klient používa webový prehliadač MS Internet Explorer, potom je možné ho nakonfigurovať na kontrolu odoslaných certifikátov v CRL. Ak to chcete urobiť, prejdite na kartu „Rozšírené“ v Možnosti siete Internet a skontrolujte dva atribúty „Skontrolovať zrušenie certifikátov vydavateľa“ a „Skontrolovať zrušenie certifikátov servera“.