ваше сообщение коммита
This commit is contained in:
@@ -3,6 +3,9 @@
|
||||
# Включаем WAF конфигурацию
|
||||
# include /etc/nginx/conf.d/waf.conf;
|
||||
|
||||
# Ограничение запросов (5 r/s на IP, с небольшим burst)
|
||||
limit_req_zone $binary_remote_addr zone=req_limit_per_ip:10m rate=5r/s;
|
||||
|
||||
# Блокировка всех подозрительных поддоменов
|
||||
server {
|
||||
listen 80;
|
||||
@@ -60,11 +63,16 @@ server {
|
||||
return 404;
|
||||
}
|
||||
|
||||
# Блокировка сканирования резервных копий и архивов
|
||||
# Блокировка сканирования резервных копий и архивов (путьовые паттерны)
|
||||
if ($request_uri ~* "(backup|backups|bak|old|restore|www\.tar|website\.tar|\.tar\.gz|\.gz|\.sql\.tar|public_html\.tar|sftp-config\.json)") {
|
||||
return 404;
|
||||
}
|
||||
|
||||
# Явный запрет на потенциально опасные расширения (чтобы SPA не отдавала index.html со статусом 200)
|
||||
location ~* \.(zip|rar|7z|tar|gz|bz2|xz|sql|sqlite|db|bak|backup|old|csv)$ {
|
||||
return 404;
|
||||
}
|
||||
|
||||
# Блокировка опасных файлов (НЕ блокируем .js, .css)
|
||||
if ($request_uri ~* "\.(php|asp|aspx|jsp|cgi|pl|py|sh|bash|exe|bat|cmd|com|pif|scr|vbs|vbe|jar|war|ear|dll|so|dylib|bin|sys|ini|log|bak|old|tmp|temp|swp|swo|~)$") {
|
||||
return 404;
|
||||
@@ -92,6 +100,9 @@ server {
|
||||
|
||||
# Основной location
|
||||
location / {
|
||||
# Лимитируем агрессивные сканеры по IP
|
||||
limit_req zone=req_limit_per_ip burst=15 nodelay;
|
||||
|
||||
try_files $uri $uri/ /index.html =404;
|
||||
|
||||
# Заголовки безопасности
|
||||
@@ -149,8 +160,13 @@ server {
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
}
|
||||
|
||||
# Общий запрет SPA-фоллбэка для любых запросов с расширением, кроме /api и /ws
|
||||
location ~* ^/(?!api/|ws).+\.[^/]+$ {
|
||||
try_files $uri =404;
|
||||
}
|
||||
|
||||
# Запрет доступа к чувствительным файлам
|
||||
location ~* /(\.htaccess|\.htpasswd|\.env|\.git|\.svn|\.DS_Store|Thumbs\.db|web\.config|robots\.txt|sitemap\.xml)$ {
|
||||
location ~* /(\.\htaccess|\.\htpasswd|\.env|\.git|\.svn|\.DS_Store|Thumbs\.db|web\.config|robots\.txt|sitemap\.xml)$ {
|
||||
deny all;
|
||||
return 404;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user