Już jutro (5 lipca 2018) mogą zacząć się złe zmiany w europejskim internecie. Za czasów ACTA społeczności internetowej udało się wygrać. Teraz także jest to możliwe dlatego na początek zapoznajcie się z oświadczeniem wydanym przez Wikipedię oraz materiałami jakie zebrała:
dowolny adblocker, ja używam uBlock Origin (Firefox, Chrome, Opera, Edge), który już z podstawowym zestawem filtrów zapewni nam dość dużą ochronę przed zagrożeniami i śledzeniem w sieci,
Privacy Badger od Electronic Frontier Foundation (Firefox, Chrome, Opera), dodatek ten uczy się co i jak nas szpieguje i z czasem zaczyna takie strony odłączać :),
Ghostery (najlepiej zamiennie z Privacy Badgerem) (Firefox, Chrome, Opera), dodatek ten skupia się na blokowaniu śledzenia
i na końcu absolutny mus dla każdego z Firefoxem, Facebook Container (Firefox) od samej Mozilli, który izoluje Facebooka od reszty stron w naszej przeglądarce 🙂
Usługa wyszła już z fazy beta, nadal jest w fazie beta jednak działa naprawdę dobrze i otrzymanie certyfikatu przebiega bez żadnych problemów.
Aby z niej skorzystać trzeba pobrać klienta i postąpić zgodnie z jego instrukcją. Niestety aktualnie nie ma paczki na Debiana Jessie więc postanowiłem użyć jednego z alternatywnych klientów, który jest skryptem w bashu i jest prosty jak „konstrukcja cepa” – https://github.com/Neilpang/acme.sh
Używając powyższego skryptu można wszystko zrobić dosłownie w 5 minut :). Wspomnę tylko, że skrypt ma instalator (pkt. 1 lub 2 ze strony na githubie) i inne ułatwiacze ale ja lubię mieć kontrolę nad tym co się dzieje więc z nich nie korzystałem.
Na wstępie ustalmy do celów poradnika, że wszystko będziemy wykonywać z root’a (oczywiście nie trzeba ale zakładamy tak w celu uproszczenia) oraz:
/root/.acme.sh/acme.sh – miejsce składowania skryptów klienta
mojastrona.pl – strona, dla której chcemy uzyskać certyfikat
/mnt/www/mojastrona.pl – katalog na dysku naszej strony
/etc/apache2 – lokalizacja apache wraz z plikami konfiguracji
Pierwszym naszym krokiem powinno być pobranie wymaganych plików klienta. W tym celu przechodzimy (zakładamy w razie potrzeby) do katalogu
/root/.acme.sh/acme.sh
i wykonujemy komendę
git clone https://github.com/Neilpang/acme.sh
Jeśli nie mamy gita to go instalujemy lub wchodzimy na stronę projektu, ręcznie pobieramy pliki i je wypakowujemy.
Następnym krokiem (dla wygody tylko) jest zrobienie symlinka z katalogu gdzie będą nasze certyfikaty do katalogu apache. Wykonujemy to komendą
ln -s /root/.acme.sh/ /etc/apache2/letsencrypt
Po wykonaniu powyższych kroków oraz upewnieniu się, że nasza strona jest dostępna z internetu należy pobrać certyfikat
Jeśli nasza strona była dostępna z internetu to powinniśmy otrzymać certyfikat, a potrzebne pliki zapisane zostaną w katalogu
/root/.acme.sh/mojastrona.pl/
Pozostało nam już tylko poprawić konfigurację apache aby wskazać nasze certyfikaty (dobry poradnik jak skonfigurować SSL w apache znajduje się tu – krok 3 i 4). W tym celu w pliku konfiguracyjnym należy wskazać tak aby opcja
SSLCACertificateFile kierowała do ca.cer
SSLCertificateFile kierowała do pliku .cer
SSLCertificateKeyFile kierowała do pliku .key
O tego momentu strona powinna zgłaszać się z certyfikatem od Let’s Encrypt.
Dodatkowo warto ustawić automatyczne odnawianie certyfikatów gdyż mają one ważność 90 dni.
W tym celu najprościej stworzyć wykonywalny skrypt, np.
acme.sh_cron
z zawartości np.
#!/bin/sh
/root/.acme.sh/acme.sh/acme.sh cron >> /var/log/le-renew.log
service apache2 reload
i przenieść go do
/etc/cron.daily
Jak widać proces nie jest przesadnie skomplikowany i po wstępnej konfiguracji raczej banalny. Docelowo prawdopodobnie i tak wybiorę oficjalnego klienta ale pierw musi w repozytoriach Debiana Jessie zostać udostępniona oficjalna paczka.
Powodzenia w szyfrowaniu! 🙂
EDIT:
Skrypt zmienił nazwę więc powyższy opis został odpowiednio dostosowany.
Zapewne spora część z Was ma lub miała adres e-mail założony tylko po to aby gdzieś go użyć i nie narazić na SPAM głównej skrzynki. Nie jest jeszcze tak źle jeśli pamiętamy namiary na niego ale często powstaje on na zasadzie uderzenia w klawiaturę (podobnie jak hasło do niego) i mamy potem adres w stylu
sd76fd8sfsw0@e-mail.pl
Zapamiętanie tego graniczy z cudem i przy następnej okazji znów zakładamy następny mail i tracimy cenne minuty.
Powstały jednak usługi, które ten proces mogą znacznie ułatwić. Są to tymczasowe adresy e-mail ważne od parunastu minut do zamknięcia okna przeglądarki czy przeładowania strony. Usług takich jest pełno (wystarczy odpowiednio zapytać Google) jednak mi najbardziej odpowiadają dwie z nich:
Zasada działania ich jest banalnie prosta. Wchodzimy na stronę, kopiujemy wygenerowany adres e-mail i używamy go gdzie potrzebujemy. Wszelka poczta dostarczona na niego pojawi się nam na ekranie i możemy ją przeczytać.
Pierwszy z wymienionych przeze mnie (ThrowAwayMail.com) działa dokładnie w taki sposób. Maile możemy odbierać do końca sesji przeglądarki.
Drugi jest trochę bardziej zaawansowany. Maile odbierają się automatycznie do momentu odświeżenia okna przeglądarki. Dodatkowo możemy zapisać sobie klucz pozwalający odzyskać dostęp do adresu (niestety nie do maili) oraz możemy ustawić przekierowanie na swój prawdziwy mail (zawsze możemy potem z tego przekierowania zrezygnować).
Powyższe usługi są proste ale takie mają być. Wchodzimy na stronę, używamy maila i nie martwimy się spamem bo mail znika po paru godzinach.
Za kilka dni (dokładnie 03.12.2015) rusza otwarta beta ciekawego projektu Let’s Encrypt. Pozwoli on całkowicie za darmo otrzymać każdemu zainteresowanemu darmowy i co najważniejsze uważany za zaufany przez przeglądarki certyfikat (CA).
Mam nadzieje, że pomoże on podnieść bezpieczeństwo internetu i znacząco przyczyni się do popularyzacji stron działających po https gdyż zniknie podstawowy argument „ale to kosztuje”.