Преводач

2/04/2014

SSL сертификатите – сигурност при комуникацията


За да се решат проблемите, които биха могли да застрашат сигурното предаване на конфиденциална информация в Интернет, са създадени различни криптиращи протоколи. Най-разпространеният от тях е SSL (Secure Sockets Layer) и по-съвременната му версия TLS (Transport Layer Security).

Едно от най-разпространените приложения на тези протоколи е в уеб браузърите, при използването на HTTPS или Hypertext Transfer Protocol Secure. Когато потребителят достъпва Интернет страница чрез HTTPS, се осигурява криптирана връзка между уеб сървъра (сайта) и браузъра на потребителя.

За осъществяването на сигурна криптирана връзка между клиента (уеб браузър) и сървъра е необходимо на сървъра да бъде инсталиран цифров сертификат, или придобилото популярност – SSL сертификат. Не всеки SSL сертификат, обаче се разпознава от уеб браузърите и за да бъде признат за валиден даден сертификат, той задължително трябва да отговаря на следните условия:
Датата на изтичане на сертификата да е след текущата дата. Всички сертификати се издават с определен срок на валидност. Ако сертификатът е изтекъл, то той се приема за невалиден и на посетителите на сайта се показва предупредително съобщение;
Името на домейна (сайта), който се опитваме да посетим, използвайки сигурна връзка, трябва да съвпада с това, което е зададено в сертификата. В случай на несъвпадение, сертификатът се приема за невалиден и на потребителя се показва предупредително съобщение.

Как ни защитава SSL?


Когато се заговори за сигурност на връзката повечето хора се сещат единствено за криптиране на данните при комуникацията между браузъра и сървъра. Това обаче е последната фаза на SSL комуникацията. Първото и основно нещо, което прави SSL защитата е да подсигури самоличността на сървъра, с който комуникира клиента (браузъра). От тук се появяват и различните нива на валидация и различните видове сертификати.

Втората и не по-маловажна част на подсигуряване на връзката е криптирането на данните. SSL сертификатът е файл, инсталиран на уеб сървъра, на който се намира сайта. Сертификатът се състои от публичен ключ и допълнителна информация. Допълнителната информация може да бъде примерно името на домейна, името на фирмата, друга фирмена информация и т.н. в зависимост от типа на самия SSL сертификат, като цялата информация е закодирана в сертификата.

Публичният ключ се съдържа в сертификата и се изпраща на браузъра, след което браузърът проверява, дали сертификатът е валиден и верифицира, дали уеб сървърът е точно този, за който се представя.

По-долу ще представим опростено описание на стъпките, през които минава една SSL/TLS сесия между браузъра и сървъра:

1. Браузърът се свързва със сървъра.

2. Сървърът изпраща своя сертификат към браузъра.

Браузърът прави проверка на сертификата – дали е издаден от валиден сертифициращ орган, дали срокът на валидност на сертификата не е изтекъл, дали името на сайта, което е закодирано в сертификата, отговаря на реалният адрес, който е зареден в браузъра.

3. След като проверките минат успешно браузърът и сървърът определят какъв симетричен криптографски алгоритъм да използват за комуникация, примерно AES, RC4, 3DES и т.н., след което браузърът генерира произволен код (ключ), който криптира с публичния ключ на сървъра и изпраща криптирания код към сървъра.

4. След като сървърът получи кода браузърът вече може да прави заявки към сървъра, като използва за криптиране кода и криптографският алгоритъм, определен със сървъра на предходната стъпка.


Как работи SSL

По този начин между браузъра и сървъра се установява сесия, в която данните протичат криптирани и могат да бъдат декодирани (разчетени) единствено от уеб сървъра и съответния браузър.
Кога е необходимо да защитите сайта си със SSL сертификат?

Ако е необходимо посетителите на вашия сайт да въвеждат лична и/или конфиденциална информация (платежни данни, информация за профили и акаунти, пароли за достъп, данни от кредитни карти, банкови сметки, документи за самоличност и т.н.) е на практика задължително да имате инсталиран валиден SSL сертификат и въвеждането на информацията да става чрез SSL протокола.

SSL сертификат е необходим и при всички външни страници, скриптове и уеб приложения, които се зареждат през Facebook.
Кой сертификат е подходящ за вашия сайт?

Сертификатите, които може да се инсталират, се разделят на две категории:

1. Self Sign (безплатен)

Това са сертификати, които не са издадени от „Certificate Authority“ и при зареждането на сайта, браузърите показват съобщение, че сайтът може да съдържа потенциален риск за данните на клиента. Този тип сертификати обикновено се използват по време на развоя и тестването на уеб приложението, но не са добър избор за реална работа на сайта.

2. Издадени от доверен оторизиращ орган (Certificate Authority)

Сертификатът се издава от доверен оторизиращ орган (Certificate Authority), каквито са GeoТrust или Symantec (VeriSign), и при зареждането на сайта клиентът вижда, че сертификатът е валиден. Списъкът с всички доверени оторизиращи органи е достъпен във всеки един от съвременните уеб браузъри.

Сертификатите, които се издават от Certificate Authority, се различават и по ниво на валидация, като биват следните типове:
Валидация по домейн
Валидация по организация
Разширена валидация (Extended Validation)

Сертификатът трябва да бъде подбран спрямо целите и нуждите на сайта ви, съобразен с вашите лични предпочитания по отношение на това дали верифицирате по домейн или организация. При вашия избор е добре да съобразите, дали сертификатът е подходящ за мобилна версия на вашия сайт, ако имате такава, и дали е валиден при домейни на кирилица.
Как става издаването на SSL сертификат и какво е необходимо?

За да се издаде SSL сертификат е необходимо:
1. Да изберете точното име на домейн, с който ще използвате сертификата. Този детайл е много важен при конфигурацията, защото за SSL сертификатите superhosting.bg е различен от www.superhosting.bg. „WWW“ се е наложил като част от името – т.е. свикнaли сме да изписваме домейна с „www.“ и без „www.“, но технически това са различни домейни, тъй като „www.“ е поддомейн и един сертификат не би могъл да обслужва и двата адреса. Разбира се няма проблем сертификатът да се издаде за един от двата адреса и след това, за страниците за които ще се криптира връзката, в кода на сайта линковете да са към съответния адрес, позволяващ криптирането на връзката и ползването на сертификата.
2. Да имате създаден валиден имейл към домейна (един често използван вариант е ssladmin@yourdomain.com) и да имате достъп до него.
3. Да въведете данните, които ще използвате за сертификата – име на фирма, адрес, имейл, телефон.
4. Да се генерира и изпрати Certificate signing request (CSR).

За обикновените сертификати, за които се удостоверява само собствеността върху домейна, не е необходима друга информация и издаването на сертификата отнема от няколко минути до няколко часа.

При издаването на сертификат с разширена валидация (Extended Validation) има някои особености. Първите стъпки са както при валидацията по домейн, т.е. проверява се, че сте административно лице на домейна, което става с изпращане на имейл до конкретен адрес, асоцииран с домейна.

Следващата стъпка е верификация на компанията (юридическото лице), за която е заявен сертификата. Този процес включва проверка, дали фирмата е регистрирана в съответната държава, като за тази цел се изисква официален документ. За България официалният документ е актуалното състояние на фирмата. Изпращането на документа на английски език, т.е. предваритело преведен, доста съкращава процедурата по издаването на сертификата. В изискванията се включва и условието компанията да посочи адрес на офис и фирмен телефон.

Ако заявката не е подадена от управителя на фирмата, се изисква и телефон за връзка, за да бъде установена идентичността на заявителя и обвързаността му с фирмата, за която се издава сертификата. Цялата процедура отнема от 3 дни до няколко седмици. За всяка компания може да бъдат извършени проверки на различни нива, като това зависи от преценката на издателя на сертификата.
Защо да изберем сертификат с разширена валидация (EV)?

SSL сертификат с разширена валидация (Extended Validation SSL) е лесен и надежден начин да се създаде доверие у посетителите на вашия сайт. Само при Extended Validation SSL сертификати уеб браузърите показват зелена адресна лента с името на организацията, която е собственик на SSL сертификата, като по този начин посетителят на сайта веднага може да се увери, че попаднал на правилния сайт и че този сайт предоставя максимална защита на данните и личната информация на посетителя.

Няма коментари:

Публикуване на коментар