apt-get update
apt-get install git
mkdir /home/test; cd /home/test
git clone 'https://github.com/letsencrypt/letsencrypt’
cd letsencrypt/
./certbot-auto certonly -a manual –rsa-key-size 4096 -d dominikroszkowski.pl -d www.dominikroszkowski.pl
Po wszystkim powinien wyświetlić się mniej więcej taki komunikat:
Make sure your web server displays the following content at
http://dominikroszkowski.pl/.well-known/acme-challenge/9U9wPdJ8z….OO1WD_kA before continuing:
9U9wPdJ8zlRyH7A3BckxOFyVr_7K6V…..l7JorGYPBDnItItiZS-uzvhrQiWq58x5Gw84
Tworzymy odpowiedni plik w katalogu http://dominikroszkowski.pl/.well-known/acme-challenge/ (np. za pomocą klienta FTP), naciskamy enter i czekamy na zakończenie weryfikacji.
Update: od jakiegoś czasu skrypt prosi o utworzenie dwóch plików zamiast jednego.
Wynikiem działania będą pliki certyfikatu i klucza prywatnego, które możemy skopiować ręcznie z katalogu /etc/letsencrypt/live/dominikroszkowski.pl:
cert.pem
chain.pem
fullchain.pem
privkey.pem
W przypadku serwera na Nazwa.pl interesują nas pliki fullchain.pem (certyfikat) oraz privkey.pem (klucz prywatny). Ze względu na problemy z kopiowaniem plików z dockera skopiowałem je z konsoli i wkleiłem do panelu administracyjnego w active.admin.
cat /etc/letsencrypt/live/dominikroszkowski.pl/fullchain.pem
cat /etc/letsencrypt/live/dominikroszkowski.pl/privkey.pem
Po kilku minutach sprawdziłem, czy certyfikat jest wykrywany przez SSL Labs i zmieniłem ustawienia WordPressa dodając ‘s’ do protokołu http.
http z s
Na początku Chrome nie chciał uznać bezpieczeństwa mojej witryny, ale po sprawdzeniu jej za pomocą narzędzia whynopadlock.com odkryłem, że kilka grafik miało swoje źródła w formie rozpoczynającej się od http://. Po podmianie linków wreszcie ucieszył mnie widok zielonej kłódki na pasku adresu.
Plan na przyszłość: zautomatyzować proces z poziomu Raspberry Pi lub skryptu na Windowsie.
PS Warto jeszcze wymusić przekierowanie odwiedzających z http na https za pomocą wpisu w .htaccess. Na serwerze Apache pomiędzy <IfModule mod_rewrite.c> należy dodać:
<IfModule mod_rewrite.c>
RewriteEngine On
(…)
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://dominikroszkowski.pl/$1 [R,L]
</IfModule>