SSL – Secure Socket Layer to protokół działający w architekturze klient-serwer i umożliwiający nawiązanie bezpiecznego połączenia z wykorzystaniem certyfikatów. Głównie uwierzytelniane są serwery, jednak nic nie stoi na przeszkodzie, by uwierzytelniać klienta. SSL nie jest żadnym algorytmem szyfrowania. To zestaw standardowych algorytmów i schematów używanych do zapewnienia bezpieczeństwa. Wykorzystuje on algorytmy symetryczne - klucze: szyfrujący oraz deszyfrujący są identyczne - oraz asymetryczne (z kluczem publicznym) – klucz szyfrujący różni się od klucza deszyfrującego, a wyznaczenie drugiego z pierwszego nie jest proste. Klucz szyfrujący jest publicznie znany, a klucz deszyfrujący jest niejawny (klucz prywatny).
O bezpieczeństwie danych w sieci Internet myślało już od początku jej istnienia. W roku 1994 firma Netscape opracowała SSL. Rok później istniała już trzecia wersja SSL. W roku 1996 IETF - Internet Engineering Task Force powołało grupę roboczą TLS - Transport Layer Security. Zadaniem tej grupy było rozwijanie protokołu SSL. W 1999 roku opracowany został standard TLS 1.0 zwany także SSL 3.1. Stany Zjednoczone prowadziły politykę ograniczeń w eksporcie technologii kryptologicznych. Znaczna większość implementacji SSL nie mogła wykorzystywać kluczy symetrycznych dłuższych niż 40 bitów, co dawało rządowym agencjom bezpieczeństwa możliwość złamania szyfrowania przy pomocy ataków typu brute-force. Do takich ataków potrzebna była jednak znaczna moc obliczeniowa. Po kilku latach debat publicznych oraz wielu sprawach sądowych rząd USA złagodził swoje stanowisko co do stosowania większych kluczy. Dziś używa się kluczy nie mniej niż 128 bitowych, a i one powoli wychodzą z użycia (zaleca się używanie 256 bitów).
W roku 2009 odkryto w SSL podatność na ataki w procesie renegocjacji sesji (na przykład po jej przerwaniu). Błąd umożliwiał wysyłanie danych do serwera przed użytkownikiem bez jego wiedzy (atak typu „Man in the middle”). Ponieważ podatność dotyczyła protokołu, a zatem wszystkich implementacji, jedyną metodą obejścia błędu okazało się wyłączenie możliwości renegocjacji sesji w ogóle. Równocześnie zaproponowano poprawkę do specyfikacji w postaci rozszerzenia.
Gdzie można uzyskać certyfikat?
Jest wiele miejsc, w których można pozyskać odpowiedni certyfikat dla serwera, którym zarządzamy. Miejsca te nazywane są centrami (urzędami) certyfikacji (CA - Certificate Authorities). Aby uzyskać certyfikat należy zgłosić się do jednego z CA, wykupić usługę wygenerowania certyfikatu, a następnie przesłać do CA odpowiednie dane serwera. Ceny takich usług zależne są od stopnia szyfrowania, długości klucza i ewentualnego odszkodowania w przypadku złamania szyfru przez hakerów. Przykładem CA może być Comodo – firma znana także z oprogramowania zabezpieczającego komputery.
Jednak dostarczenie odpowiednich danych do CA nie jest proste. Jest to zazwyczaj kilka komend do wykonania po stronie serwera.
By rozwiązać ten problem, eliminując konieczność ręcznej walidacji danych i w 2016 roku, zostało powołane do życia CA Let’s Encrypt. Jest to darmowe centrum certyfikacji zainicjowane przez ISRG - Internet Security Research Group – organizację pożytku publicznego zorientowaną na bezpieczeństwo w Internecie. Let’s Encrypt utrzymywane jest dzięki sponsorom (jak Electronic Frontier Foundation – organizacja pozarządowa założna w USA w 1990 roku, walcząca o swobody obywatelskie, czy Mozilla – wydawca przeglądarki Firefox albo Cisco Systems – producenta sprzętu sieciowego). Let’s Encrypt umożliwia pobranie oprogramowania, które w kilku prostych krokach może zostać zainstalowane na serwerze i za pomocą którego będzie można wygenerować, pobrać oraz zainstalować odpowiedni certyfikat na serwerze. Dodatkowo program potrafi dodać wpisy konfiguracyjne do popularnych serwerów www jak Apache czy nginx. Drugą ważną funkcją aplikacji jest możliwość automatycznego odnawiania certyfikatu, dzięki czemu zawsze będziemy mieć na serwerze aktualny.
Ile to kosztuje?
Ceny certyfikatów uzależnione są od przede wszystkim od rodzaju, czyli stopnia skomplikowania (długości w bitach), ewentualnego odszkodowania oraz czy ma być to certyfikat dla konkretnego serwera, czy dla całej domeny. Różne są także ceny w różnych CA – najtańsze i najprostsze certyfikaty można mieć już od 0,00 zł/rok (zazwyczaj przy wykupieniu domeny), a ceny mogą dochodzić do kilku tysięcy złotych za rok. Certyfikaty trzeba odnawiać i zawsze zapewnić im aktualność. Dzięki temu użytkownicy będą mieć pewność, że łączą się z odpowiednim serwerem (połączenia szyfrowane stosuje coraz więcej instytucji – wszystkie banki, sklepy internetowe itp.).
Aby poprawić bezpieczeństwo w Sieci powołano wspomniane Let’s Encrypt. To centrum certyfikacji oferuje darmowe certyfikaty SSL, które wdrożyć może nawet niedoświadczony użytkownik Internetu. Wystarczy pobrać odpowiednie oprogramowanie (Certbot) i wykonywać polecenia krok po kroku (na przykład wpisać nazwę domeny). Skrypty konfiguracyjne dla serwera www zostaną dodane automatycznie.
Jakie są minimalne wymagania systemowe Certbota i jak go uruchomić?
System, który chcemy zabezpieczyć, powinien być oparty na systemach z rodzin Unix/Linux. Certbot nie działa natywnie z systemami z rodziny Microsoft Windows. Jest jednak możliwość jego uruchomiania przez doświadczonych administratorów (szczegóły znajdują się na blogu Let’s Encrypt).
Po wejściu na stronę Let’s Encrypt należy pobrać wersję dla naszego systemu oraz używanego serwera www. Po wgraniu i uruchomieniu aplikacja prowadzi już krok po kroku, praktycznie nie ma możliwości popełnienia błędu. Każdy z serwerów www różni się w konfiguracji – programiści aplikacji zadbali o to. Program uruchamiany musi być z uprawnianiami administratora, dzięki czemu może utworzyć odpowiednie katalogi systemowe, zmienić konfiguracje serwera www, załadować nowe pliki konfiguracyjne i uruchomić ponownie odpowiednie usługi. Jednym z wpisów jest automatyczne przekierowywanie ruchu www z http:// na https:// - litera „s” zapewnia nas o połączeniu szyfrowanym. Najłatwiej sprawdzić to wchodząc na naszą stronę www. Adres w przeglądarce powinien się zmienić, a przy pasku adresowym powinna pojawić się ikona zielonej kłódki. Po jej kliknięciu wyświetlone zostaną informacje o naszym serwerze, wystawcy certyfikatu oraz dacie jego ważności.
Dlaczego warto?
Instalacja aplikacji Certbot oraz konfiguracja serwera www zajmują około 10 minut. W zamian za poświęcony czas, nasi użytkownicy otrzymają zapewnienie, że dane przez nich otrzymywane są danymi wysłanymi przez nasz serwer. To znacznie zwiększa nie tylko bezpieczeństwo użytkowników, ale także zaufanie do nas – nie tylko do serwera jako takiego, ale firmy, która dba o dane użytkowników. Każdy właściciel firmy, każdy administrator powinien się zastanowić czy warto poświęcić 10 minut dla obopólnej korzyści administratorów i użytkowników oraz poprawy naszego bezpieczeństwa w sieci.
O bezpieczeństwie danych w sieci Internet myślało już od początku jej istnienia. W roku 1994 firma Netscape opracowała SSL. Rok później istniała już trzecia wersja SSL. W roku 1996 IETF - Internet Engineering Task Force powołało grupę roboczą TLS - Transport Layer Security. Zadaniem tej grupy było rozwijanie protokołu SSL. W 1999 roku opracowany został standard TLS 1.0 zwany także SSL 3.1. Stany Zjednoczone prowadziły politykę ograniczeń w eksporcie technologii kryptologicznych. Znaczna większość implementacji SSL nie mogła wykorzystywać kluczy symetrycznych dłuższych niż 40 bitów, co dawało rządowym agencjom bezpieczeństwa możliwość złamania szyfrowania przy pomocy ataków typu brute-force. Do takich ataków potrzebna była jednak znaczna moc obliczeniowa. Po kilku latach debat publicznych oraz wielu sprawach sądowych rząd USA złagodził swoje stanowisko co do stosowania większych kluczy. Dziś używa się kluczy nie mniej niż 128 bitowych, a i one powoli wychodzą z użycia (zaleca się używanie 256 bitów).
W roku 2009 odkryto w SSL podatność na ataki w procesie renegocjacji sesji (na przykład po jej przerwaniu). Błąd umożliwiał wysyłanie danych do serwera przed użytkownikiem bez jego wiedzy (atak typu „Man in the middle”). Ponieważ podatność dotyczyła protokołu, a zatem wszystkich implementacji, jedyną metodą obejścia błędu okazało się wyłączenie możliwości renegocjacji sesji w ogóle. Równocześnie zaproponowano poprawkę do specyfikacji w postaci rozszerzenia.
Gdzie można uzyskać certyfikat?
Jest wiele miejsc, w których można pozyskać odpowiedni certyfikat dla serwera, którym zarządzamy. Miejsca te nazywane są centrami (urzędami) certyfikacji (CA - Certificate Authorities). Aby uzyskać certyfikat należy zgłosić się do jednego z CA, wykupić usługę wygenerowania certyfikatu, a następnie przesłać do CA odpowiednie dane serwera. Ceny takich usług zależne są od stopnia szyfrowania, długości klucza i ewentualnego odszkodowania w przypadku złamania szyfru przez hakerów. Przykładem CA może być Comodo – firma znana także z oprogramowania zabezpieczającego komputery.
Jednak dostarczenie odpowiednich danych do CA nie jest proste. Jest to zazwyczaj kilka komend do wykonania po stronie serwera.
By rozwiązać ten problem, eliminując konieczność ręcznej walidacji danych i w 2016 roku, zostało powołane do życia CA Let’s Encrypt. Jest to darmowe centrum certyfikacji zainicjowane przez ISRG - Internet Security Research Group – organizację pożytku publicznego zorientowaną na bezpieczeństwo w Internecie. Let’s Encrypt utrzymywane jest dzięki sponsorom (jak Electronic Frontier Foundation – organizacja pozarządowa założna w USA w 1990 roku, walcząca o swobody obywatelskie, czy Mozilla – wydawca przeglądarki Firefox albo Cisco Systems – producenta sprzętu sieciowego). Let’s Encrypt umożliwia pobranie oprogramowania, które w kilku prostych krokach może zostać zainstalowane na serwerze i za pomocą którego będzie można wygenerować, pobrać oraz zainstalować odpowiedni certyfikat na serwerze. Dodatkowo program potrafi dodać wpisy konfiguracyjne do popularnych serwerów www jak Apache czy nginx. Drugą ważną funkcją aplikacji jest możliwość automatycznego odnawiania certyfikatu, dzięki czemu zawsze będziemy mieć na serwerze aktualny.
Ile to kosztuje?
Ceny certyfikatów uzależnione są od przede wszystkim od rodzaju, czyli stopnia skomplikowania (długości w bitach), ewentualnego odszkodowania oraz czy ma być to certyfikat dla konkretnego serwera, czy dla całej domeny. Różne są także ceny w różnych CA – najtańsze i najprostsze certyfikaty można mieć już od 0,00 zł/rok (zazwyczaj przy wykupieniu domeny), a ceny mogą dochodzić do kilku tysięcy złotych za rok. Certyfikaty trzeba odnawiać i zawsze zapewnić im aktualność. Dzięki temu użytkownicy będą mieć pewność, że łączą się z odpowiednim serwerem (połączenia szyfrowane stosuje coraz więcej instytucji – wszystkie banki, sklepy internetowe itp.).
Aby poprawić bezpieczeństwo w Sieci powołano wspomniane Let’s Encrypt. To centrum certyfikacji oferuje darmowe certyfikaty SSL, które wdrożyć może nawet niedoświadczony użytkownik Internetu. Wystarczy pobrać odpowiednie oprogramowanie (Certbot) i wykonywać polecenia krok po kroku (na przykład wpisać nazwę domeny). Skrypty konfiguracyjne dla serwera www zostaną dodane automatycznie.
Jakie są minimalne wymagania systemowe Certbota i jak go uruchomić?
System, który chcemy zabezpieczyć, powinien być oparty na systemach z rodzin Unix/Linux. Certbot nie działa natywnie z systemami z rodziny Microsoft Windows. Jest jednak możliwość jego uruchomiania przez doświadczonych administratorów (szczegóły znajdują się na blogu Let’s Encrypt).
Po wejściu na stronę Let’s Encrypt należy pobrać wersję dla naszego systemu oraz używanego serwera www. Po wgraniu i uruchomieniu aplikacja prowadzi już krok po kroku, praktycznie nie ma możliwości popełnienia błędu. Każdy z serwerów www różni się w konfiguracji – programiści aplikacji zadbali o to. Program uruchamiany musi być z uprawnianiami administratora, dzięki czemu może utworzyć odpowiednie katalogi systemowe, zmienić konfiguracje serwera www, załadować nowe pliki konfiguracyjne i uruchomić ponownie odpowiednie usługi. Jednym z wpisów jest automatyczne przekierowywanie ruchu www z http:// na https:// - litera „s” zapewnia nas o połączeniu szyfrowanym. Najłatwiej sprawdzić to wchodząc na naszą stronę www. Adres w przeglądarce powinien się zmienić, a przy pasku adresowym powinna pojawić się ikona zielonej kłódki. Po jej kliknięciu wyświetlone zostaną informacje o naszym serwerze, wystawcy certyfikatu oraz dacie jego ważności.
Dlaczego warto?
Instalacja aplikacji Certbot oraz konfiguracja serwera www zajmują około 10 minut. W zamian za poświęcony czas, nasi użytkownicy otrzymają zapewnienie, że dane przez nich otrzymywane są danymi wysłanymi przez nasz serwer. To znacznie zwiększa nie tylko bezpieczeństwo użytkowników, ale także zaufanie do nas – nie tylko do serwera jako takiego, ale firmy, która dba o dane użytkowników. Każdy właściciel firmy, każdy administrator powinien się zastanowić czy warto poświęcić 10 minut dla obopólnej korzyści administratorów i użytkowników oraz poprawy naszego bezpieczeństwa w sieci.
Komentarze
Prześlij komentarz