WordPress Security Hardening - zaawansowane zabezpieczenia

Podstawowe zabezpieczenia WordPress to dopiero początek. Hardening to zaawansowane techniki utrudniające ataki. Od modyfikacji plików konfiguracyjnych po ochronę bazy danych. Dla tych, którzy chcą maksymalnego bezpieczeństwa.

Krótka odpowiedź

Hardening WordPress: ukryj wersję WP, zablokuj edycję plików w panelu, chroń wp-config.php i .htaccess, ogranicz dostęp do wp-admin (IP), wyłącz XML-RPC jeśli nieużywane, zmień prefiks tabel bazy danych. Każda warstwa utrudnia atak.

Ukrywanie informacji o WordPress

Ukryj wersję WordPress:
```php
// functions.php
remove_action('wp_head', 'wp_generator');

add_filter('the_generator', '__return_empty_string');
```

Ukryj wersję w RSS:
```php
add_filter('the_generator', '__return_null');
```

Usuń wersje z CSS/JS:
```php
add_filter('style_loader_src', 'remove_version_query', 9999);
add_filter('script_loader_src', 'remove_version_query', 9999);
function remove_version_query($src) {
return $src ? remove_query_arg('ver', $src) : $src;
}
```

Wyłącz readme.html i license.txt:
- Usuń te pliki lub ogranicz dostęp w .htaccess

Ochrona plików konfiguracyjnych

wp-config.php w .htaccess:
```apache

order allow,deny
deny from all

```

Przenieś wp-config.php:
- Możesz przenieść poziom wyżej (poza public_html)
- WordPress automatycznie znajdzie

Ochrona .htaccess:
```apache

order allow,deny
deny from all

```

Blokada dostępu do includes:
```apache

RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]

```

Hardening wp-config.php

Wyłącz edycję plików w panelu:
```php
define('DISALLOW_FILE_EDIT', true);
```

Wyłącz instalację wtyczek/motywów:
```php
define('DISALLOW_FILE_MODS', true);
```

Wymuś SSL dla admina:
```php
define('FORCE_SSL_ADMIN', true);
```

Unikalne klucze (sekrety):
- Wygeneruj nowe: https://api.wordpress.org/secret-key/1.1/salt/
- Zmiana unieważnia wszystkie sesje

Limit rewizji i autosave:
```php
define('WP_POST_REVISIONS', 3);
define('AUTOSAVE_INTERVAL', 300);
```

Tryb debug tylko lokalnie:
```php
define('WP_DEBUG', false);
define('WP_DEBUG_LOG', false);
define('WP_DEBUG_DISPLAY', false);
```

Ochrona wp-admin i logowania

Ograniczenie dostępu do wp-admin (IP):
```apache
# .htaccess w /wp-admin/

Order Deny,Allow
Deny from all
Allow from 123.456.789.0

```

Ograniczenie wp-login.php:
```apache

Order Deny,Allow
Deny from all
Allow from 123.456.789.0

```

Zmiana URL logowania (wtyczka):
- WPS Hide Login - zmienia /wp-admin na /custom-login
- Utrudnia ataki brute force

Wyłączenie XML-RPC:
```apache

Order Deny,Allow
Deny from all

```
Lub wtyczka: Disable XML-RPC

Two-Factor Authentication:
- Wtyczka Two Factor lub Wordfence
- TOTP (Google Authenticator)
- Backup codes

Wspomniane narzędzia

Wordfence WPS Hide Login htaccess wp-config

Najczęściej zadawane pytania

Czy hardening może zepsuć stronę?
Tak, jeśli zablokujesz coś potrzebnego. Wyłączenie XML-RPC może zepsuć Jetpack i aplikacje mobilne. Blokada IP admina przy dynamicznym IP = sam się zablokujesz. Testuj każdą zmianę. Miej backup i dostęp FTP na wypadek problemów.
#wordpress#bezpieczeństwo#hardening#htaccess#security

Potrzebujesz pomocy specjalisty?

Skorzystaj z naszych usług w największych miastach Polski