Instalujemy narzędzie do certyfikatów
Certbot to program, który wystawia i odnawia certyfikaty Let's Encrypt. Na Debianie 12 instalujemy go w dwóch krokach.
Najpierw odśwież listę pakietów:
sudo apt update
Potem zainstaluj Certbota razem z wtyczką do Apache:
sudo apt install certbot python3-certbot-apache
Na koniec sprawdź, czy instalacja się udała:
certbot --version
Jeśli zobaczysz coś w stylu certbot 2.x.x — Certbot jest zainstalowany i możemy iść dalej, jedna komenda na raz.
Certyfikat już masz
Prawdopodobnie masz już wystawiony certyfikat Let's Encrypt dla domeny mikolajfiuk.pl — Certbot pokazywał Certificate not yet due for renewal. Zanim jednak zaczniesz z niego korzystać w configu, sprawdź dokładnie jakie domeny obejmuje:
sudo certbot certificates
Sprawdź w wyniku pole Domains: — powinno zawierać mikolajfiuk.pl. Dopiero wtedy masz pewność, że certyfikat pasuje do configu poniżej.
Jeden certyfikat obsługuje wiele portów naraz — 5564, 6070, 443 i każdy inny, o ile wszystkie działają pod tą samą domeną z certyfikatu.
SSL w Apache włączony
Moduł SSL w Apache jest wymagany, żeby serwer w ogóle potrafił obsłużyć szyfrowane połączenia. U Ciebie to już zrobione:
sudo a2enmod ssl
Apache odpowiedział Module ssl already enabled — czyli wszystko gotowe do dalszej pracy.
Zabezpieczamy port 5564
Port 5564 wskazuje na katalog /var/www/orginlany, a jego konfiguracja żyje w:
Zanim cokolwiek zmienimy — zawsze robimy kopię. Jeśli coś pójdzie nie tak, wracamy do działającej wersji w sekundę.
sudo cp /etc/apache2/sites-enabled/orginlany.conf /etc/apache2/sites-enabled/orginlany.conf.bak
Podmieniamy zawartość pliku
Otwórz plik w edytorze:
sudo nano /etc/apache2/sites-enabled/orginlany.conf
Usuń całą zawartość i wklej dokładnie to:
<VirtualHost *:5564> ServerName mikolajfiuk.pl SSLEngine on SSLCertificateFile /etc/letsencrypt/live/mikolajfiuk.pl/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/mikolajfiuk.pl/privkey.pem DocumentRoot /var/www/orginlany <Directory /var/www/orginlany> AllowOverride All Require all granted </Directory> # logi błędów i dostępu ErrorLog ${APACHE_LOG_DIR}/orginlany_error.log CustomLog ${APACHE_LOG_DIR}/orginlany_access.log combined </VirtualHost>
Zapisywanie w nano:
Sprawdzamy zanim odpalimy
Jeszcze nie restartuj Apache. Najpierw sprawdź, czy nie ma błędu składni:
sudo apache2ctl configtest
Poprawny wynik to Syntax OK. Jeśli widzisz cokolwiek innego — nie idź dalej, wróć i sprawdź plik konfiguracyjny.
Przeładowujemy Apache
Dopiero po Syntax OK wykonaj:
sudo systemctl reload apache2
reload oznacza w skrócie: „Apache, przeczytaj konfigurację jeszcze raz, bez zrywania aktywnych połączeń”.
Sprawdzamy w przeglądarce
Otwórz w przeglądarce:
Jeszcze go nie ruszamy
Uwaga, to nie będzie kopia configu z 5564. Twój 6070.conf ma w środku ProxyPass / http://127.0.0.1:6070/, a jednocześnie Apache sam nasłuchuje na tym samym porcie 6070 — to potencjalna pętla proxy (Apache przekierowuje ruch sam do siebie). Zanim dodamy tu SSL, trzeba to najpierw rozdzielić: albo Apache nasłuchuje na 6070 i serwuje treść bezpośrednio (jak przy 5564), albo działa jako proxy do innego procesu na innym porcie — ale nie oba naraz na tym samym numerze.
Bez paniki, bez przypadkowych komend
Nie klikaj i nie wpisuj losowych rzeczy licząc na cud. Wklej mi po prostu wynik:
sudo apache2ctl configtest
albo dokładny komunikat błędu z przeglądarki — i jedziemy dalej krok po kroku.