Instalacja i konfiguracja serwera Apache / Nginx z SSL i HTTP/2
Linux

Instalacja i konfiguracja serwera Apache / Nginx z SSL i HTTP/2

Instalacja i konfiguracja serwera Apache / Nginx z SSL i HTTP/2

Serwer WWW to kluczowy element każdego systemu działającego w Internecie. Najpopularniejsze rozwiązania — Apache i Nginx — oferują nie tylko wydajną obsługę stron internetowych, ale także pełne wsparcie dla SSL/TLS oraz nowoczesnego protokołu HTTP/2, który zwiększa szybkość i bezpieczeństwo transmisji danych. W tym artykule krok po kroku przeprowadzimy proces instalacji i konfiguracji obu serwerów w systemie Linux (Ubuntu/Debian).


🔧 Instalacja serwera Apache

Aby zainstalować Apache, wykonaj poniższe polecenia:

sudo apt update
sudo apt install apache2 -y

Po zakończeniu instalacji sprawdź, czy usługa działa poprawnie:

sudo systemctl status apache2

Jeśli status to active (running), oznacza to, że serwer jest uruchomiony i dostępny lokalnie pod adresem http://localhost/.


🔐 Włączenie obsługi SSL/TLS w Apache

Aby skonfigurować szyfrowane połączenie HTTPS, musimy włączyć moduły SSL:

sudo a2enmod ssl
sudo systemctl restart apache2

Następnie wygeneruj certyfikat samopodpisany (dla testów) lub użyj darmowego certyfikatu Let’s Encrypt.

🔸 Certyfikat samopodpisany:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/ssl/private/apache-selfsigned.key \
-out /etc/ssl/certs/apache-selfsigned.crt

Dodaj konfigurację HTTPS do wirtualnego hosta:

sudo nano /etc/apache2/sites-available/default-ssl.conf

Wewnątrz sekcji <VirtualHost _default_:443> dodaj:

SSLEngine on
SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt
SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key

Zapisz zmiany i aktywuj konfigurację:

sudo a2ensite default-ssl.conf
sudo systemctl reload apache2

⚙️ Włączenie HTTP/2 w Apache

HTTP/2 poprawia wydajność poprzez multiplexing, kompresję nagłówków i lepsze zarządzanie połączeniami. Włącz go poleceniem:

sudo a2enmod http2
sudo systemctl restart apache2

Aby upewnić się, że działa, sprawdź nagłówki HTTP:

curl -I -s https://localhost | grep HTTP

Powinieneś zobaczyć HTTP/2.

 

Czytaj  Jak zaszyfrować cały dysk w Windows, macOS i Linux: Szczegółowy przewodnik
Instalacja i konfiguracja serwera Apache / Nginx z SSL i HTTP/2
Instalacja i konfiguracja serwera Apache / Nginx z SSL i HTTP/2

🌐 Instalacja i konfiguracja serwera Nginx

Dla wielu administratorów Nginx jest lżejszą i szybszą alternatywą dla Apache. Zainstaluj go:

sudo apt install nginx -y

Uruchom i sprawdź status:

sudo systemctl enable --now nginx
sudo systemctl status nginx

🔒 SSL w Nginx (Let’s Encrypt)

Zainstaluj klienta Certbot:

sudo apt install certbot python3-certbot-nginx -y

Następnie uruchom automatyczną konfigurację SSL:

sudo certbot --nginx

Certbot automatycznie:

  • wygeneruje certyfikat Let’s Encrypt,
  • skonfiguruje HTTPS,
  • ustawi automatyczne odnawianie.

⚡ Włączenie HTTP/2 w Nginx

W pliku konfiguracyjnym serwera (/etc/nginx/sites-available/default), w sekcji listen dodaj:

listen 443 ssl http2;

Zrestartuj usługę:

sudo systemctl restart nginx

🧩 Testowanie i diagnostyka

Sprawdź, czy HTTPS działa:

curl -I https://twojadomena.pl

Aby upewnić się, że używany jest HTTP/2, użyj polecenia:

curl -I -s --http2 https://twojadomena.pl | grep HTTP

Dodatkowo możesz zweryfikować konfigurację SSL:

sudo nginx -t
sudo apache2ctl configtest

🧠 Dobre praktyki bezpieczeństwa

  • Używaj certyfikatów Let’s Encrypt – są darmowe i automatycznie odnawiane.
  • Włącz HSTS (HTTP Strict Transport Security), aby wymusić połączenia HTTPS.
  • Regularnie aktualizuj oprogramowanie:
    sudo apt update && sudo apt upgrade -y
    
  • Ogranicz dostęp do katalogów i logów serwera.

🔗 Przydatne poradniki na Netbe.pl


🏁 Podsumowanie

Konfiguracja Apache lub Nginx z SSL i HTTP/2 to obowiązkowy krok w kierunku bezpieczeństwa i wydajności. Włączenie szyfrowania HTTPS nie tylko chroni dane użytkowników, ale również wpływa pozytywnie na SEO i zaufanie odwiedzających. HTTP/2 natomiast pozwala w pełni wykorzystać możliwości współczesnych przeglądarek i łączy internetowych.

🔹 Niezależnie, który serwer wybierzesz — Apache dla elastyczności czy Nginx dla wydajności — oba oferują pełne wsparcie dla nowoczesnych technologii sieciowych.

Czytaj  Instalacja Ubuntu: Kompleksowy przewodnik

 

Polecane wpisy
XFS
XFS

XFS XFS to 64-bitowy system plików journaling o wysokiej wydajności, opracowany przez Silicon Graphics Inc. (SGI). Został po raz pierwszy Czytaj dalej

Jak skonfigurować serwer Samba w systemie Linux Debian
Jak skonfigurować serwer Samba w systemie Linux Debian

Jak skonfigurować serwer Samba w systemie Linux Debian Serwer Samba to popularne narzędzie umożliwiające udostępnianie plików i drukarek w sieci, Czytaj dalej