10 najlepszych praktyk w celu zabezpieczenia i wzmocnienia serwera WWW Apache

Zadbaj o solidne zabezpieczenie swojego serwera WWW Apache, stosując sprawdzone praktyki, które zwiększą ochronę Twojej aplikacji internetowej.

Serwer WWW stanowi fundament każdej aplikacji internetowej. Niewłaściwe ustawienia lub pozostawienie konfiguracji domyślnej może nieumyślnie ujawnić wrażliwe dane, stwarzając realne zagrożenie.

Jako właściciel witryny lub administrator, regularne przeprowadzanie analiz pod kątem potencjalnych zagrożeń cybernetycznych jest niezbędne, aby móc podjąć działania obronne, zanim zrobią to niepowołane osoby.

Przejdźmy teraz do kluczowych ustawień, które pozwolą Ci utrzymać Twój serwer WWW Apache w dobrej kondycji.

Pełną konfigurację znajdziesz w pliku httpd.conf Twojej instancji Apache.

Pamiętaj: przed wprowadzeniem jakichkolwiek zmian, wykonaj kopię zapasową pliku konfiguracyjnego. W razie niepowodzenia, przywrócenie pierwotnych ustawień będzie znacznie łatwiejsze.

Wyłączenie śledzenia zapytań HTTP

Standardowo opcja TraceEnable jest aktywna, umożliwiając działanie metody TRACE, która dopuszcza dołączenie treści zapytania w przesyłanym żądaniu.

Dezaktywacja TraceEnable sprawi, że serwer główny oraz mod_proxy będą zwracać błąd 405 (Metoda niedozwolona) do klienta.

Aktywna funkcja TraceEnable otwiera furtkę do śledzenia międzydomenowego, co może umożliwić cyberprzestępcom kradzież danych z plików cookie.

Rozwiązanie

Aby wyeliminować to ryzyko, należy wyłączyć metodę TRACE HTTP w konfiguracji Apache.

Zrobisz to, modyfikując lub dodając poniższą dyrektywę w pliku httpd.conf serwera WWW Apache.

TraceEnable off

Uruchomienie serwera jako dedykowany użytkownik i grupa

Standardowo Apache działa w oparciu o użytkownika „nobody” lub „daemon”.

Nigdy nie ustawiaj użytkownika (lub grupy) jako root, chyba że jesteś w pełni świadomy konsekwencji i potencjalnego niebezpieczeństwa.

Rozwiązanie

Najlepszym rozwiązaniem jest uruchamianie Apache na osobnym, dedykowanym koncie, innym niż root. Zmodyfikuj odpowiednie dyrektywy użytkownika i grupy w pliku httpd.conf serwera WWW Apache.

User apache
Group apache

Dezaktywacja podpisu serwera

Domyślnie, opcja wyłączenia pomija linię stopki.

Aktywacja tej opcji powoduje dodanie wiersza z numerem wersji serwera i nazwą serwera, który obsługuje dany host wirtualny.

Rozwiązanie

Zaleca się wyłączenie podpisu serwera, aby uniknąć ujawniania wersji używanego Apache.

ServerSignature Off

Ukrywanie informacji o serwerze

Ta dyrektywa steruje zawartością pola nagłówka odpowiedzi serwera, które jest przesyłane do klientów, decydując, czy mają tam być zawarte informacje o typie systemu operacyjnego i wkompilowanych modułach.

Rozwiązanie

ServerTokens Prod

Ograniczenie dostępu do określonej sieci lub adresu IP

Jeśli chcesz, aby Twoja strona była dostępna tylko dla określonego adresu IP lub sieci, możesz edytować konfigurację katalogu witryny w pliku httpd.conf.

Rozwiązanie

W dyrektywie Allow podaj zakres adresów sieciowych.

<Directory /yourwebsite>
Options None
AllowOverride None
Order deny,allow
Deny from all
Allow from 10.20.0.0/24
</Directory>

Możesz również podać konkretny adres IP w dyrektywie Allow.

<Directory /yourwebsite>
Options None
AllowOverride None
Order deny,allow
Deny from all
Allow from 10.20.1.56
</Directory>

Używanie wyłącznie protokołu TLS 1.2

Protokoły SSL 2.0, 3.0, TLS 1 oraz 1.1 wykazują pewne podatności kryptograficzne.

Potrzebujesz wskazówek dotyczących konfiguracji protokołu SSL? Sprawdź ten przewodnik.

Rozwiązanie

SSLProtocol -ALL +TLSv1.2

Wyłączenie listingu katalogów

W sytuacji, gdy w katalogu witryny brakuje pliku index.html, użytkownik odwiedzający stronę zobaczy na ekranie wszystkie pliki i podkatalogi (efekt podobny do polecenia ls -l).

Rozwiązanie

Aby wyłączyć listowanie zawartości katalogów, ustaw wartość dyrektywy Option na „None” lub „-Indexes”.

<Directory />
Options None
Order allow,deny
Allow from all
</Directory>

LUB

<Directory />
Options -Indexes
Order allow,deny
Allow from all
</Directory>

Usunięcie zbędnych modułów DSO

Przejrzyj konfigurację i usuń niepotrzebne moduły DSO.

Po instalacji wiele modułów jest domyślnie aktywnych. Możesz wyłączyć te, których nie wykorzystujesz.

Wyłączenie szyfrowań zerowych i słabych

Zezwól jedynie na używanie silnych algorytmów szyfrowania. W ten sposób zamkniesz furtki dla prób negocjacji niższych poziomów szyfrowania.

Rozwiązanie

SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM

Aktualność oprogramowania

Apache jest rozwijanym oprogramowaniem open source, dlatego najprostszym sposobem na zwiększenie jego bezpieczeństwa jest regularna aktualizacja do najnowszej wersji. Każda nowa wersja zawiera poprawki i łatki bezpieczeństwa. Zawsze dbaj o to, by Twoje oprogramowanie było aktualne.

Powyżej przedstawiliśmy jedynie kilka podstawowych konfiguracji. Jeśli szukasz bardziej szczegółowych informacji, zapoznaj się z moim obszernym przewodnikiem krok po kroku, dotyczącym bezpieczeństwa i utwardzania.

Podobał Ci się ten artykuł? Zachęcamy do dzielenia się nim z innymi!


newsblog.pl