Zabezpiecz WordPress: Ukryj informacje o serwerze i PHP w nagłówkach

Jak ukryć wersję PHP w nagłówkach; Usuń informacje o serwerze z nagłówków HTTP; Ukryj wersję Apache w nagłówkach odpowiedzi; Wyłącz podpis serwera w WordPressie; Zabezpiecz WordPressa, ukrywając informacje o PHP; Usuń niepożądane nagłówki Apache; Ukryj informacje o serwerze w nagłówkach HTTP; Wyłącz ujawnianie wersji PHP; Edytuj plik .htaccess, aby ukryć informacje o serwerze; Chroń WordPressa, ukrywając szczegóły serwera;

Objaśnienie

Aby zwiększyć bezpieczeństwo swojej witryny WordPress, możesz ukryć niektóre szczegóły dotyczące serwera i PHP, które zazwyczaj są widoczne w nagłówkach HTTP. Pomaga to w zapobieganiu potencjalnym atakującym przed zbyt dużą wiedzą na temat konfiguracji twojego serwera.

Usuń wersję PHP: Pierwsza funkcja usuwa nagłówek 'X-Powered-By', który zazwyczaj pokazuje wersję PHP. Można to zrobić za pomocą header_remove('X-Powered-By').

Usuń niechciane nagłówki: Inna funkcja służy do usunięcia kilku nagłówków, takich jak 'Server', 'X-AspNet-Version' i 'X-AspNetMvc-Version'. Osiąga się to poprzez usunięcie tych nagłówków w filtrze wp_headers.

Wyłącz podpis serwera: Jeśli twój serwer korzysta z Apache, możesz wyłączyć podpis serwera, który jest małym fragmentem informacji o twoim serwerze, ustawiając nagłówek 'Server' na pustą wartość. To jest sprawdzane i stosowane, jeśli moduł 'mod_headers' jest dostępny.

Zmodyfikuj .htaccess: Na koniec, kod modyfikuje plik .htaccess, aby dodać dyrektywy, które wyłączają podpis serwera i usuwają niektóre nagłówki. Dzieje się to tylko wtedy, gdy plik jest zapisywalny i nie zawiera już tych dyrektyw.

Wprowadzając te zmiany, możesz zmniejszyć ilość informacji, które twój serwer ujawnia, co utrudnia osobom próbującym wykorzystać znane luki bezpieczeństwa oparte na szczegółach serwera.

Kod

<?php
// Function to remove PHP version from HTTP headers
function wp_dudecom_remove_php_version() {
    header_remove('X-Powered-By');
}
add_action('init', 'wp_dudecom_remove_php_version');

// Function to remove server signature and other unwanted headers
function wp_dudecom_remove_unwanted_headers($headers) {
    unset($headers['X-Powered-By']);
    unset($headers['Server']);
    unset($headers['X-AspNet-Version']);
    unset($headers['X-AspNetMvc-Version']);
    return $headers;
}
add_filter('wp_headers', 'wp_dudecom_remove_unwanted_headers');

// Function to disable server signature in Apache
function wp_dudecom_disable_server_signature() {
    if (function_exists('apache_get_modules') && in_array('mod_headers', apache_get_modules())) {
        header('Server: ');
    }
}
add_action('send_headers', 'wp_dudecom_disable_server_signature');

// Function to modify .htaccess to hide server information
function wp_dudecom_modify_htaccess() {
    $htaccess_file = ABSPATH . '.htaccess';
    if (file_exists($htaccess_file) && is_writable($htaccess_file)) {
        $htaccess_content = file_get_contents($htaccess_file);
        $directives = "\n# WP-DUDE.COM: Hide server information\n";
        $directives .= "ServerSignature Off\n";
        $directives .= "Header unset X-Powered-By\n";
        $directives .= "Header unset Server\n";

        if (strpos($htaccess_content, 'WP-DUDE.COM: Hide server information') === false) {
            file_put_contents($htaccess_file, $htaccess_content . $directives);
        }
    }
}
add_action('init', 'wp_dudecom_modify_htaccess');
?>

Instrukcja

Lokalizacja pliku: Dodaj poniższy kod do pliku functions.php swojego motywu lub do pliku własnej wtyczki.

Wymagania wstępne: Upewnij się, że masz dostęp do plików WordPressa i możliwość ich edytowania. Znajomość dostępu do serwera za pomocą FTP lub menedżera plików będzie pomocna.

Kroki wdrożenia:

  • Dostęp do plików WordPressa: Użyj klienta FTP lub menedżera plików swojego dostawcy hostingu, aby przejść do katalogu instalacji WordPressa.
  • Edytuj functions.php lub stwórz wtyczkę:
    • Jeśli używasz functions.php: Przejdź do wp-content/themes/twojego-aktywnego-motywu/ i otwórz functions.php do edycji.
    • Jeśli tworzysz wtyczkę: Przejdź do wp-content/plugins/, utwórz nowy folder, a w nim stwórz plik PHP (np. hide-server-info.php).
  • Dodaj kod: Skopiuj i wklej podany kod do pliku, który edytujesz.
  • Zapisz zmiany: Zapisz plik po dodaniu kodu.
  • Zweryfikuj zmiany: Wyczyść pamięć podręczną przeglądarki i sprawdź nagłówki HTTP swojej witryny za pomocą narzędzi dewelopera w przeglądarce lub online'owego narzędzia do sprawdzania nagłówków, aby upewnić się, że nagłówki zostały usunięte.

Jeśli potrzebujesz pomocy przy tym wdrożeniu lub wymagasz bardziej zaawansowanej funkcjonalności, rozważ skontaktowanie się z wp-dude.com w celu uzyskania fachowej pomocy.