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  Ubuntu – Kompletny przewodnik po konfiguracji VPN w systemie Ubuntu
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  Analiza zabezpieczeń urządzeń IoT i ich podatności na ataki

 

Polecane wpisy
Wprowadzenie do kryptografii: podstawowe pojęcia i cele szyfrowania
Wprowadzenie do kryptografii: podstawowe pojęcia i cele szyfrowania

🔐 Wprowadzenie do kryptografii: podstawowe pojęcia i cele szyfrowania Kryptografia to dziedzina matematyki i informatyki, która zajmuje się tworzeniem oraz Czytaj dalej

Najczęstsze błędy podczas instalacji Linuxa – Kompendium problemów i ich rozwiązań
Najczęstsze błędy podczas instalacji Linuxa – Kompendium problemów i ich rozwiązań

Najczęstsze błędy podczas instalacji Linuxa – Kompendium problemów i ich rozwiązań Instalacja systemu Linux – choć w ostatnich latach znacząco Czytaj dalej

Marek "Netbe" Lampart Inżynier informatyki Marek Lampart to doświadczony inżynier informatyki z ponad 25-letnim stażem w zawodzie. Specjalizuje się w systemach Windows i Linux, bezpieczeństwie IT, cyberbezpieczeństwie, administracji serwerami oraz diagnostyce i optymalizacji systemów. Na netbe.pl publikuje praktyczne poradniki, analizy i instrukcje krok po kroku, pomagając administratorom, specjalistom IT oraz zaawansowanym użytkownikom rozwiązywać realne problemy techniczne.