
 Грешка "412 Precondition Failed" - използване на mod\_security2
=================================================================


Mod\_security2 е модул на Apache 2, известен още като защитна стена за уеб приложения, който блокира определени заявки до уеб сървъра, като се ползва списък от предварително зададени правила. Тези правила включват блокиране на заявки свързани с популярни атаки срещу сървъри, както и блокиране на заявки към уязвим софтуер. Тази допълнителна мярка за сигурност е активирана по подразбиране на нашите сървъри, тъй като се стремим да защитим максимално сайтовете на нашите клиенти от хакерски атаки. Възможно е определени легитимни заявки към сървъра също да бъдат блокирани, ако съвпаднат с определено правило. Когато това се случи, посетителят вижда грешката **412 Request Blocked** (precondition failed).

#### Деактивиране на mod\_security2 за XML-RPC файлове

Протоколът **XML-RPC** се използва от някои модули на **WordPress**, за да комуникира с външни ресурси. Най-популярните примери за това са плъгинът Jetpack и официалните мобилни приложения на WordPress. За повече информация как да разрешите достъпа до този файл от секцията WordPress в контролния панел, прочетете [тук](https://www.icdsoft.com/bg/kb/view/razreshavane_na_dostap_do_xml_rpc "Разрешаване на достъп до XML-RPC"). 

Ако сайтът Ви използва xmlrpc.php файл, но не е базиран на WordPress, Вие можете да деактивирате mod\_security2 чрез .htaccess файл със следното съдържание:  
 <IfModule security2\_module>  
SecRuleRemoveById 114  
 </IfModule>  
Файлът .htaccess може да бъде създаден лесно в секция Файлове на Контролния панел. Имайте предвид, че зададените настройки важат само за директорията, в която се намира .htaccess файла, както и нейните поддиректории.

#### Деактириване на отделно правило

По подразбиране, някои възможно зловредни ботове са блокирани на нашите сървъри с mod\_security2 правила. Това е списъкът с блокирани ботове, както и техните ID-та:

"Havij" id:350  
 "^BOT/0.1" id:354  
 "^Mozilla\/4\.0 \(compatible; MSIE 6\.0; Windows NT 5\.1;?( SV1)?;?\)$" id:373  
 "^Mozilla\/3\.0 \(compatible; Indy Library\)$" id:392  
 "sqlmap" id:398  
 "DatabaseDriverMysql" "id:401"  
 "BUbiNG" id:406  
 "MauiBot" id:407  
 "MJ12bot" id:408  
 "BLEXBot" id:409  
 "DotBot" id:410  
 "SemrushBot" id:411  
 "MegaIndex" id:412

Ако желаете да разрешите някой от тези ботове да достъпва сайта Ви, можете да деактивирате правилото със съответното ID, чрез .htaccess файл в главната директория на Вашия акаунт. Използвайте директивата SecRuleRemoveById както в примера по-горе, като замените номера с IDто на съответното правило.

#### Деактивиране на mod\_security2



| Attention | Деактивирането на модула mod\_security2 ще намали драстично сигурността на сайта ви, затова не ви препоръчваме да го правите, а да се свържете с нашия екип за техническа поддръжка, за да разберете кой точно филтър на mod\_security2 пречи на изпълнението на вашия скрипт, така че да забраните единствено него. |

Като алтернатива можете да спрете функциите на mod\_security2 **само в директорията**, в която се намира скриптът, чието изпълнение предизвиква грешка. За да деактивирате mod\_security2, създайте **.htaccess** файл в съответната директория със следното съдържание:  
<IfModule security2\_module>  
SecRuleEngine Off  
SecRequestBodyAccess Off  
</IfModule>

