Setenvifnocase user agent: Установка различных значений по SetEnvIfNoCase не работает

$ bad_bot #leave this for blank user-agents SetEnvIfNoCase User-Agent .*\@.* bad_bot SetEnvIfNoCase User-Agent .*bot.* bad_bot

Но эти правила также блокируют хороших ботов, поэтому я добавил ниже

#Goodbots
SetEnvIfNoCase User-Agent .*google.* good_bot
SetEnvIfNoCase User-Agent .*bingbot.* good_bot #bing

И, наконец, блокирующее правило

Order Allow,Deny
Allow from all
Deny from env=bad_bot

Но когда я использую GoogleBot useragent (Googlebot/2.1 (+ http://www.googlebot.com/бот.html ) я получаю — 403 запрещено.

— Что случилось ?

php apache .htaccess setenvif
Поделиться Источник Alexey Shatrov     05 января 2018 в 13:41

Содержание

1 ответ


  • MySQL различных значений по столбцам

    У меня есть следующая таблица: id lb rb ls rs ch bk ot 1 10000 10001 10001 10001 10001 10001 10000 2 0 10000 0 10001 0 10000 0 3 0 0 10000 10001 10000 0 0 4 0 0 0 10000 0 0 0 5 0 0 0 10000 0 0 0 Я хочу иметь возможность получить общее количество различных значений по всем столбцам (исключая 0),.

    $ bad_bot SetEnvIfNoCase User-Agent .*\@.* bad_bot SetEnvIfNoCase User-Agent .*bot.* bad_bot #Goodbots SetEnvIfNoCase User-Agent .*google.* !bad_bot SetEnvIfNoCase User-Agent .*bingbot.* !bad_bot

    Примеры см. в справочнике mod_setenvif. BrowserMatchNoCase обеспечивает идентичную функциональность с более коротким синтаксисом. И вы можете удалить все .* в вашем regex.

    Поделиться Salman A     06 января 2018 в 20:29


    Похожие вопросы:


    Setenvifnocase Referer — только для конкретного слова

    Есть несколько URLs, которые ссылаются на мой сайт. Я хочу запретить им доступ. Все эти сайты имеют уникальное и общее ключевое слово в URL: /roger23/ Пример URLs являются:…


    Как отключить GZip с помощью SetEnvIfNoCase в Apache. htaccess?

    Я хочу отключить GZip для определенных страниц. У меня есть это в моем .htaccess , но он все еще включает GZip ( Content-Encoding: gzip ) при посещении dashboard/index . <ifmodule…


    Как исключить URL-адреса из Apache mod_deflate через SetEnvIfNoCase

    Я имею дело с сайтом Magento, который имеет стороннюю интеграцию CMS. Когда я включаю Mod_deflate через файл .htaccess, большая часть сайта работает хорошо. Все страницы, которые извлекают…


    MySQL различных значений по столбцам

    У меня есть следующая таблица: id lb rb ls rs ch bk ot 1 10000 10001 10001 10001 10001 10001 10000 2 0 10000 0 10001 0 10000 0 3 0 0 10000 10001 10000 0 0 4 0 0 0 10000 0 0 0 5 0 0 0 10000 0 0 0 Я…


    Apache2 SetEnvIfNoCase использование Request_URI

    я пытаюсь установить переменные окружения locale в моем VHost на сервере apache, чтобы запрошенный путь определял используемый locale. Требование состоит в том, чтобы использовать больше кода…


    SetEnvIfNoCase для CodeIgniter

    Как установить эту линию SetEnvIfNoCase Request_URI get_file\.php$ no-gzip dont-vary к codeigniter htaccess, если мой класс-download_file, а метод-index()?


    Перенаправление SetEnvIfNoCase

    Привет всем, я изучал методы подстановочных знаков с использованием SetEnvIfNoCase User-Agent и подстановочных знаков, но использование примера below.only служит страницей ошибки 403, если useragent…


    Является ли установка значений в инспекторе такой же, как установка значений по умолчанию в Unity?

    Я очень новичок в Unity, так что это может быть глупый вопрос, но установка значений в инспекторе-это то же самое, что установка значений по умолчанию в коде? Пример: public string name; //then go…


    Список различных значений после группирования по другим столбцам

    Я пытаюсь получить список различных значений (вместо их количества по func.count(distinct(column)) ) после группировки по другим столбцам. Как я могу сделать это в MySQL/SQLAlchemy эффективно?…


    Выбор по ограниченному числу различных значений

    Я пытаюсь разбить выбор на отдельные значения одного столбца.Cegbfeieh» bad_bot

    Какие меры принять для определения и устранения причин чрезмерной нагрузки на сервер?

    12 комментариев

    Делюсь своим опытом в статье.

    1) 3 августа получил письмо службы технической поддержки ТаймВэб: 

    «Мы обнаружили, что Ваш аккаунт оказывает чрезмерную нагрузку на сервер. Возможно, Ваш проект стал более посещаемым или в работе сайта что-то пошло не так. На сервере виртуального хостинга чрезмерная нагрузка, оказываемая одним аккаунтом, может негативно сказаться на работе всего сервера, поэтому эту проблему важно оперативно решить».

    2) Проверка access_logs файлов показала множество попыток доступа к сайтам:

    • а) Ботов русскоязычных YandexBot, Googlebot, bingbot
    • б) Ботов зарубежных, среди которых больше всего DotBot и Baiduspider 
    • в) Запросов к /administrator/index.php и /profil-polzovatelya?view=registration, хотя регистрация на сайте не доступна, как в настройках, так и в меню.

    Решение

    Приняли решение:

    1) Блокировка директивой Disallow: / в файле robots.txt для следующих зарубежных ботов:

    
    User-agent: Exabot
    Disallow: /
    User-agent: IDBot
    Disallow: /
    User-agent: Bingbot
    Disallow: /
    User-agent: Wotbox
    Disallow: /
    User-agent: Baiduspider
    Disallow: /
    User-agent: Baiduspider-image
    Disallow: /
    User-agent: Baiduspider-video
    Disallow: /
    User-agent: Baiduspider-news
    Disallow: /
    User-agent: Baiduspider-favo
    Disallow: /
    User-agent: Baiduspider-cpro
    Disallow: /
    User-agent: Baiduspider-ads
    Disallow: /
    User-agent: Baidu
    Disallow: /
    User-agent: MJ12bot
    Disallow: /
    User-agent: AhrefsBot
    Disallow: /
    User-agent: dotbot
    Disallow: /
    User-agent: Riddler
    Disallow: /
    User-agent: SemrushBot
    Disallow: /
    User-agent: LinkpadBot
    Disallow: /
    User-agent: BLEXBot
    Disallow: /
    User-agent: FlipboardProxy
    Disallow: /
    User-agent: aiHitBot
    Disallow: /
    User-agent: trovitBot
    Disallow: /
    

    2) Блокировка директивой user-agent в файле .anybot» bad_bot <Limit GET POST HEAD> Order Allow,Deny Allow from all Deny from env=bad_bot </Limit>

    Для других сайтов директиву RewriteCond %{HTTP_USER_AGENT} 

    
    RewriteCond %{HTTP_USER_AGENT} Exabot [OR]
    RewriteCond %{HTTP_USER_AGENT} IDBot [OR]
    RewriteCond %{HTTP_USER_AGENT} Wotbox [OR]
    RewriteCond %{HTTP_USER_AGENT} Baiduspider [OR]
    RewriteCond %{HTTP_USER_AGENT} Baiduspider-image [OR]
    RewriteCond %{HTTP_USER_AGENT} Baiduspider-video [OR]
    RewriteCond %{HTTP_USER_AGENT} Baiduspider-news [OR]
    RewriteCond %{HTTP_USER_AGENT} Baiduspider-favo [OR]
    RewriteCond %{HTTP_USER_AGENT} Baiduspider-cpro [OR]
    RewriteCond %{HTTP_USER_AGENT} Baiduspider-ads [OR]
    RewriteCond %{HTTP_USER_AGENT} AhrefsBot [OR]
    RewriteCond %{HTTP_USER_AGENT} MJ12bot [OR]
    RewriteCond %{HTTP_USER_AGENT} Detectify [OR]
    RewriteCond %{HTTP_USER_AGENT} dotbot [OR]
    RewriteCond %{HTTP_USER_AGENT} Riddler [OR]
    RewriteCond %{HTTP_USER_AGENT} SemrushBot [OR]
    RewriteCond %{HTTP_USER_AGENT} LinkpadBot [OR]
    RewriteCond %{HTTP_USER_AGENT} BLEXBot [OR]
    RewriteCond %{HTTP_USER_AGENT} FlipboardProxy [OR]
    RewriteCond %{HTTP_USER_AGENT} aiHitBot [OR]
    RewriteCond %{HTTP_USER_AGENT} trovitBot [OR]
    RewriteCond %{HTTP_USER_AGENT} Zeus
    RewriteRule ^(.*)$ – [F,L] 

    3) Блокировка директивой Deny from IP в файле .htaccess для явно вредных запросов к «administrator», «registration», а также IP тех же ботов, а также IP из списка злостных спамеров и хакеров, опубликованных на сайте stopforumspam.com/stats. В итоге получился список из 628 IP адресов. Привожу здесь только часть списка — злостные IP

    
    <Limit GET POST> 
    order allow,deny 
    Deny from 109.86.71.72
    Deny from 134.249.51.80
    Deny from 146.185.223.105
    Deny from 146.185.223.173
    Deny from 146.185.234.81
    Deny from 176.8.90.90
    Deny from 178.137.161.11
    Deny from 178.158.85.115
    Deny from 178.159. 37.110
    Deny from 178.159.37.12
    Deny from 178.159.37.44
    Deny from 185.154.13.7
    Deny from 192.168.0.1
    Deny from 193.201.224.11
    Deny from 193.201.224.21
    Deny from 37.115.187.206
    Deny from 46.161.9.46
    Deny from 46.98.212.5
    Deny from 46.98.213.124
    Deny from 91.200.12.59
    allow from all 
    </Limit>

    Анализ сегодняшнего 17Aug2017 файла access_log показал от DotBot 108 сканов по IP 216.244.66.198 и 216.244.66.250 Baiduspider 7 сканов по IP 180.76.15.17. 

    error_log стали содержательными, вместо 2-3 строк, теперь 40-50 строк отказа, типа:

    
    www.site.ru [Thu Aug 17 06:11:59 2017] [error] [pid 15392] mod_access_compat.c(352): [client 216.244.66.250:48496] AH01797: client denied by server configuration: /home/g/login/site.ru/public_html/services

    То есть защита наша работает, но пока работает лишь частично. Нагрузка остаётся завышенной.

    ИТОГ

    В результате наших действий нагрузка снизилась вдвое прежней, но мы ведем поиск оптимизации доступа.

    У кого есть положительный опыт принятия мер по определению и устранению причин чрезмерной нагрузки на сервер? Просьба поделиться подробно, поскольку эта проблема становится актуальной для многих.Zyborg» bad_bot # Vulnerability Scanners SetEnvIfNoCase User-Agent «Acunetix» bad_bot SetEnvIfNoCase User-Agent «FHscan» bad_bot # Aggressive Chinese Search Engine SetEnvIfNoCase User-Agent «Baiduspider» bad_bot # Aggressive Russian Search Engine SetEnvIfNoCase User-Agent «Yandex» bad_bot <Limit GET POST HEAD> Order Allow,Deny Allow from all # Cyveillance deny from 38.100.19.8/29 deny from 38.100.21.0/24 deny from 38.100.41.64/26 deny from 38.105.71.0/25 deny from 38.105.83.0/27 deny from 38.112.21.140/30 deny from 38.118.42.32/29 deny from 65.213.208.128/27 deny from 65.222.176.96/27 deny from 65.222.185.72/29 Deny from env=bad_bot </Limit>

    Я был бы признателен, если бы кто-то мог указать мне в правильном направлении. Любая помощь будет оценена.

    1

    MrVK 23 Авг 2019 в 00:54

    1 ответ

    Лучший ответ

    /401.html — это страница, которую вы создаете, вы можете назвать его все, что вы хотите

    1

    Klienblat Moshe 22 Авг 2019 в 22:14

    20+ правил .htaccess, которые должен знать каждый разработчик

    Прежде чем мы начнем, обращаю ваше внимание на тот факт, что злоупотребление использованием .htaccess может привести к снижению производительности вашего сайта. Использовать .htaccess для реализации той или иной задачи стоит только в том случае, если нет других вариантов.

    Убедитесь в том, что вы сделали резервную копию оригинального файла .htaccess для вашего сайта, прежде чем вносить какие-либо изменения.

    Кроме того, помните — работоспособность указанных ниже правил зависит от настроек вашего web-сервера, заданных хостером. Некоторые директивы могут быть запрещены и не работать.

    .htaccess (от. англ. hypertext access) — файл дополнительной конфигурации веб-сервера Apache, а также подобных ему серверов. Позволяет задавать большое количество дополнительных параметров и разрешений для работы веб-сервера в отдельных каталогах (папках), таких как управляемый доступ к каталогам, переназначение типов файлов и т.д., без изменения главного конфигурационного файла.

    Файл .htaccess может быть размещён в любом каталоге. Директивы этого файла действуют на все файлы в текущем каталоге и во всех его подкаталогах (если эти директивы не переопределены директивами нижележащих файлов .htaccess).
    Для того чтобы эти файлы .htaccess можно было использовать, необходимы соответствующие настройки главного конфигурационного файла (значение директивы AllowOverride должно быть установлено All). Как правило, подавляющее большинство хостеров разрешают использовать свои файлы .htaccess.

    Запрещаем загрузку файлов с внешних сайтов

    Вам надоели люди, которые размещают картинки, опубликованные на вашем сайте — на своих ресурсах, тем самым расходуя ваш траффик и создавая ненужную нагрузку на ваш хостинг? Данный код, размещенный в конца вашего файла .Zeus [NC]
    <limit get=»» post=»» head=»»>
    Order Allow,Deny
    Allow from all
    Deny from env=bad_bot
    </limit>

    Список User Agent браузеров, роботов и пауков поисковых машин, веб-каталогов, менеджеров закачек, спам-ботов и плохих ботов можно найти на сайте List of User-Agents.

    Запрещаем доступ для всех, кроме указанных IP-адресов

    Если по какой-либо причине, вы хотите запретить всем или разрешить только отдельным IP-адресам доступ к вашему сайту — добавьте этот код в ваш .htaccess-файл:

    #Запрещаем доступ для всех, кроме указанных IP-адресов
    ErrorDocument 403 http://www.domainname.com
    Order deny,allow
    Deny from all
    Allow from 124.34.48.165
    Allow from 102.54.68.123

    Не забудьте изменить domainname.com на ваше доменное имя.

    Настраиваем SEO-Friendly 301 Redirect

    Если вы перенесли доменное имя или хотите перенаправлять пользователя на определенную страницу (страницы), без санкций со стороны поисковых машин, используйте этот код:

    #Настраиваем SEO-Friendly 301 Redirect
    Redirect 301 /d/file.html http://www.domainname.com/r/file.html

    Не забудьте изменить domainname.com на ваше доменное имя, а /d/file.html и /r/file.html на соответствующие директории и страницы.

    Создаем собственные страницы ошибок

    Вам надоел стандартный вид страниц ошибок? Нет проблем — с помощью следующего кода, вы легко можете создать свою страницу и показывать пользователю именно ее:

    ErrorDocument 401 /error/401.php
    ErrorDocument 403 /error/403.php
    ErrorDocument 404 /error/404.php
    ErrorDocument 500 /error/500.php

    Не забудьте создать в корневой директории вашего сервера папку error и разместить в ней соответствующие файлы.

    Создаем черный список IP адресов

    Устали от спам-комментариев или определенного пользователя? Просто заблокируйте его IP с помощью следующего кода, добавляемого в .htaccess-файл.

    #Создаем черный список IP адресов
    allow from all
    deny from 145.186.14.122
    deny from 124.15.

    Узнать IP адреса комментаторов можно или в логах Apache или с помощью сервисов статистики. Для Drupal, IP адреса комментаторов можно увидеть в административной панели — Отчеты.

    Устанавливаем e-mail адрес по-умолчанию для администратора сервера

    Используйте данный код, для того, чтобы установить e-mail адрес по-умолчанию для администратора сервера.

    #Устанавливаем e-mail адрес по-умолчанию для администратора сервера
    ServerSignature EMail
    SetEnv SERVER_ADMIN [email protected]

    Не забудьте заменить [email protected] — своим e-mail адресом.

    Защищаем определенный файл

    Нижеследующий код позволяет вам запретить доступ к любому файлу — при запросе будет выдаваться ошибка 403. Для примере я закрыл доступ к самому файлу htaccess, повысив уровень безопасности сайта.

    #Защищаем .htaccess файл
    <files .htaccess=»»>
    order allow,deny
    deny from all
    </files>

    Сжимаем элементы с помощью mod_deflate

    В качестве альтернативы компрессии файлов с помощью Gzip, вы можете использовать mod_deflate (предположительно работает быстрее). Разместите следующий код в начале вашего файла .htaccess (также вы можете добавить .jpg|.gif|.png|.tiff|.ico):

    #Сжимаем элементы с помощью mod_deflate
    <ifmodule mod_deflate.c=»»>
    <filesmatch .(js|css)$=»»>
    SetOutputFilter DEFLATE
    </filesmatch>
    </ifmodule>

    Добавляем срок жизни в заголовки

    Данный код позволяет добавить сроки жизни в заголовки:

    #Добавляем срок жизни в заголовки
    <filesmatch .(ico|pdf|flv|jpg|jpeg|png|gif|swf)$=»»>
    Header set Expires «Wed, 21 May 2010 20:00:00 GMT»
    </filesmatch>

    Устанавливаем страницы по-умолчанию

    Обычно страницей по-умолчанию является index.html, однако с помощью этого кода вы можете настроить по-умолчанию любую другую страницу.

    #Устанавливаем альтернативную страницу по-умолчанию
    DirectoryIndex about.html

    Защищаем паролем папки и файлы

    Вы можете включить проверку пароля для доступа в любую папку или файл на вашем сервере, используя этот код:

    #защита паролем файла
    <files secure.php=»»>
    AuthType Basic
    AuthName «Prompt»
    AuthUserFile /pub/home/.htpasswd
    Require valid-user
    </files>
    #защита паролем папки
    resides
    AuthType basic
    AuthName «This directory is protected»
    AuthUserFile /pub/home/.htpasswd
    AuthGroupFile /dev/null
    Require valid-user

    Для того, чтобы организовать доступ к файлу по паролю, необходимо создать файл .htpasswd и внести в него пару логин-пароль в формате user:password.

    Однако в этом случае пароли будут хранится в открытом виде, что не слишком хорошо с точки зрения безопасности. Поэтому оптимальнее пароль зашифровать. Для этого воспользуйтесь сервисами генерации записей в файлы .htpasswd. Например, вот таким.

    В нашем примере файл с паролями доступа лежит в корневой директории сайта и называется .htpasswd. Директория указывается от корня сервера и если путь будет некорректным — Apache, не получив доступа к файлу, откажет в доступе к папке любому пользователю — в том чилсе и тому, который ввел правильную пару логин:пароль.(.*)$ http://www.domainname.com/$1 [R=301,L]

    Перенаправление используется в том случае, если вы переносите свой существующий сайт на новое доменное имя. В этом случае любой пользователь, который наберет в адресной строке http://www.olddomainname.com — будет перенаправлен на http://www.domainname.com

    Усиливаем кеширование

    Использование этого правила не означает прямое ускорение загрузки вашего сайта. Оно предназначено для более быстрой загрузки сайта — для уже заходившего на него посетителя, путем отправки статуса 304 для тех элементов, которые не обновлялись. Таким образом, при повторной загрузке страницы браузер посетителя не будет заново скачивать изображения, скрипты или CSS, а выведет те файлы, которые уже хранятся в его кеше. Вы можете изменить срок жизни кеша, путем корректирования его значения в годах (year), месяцах (month) или, например — секундах (seconds). В примере указан 1 год.

    #Усиливаем кеширование
    FileETag MTime Size
    <ifmodule mod_expires.(.*)$ www.domainname.com/$1

    От себя добавлю, что вы можете использовать не только статусы, но и другие условия:

    RedirectMatch (.*)\.gif$ http://www.myserver.com$1.png
    RedirectMatch (.*\.jpg)$ http://www.myanother.com$1

    Обязательно сделайте резервную копию файла .htaccess до внесения изменений и проверьте работоспособность всего сайта — после добавления новых строк.

    Защита от прямых ссылок для изображений через .htaccess

    Хотлинк (Hotlink) — вставка прямых ссылок изображений или файлов с одного сайта на другие. Этот прием используется довольно часто, ну например, у вас на сервере не хватает места для хранения картинок и вы пользуетесь каким-либо бесплатным сервисом для хранения файлов изображений, т.е. загружаете картинку, получаете URL и вставляете его на свой сайт. В итоге: вы сохраняете место для вашего сайта и используете пропускную способность хостинга для картинок, но это уже не ваше дело. Но вот как быть, если кто-то решил, что ваш сайт можно использовать как подобный сервис.Zyborg» bad_bot

  •  

  • <limit get=»» post=»» head=»»>

  • Order Allow,Deny

  • Allow from all

  • Deny from env=bad_bot

  • </limit>

  • Фильтрация доступа в .htaccess по UserAgent

     В данной заметке рассмотрим как фильтровать доступ к определенным файлам или категориям на Web-сервере при помощи .htaccess

    К написанию данной заметки меня натолкнула необходимость запрета перебора паролей к сайтам на базе CMS WordPress. Несмотря на то, что все пользователи с правами Администратора используют «сложные» пароли, которые не возможно подобрать, все же данные действия создают дополнительную нагрузку на сервер. Блокировать доступ по IP-адресам — простой, но не эффективный способ.

    При анализе логов Web-сервера заметил, что доступ пытаются получить через отправку данных на wp-login.php и xmlrpc.php, соответственно, доступ буду блокировать именно к этим файлам. В тоже время было замечено, что UserAgent на всех запросах к данным файлам является

    «Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0»

    Исходя из этих данных, составлю правила для блокирования доступа.

    Для этого буду использовать работу с переменными

    Создание переменной с результатами

    Будет использоваться директива для работы с переменными SetEnvIfNoCase. Для корректной работы необходимо, чтобы был установлен модуль Apache mod_setenvif

    Синтаксис использования:

    SetEnvIfNoCase attribute regex variable variable2 …

    Где:

    • attribute — атрибут, в котором производим поиск. Возможен поиск по любому HTTP-заголовку запроса
    • regex — регулярное выражение
    • variable — название переменной, допускается указание нескольких переменных через пробел

    Производить поиск будем по заголовку User-Agent.

    Пример кода .htaccess для запрета доступа к файлу wp-login.php пользователей с браузером Firefox 62.0. На момент написания актуальная версия 75

    <IfModule mod_setenvif.c>

      SetEnvIfNoCase User-Agent «.*Firefox\/62.0*» block

      <Files wp-login.php>

      Order Allow,Deny

    Allow from all

    Deny from env=block

    </Files>

    </IfModule>

    Аналогичным образом можно ограничить доступ для любых систем, которые идентифицируют себя через User-Agent или предоставить доступ только для определенных систем. Сфер применений множество.

    Также перед применением правил рекомендую использовать проверку регулярных выражений, например, на https://regexr.com/, если вы допустите ошибку при написании правил, то при открытии сайта будете получать сообщение о внутренней ошибке сервера с кодом 500 (Internal Server Error). В логах Web-сервера будет соответствующее сообщение

    .htaccess: SetEnvIfNoCase regex could not be compiled.
    Использованные материалы:

    https://www.askapache.com/htaccess/setenvif/

    https://httpd.apache.org/docs/2.4/mod/mod_setenvif.html

    HOWTO остановить автоматических спам-ботов, использующих .htaccess

    Спамеры думают, что они могут каким-то образом обмануть поисковые системы, чтобы они давали им трафик с помощью сайтов, рассылающих спам по ссылкам. Это, конечно, не работает, и единственный эффект от такого рассылки спама заключается в том, что как веб-сайт, который рассылается спамом, так и сайты спамеров, получают более низкие рейтинги в поисковых системах. Идиоты этого не осознают и все равно спамят, в основном используя автоматизированное программное обеспечение. Apache .htaccess — отличный способ борьбы с автоматическими спам-ботами.

    Почему это вам не поможет [править]

    Поймите, что .htacess блокировка, подкрепленная строкой «User-Agent» программного обеспечения — это старая новость в арсенале между хорошими и честными веб-мастерами, которые просто хотят запустить честный веб-сайт, и черными спамерами . Они знают, что многие люди блокируют этот , и многие идут простым путем: Они просто настраивают свое программное обеспечение и говорят: «Привет, я Mozilla, я какой-то парень посещает ваш сайт, как дела, вот дерьмо спама для тебя… «.

    .htaccess может эффективно блокировать любого спам-бота , который признает себя . Если он говорит, что это более поздняя версия Chrome, вы не можете создать общее правило, блокирующее весь Chrome.

    Блокировка по IP — еще один метод, который вы можете использовать в файле .htaccess , который на самом деле не очень помогает. На сервере, на котором размещена эта страница, находится , постоянно спамят POST-запросами и запросами для WordPress и, в частности, старых небезопасных плагинов WordPress.Новые серверы постоянно скомпрометированы. Добавление каждого атакующего IP в черный список будет постоянной работой.

    В сводке … [править]

    Есть два способа остановить ботов, использующих .htaccess: перезаписать на основе условия и разрешить / запретить с помощью SetEnvIfNoCase.

    Использование условий перезаписи [править]

    Примечание: Использование RewriteCond и RewriteRule Для требуется наличие AllowOverride FileInfo на веб-сервере Apache или в конфигурации виртуального хоста (см. Документацию Apache по allowoverride).Вы также можете использовать AllowOverride All , который позволяет FileInfo и другие, которые вам могут не понадобиться или не нужны, например, Indexes .

    Блокировка пользовательских агентов может быть выполнена путем создания списка строк пользовательского агента, которые вам не нравятся, построчно и установки правила запрета RewriteRule. * — [F] после них. Обратите внимание, что условия перечислены с параметром [ИЛИ], что означает только это: Если эта строка ИЛИ следующая строка истинна, сделайте.Зиборг «bad_bot» <Ограничить GET POST HEAD> Заказать разрешить, запретить Разрешить от всех Запретить от env = bad_bot

    .htaccess Правила, которые вы можете рассмотреть [править]

    Референтный спам [править]

    Некоторые боты просто заходят на ваш сайт и говорят, что пришли с того сайта, который они хотят спамить. Идея здесь в том, что многие инструменты webstat перечисляют ссылки, и эти боты часто заходят (многие только с HEAD / запросами), чтобы попасть в эти списки, созданные webstat. С помощью правил перезаписи вы могли:

    Файл: .htaccess

     RewriteEngine на
    RewriteCond% {HTTP_REFERER} xblognetwork [NC]
    RewriteCond% {HTTP_REFERER} попугайчики [NC]
    RewriteCond% {HTTP_REFERER} englishtopik
    RewriteRule (. * $) - [F, L]
     

    Вы также можете запретить их использование SetEnvIfNoCase:

    Файл: .htaccess

     SetEnvIfNoCase Referer doobu.com spammer = да
    SetEnvIfNoCase Referer покерный спамер = да
     
    Заказать разрешить, запретить
    разрешить от всех
    запретить env = spammer
     

    Обратите внимание, что спамерских слов , как правило, лучше, чем домены, если вас засылают спамом с помощью команды buy-this-viagra-before-play-poker.tld, тогда вам лучше настроиться на будущее, запретив покер и виагру вместо «buy-this-viagra-before-playing-poker.tld», поскольку это также останавливает super-poker-fun.tld и т. д.

    Нет User-Agent? Нет публикации [править]

    Это очень простое правило, которое запрещает кому-либо — или чему-либо, — которое не предоставляет никакого User-Agent для публикации. Он есть во всех браузерах, и даже те, кто скрывает свой настоящий User-Agent с помощью программного обеспечения, такого как Privoxy, предоставляют или .

    Файл: .$ RewriteRule. * — [F]

    Используете http версии 1.0? Идти в ногу со временем … [править]

    Все современные веб-браузеры уже более десяти лет используют версию 1.1 протокола http, и http 2.0 является модным.

    Одно правило, которое вы должны иметь для всех видов блогов и форумов, — это правило , которое проверяет, является ли это запрос POST, и проверяет, выполняется ли это с помощью http версии 1. Http: // www.. + pinappleproxy [NC]

    Многие из однопроходных веб-прокси достаточно любезны, чтобы добавить заголовков VIA , которые показывают, что соединение идет через прокси. Эти прокси также могут быть очень глупыми реальными пользователями, которые думают, что односкачковые веб-прокси дают им какие-либо реальные свойства безопасности (хотя на самом деле они этого не делают, используйте Tor, если вы хотите сопротивление анализу трафика).

    (Не) вырезать и вставить условия перезаписи [править]

    Возможно, вам просто понадобится быстрое исправление , и если это все, то вы, вероятно, захотите вырезать и вставить этот очень длинный список в свой.htaccess файл. Однако следует понимать, что это очень длинный и, следовательно; в этом очень длинном примере могут быть вещи, которые вам нужны . Вам определенно не нужен EmailWolf где-либо рядом с вашим сайтом, поскольку это только , которое используется спамерами для сбора адресов электронной почты, но есть приложений, использующих «Indy Library» (которая используется для множества вещей ), которые могут принести пользу обществу. Bot \ mailto: craftbot @ yahoo.Зиборг «bad_bot» <Ограничить GET POST HEAD> Заказать разрешить, запретить Разрешить от всех Запретить от env = bad_bot

    Следить за исчезающими изображениями Тема

    Привет, ребята,

    Не знаю, означает ли это что-нибудь, но я только что проверил свой файл robots.text в Search Console, и следующие коды были добавлены — вероятно, плагином — но я понятия не имею, какой из них:

    Обычные карты сайта Yoast, но затем —
    # BEGIN WBCPBlocker

    SetEnvIfNoCase User-Agent «AhrefsBot» block_bot

    SetEnvIfNoCase User-Agent «MJ12bot» block_bot

    SetEnvIfNoCase User-Agent «Rogerbot» block_bot

    SetEnvIfNoCase User-Agent «SemrushBot» block_bot

    SetEnvIfNoCase User-Agent «ia_archiver» block_bot

    SetEnvIfNoCase User-Agent «ScoutJet» block_bot

    SetEnvIfNoCase User-Agent «sistrix» block_bot

    SetEnvIfNoCase User-Agent «SearchmetricsBot» block_bot

    SetEnvIfNoCase User-Agent «SEOkicks-Robot» block_bot

    SetEnvIfNoCase User-Agent «Lipperhey Spider» block_bot

    SetEnvIfNoCase User-Agent «Exabot» block_bot

    SetEnvIfNoCase User-Agent «NCBot» block_bot

    SetEnvIfNoCase User-Agent «BacklinkCrawler» block_bot

    SetEnvIfNoCase User-Agent «meanpathbot» block_bot

    SetEnvIfNoCase User-Agent «PagesInventory» block_bot

    SetEnvIfNoCase User-Agent «Aboundexbot» block_bot

    SetEnvIfNoCase User-Agent «spbot» block_bot

    SetEnvIfNoCase User-Agent «linkdexbot» block_bot

    SetEnvIfNoCase User-Agent «Gigabot» block_bot

    SetEnvIfNoCase Пользовательский агент «dotbot» block_bot

    SetEnvIfNoCase User-Agent «Nutch» block_bot

    SetEnvIfNoCase User-Agent «BLEXBot» block_bot

    SetEnvIfNoCase User-Agent «Ezooms» block_bot

    SetEnvIfNoCase User-Agent «Маджестик-12» block_bot

    SetEnvIfNoCase User-Agent «Majestic-SEO» block_bot

    SetEnvIfNoCase User-Agent «DSearch» block_bot

    SetEnvIfNoCase User-Agent «BlekkoBot» block_bot

    SetEnvIfNoCase User-Agent «NerdyBot» block_bot

    SetEnvIfNoCase User-Agent «JamesBOT» block_bot

    SetEnvIfNoCase User-Agent «monitorbacklinks» block_bot

    <Предел GET POST HEAD>

    Разрешить заказ, запретить

    Разрешить со всех

    Запретить от env = block_bot

    # КОНЕЦ WBCPBlocker

    Я точно знаю, что этого материала НЕ было, пока я играл с повторной отправкой карт сайта, чтобы мои изображения работали в течение прошлой недели.

    Так откуда взялся этот дополнительный код?

    А что такое «WBCPBlocker»?

    Потому что похоже, что это может быть источником проблемы.

    Спасибо за любую информацию!

    Как заблокировать IP и пользовательских агентов в WordPress? »WebNots

    Одним из важных аспектов защиты вашего сайта WordPress является мониторинг IP-адресов пользователей и пользовательских агентов, обращающихся к вашему сайту. Есть много ситуаций, когда вам может потребоваться заблокировать IP-адрес пользователя при ведении блога WordPress.Ниже приведены некоторые из сценариев, когда происходит постоянная необходимость блокирования действий с вашей стороны:

    • Пользователь или бот пытается получить доступ к вашей странице входа.
    • Пользователь или бот, оставляющий спам-комментарии.

    Как отслеживать вредоносные IP-адреса?

    Чтобы заблокировать вредоносные IP-адреса, сначала вам необходимо отслеживать активность трафика на вашем сайте. Вы можете сделать это на уровне сервера или использовать плагин и мониторинг на панели администратора.

    Мониторинг уровня сервера

    Войдите в свою учетную запись хостинга и перейдите в cPanel.Загляните в раздел статистики, чтобы проверить доступные инструменты для мониторинга трафика на вашем сайте. Awstats — один из популярных инструментов статистики, предлагаемый почти всеми популярными хостинговыми компаниями. Щелкните значок и выберите свой сайт, чтобы просмотреть данные о трафике.

    Открытие Awstats из учетной записи хостинга cPanel

    Получите полный список IP-адресов хостов, генерирующих трафик на ваш сайт, нажав на опцию «Полный список» в разделе «Хосты».

    Список IP-адресов хостов, обращающихся к вашему сайту

    Аналогичным образом получите полный список роботов, сканирующих ваш сайт, нажав на опцию «Полный список» в разделе «Роботы / посетители-пауки».

    Получение списка роботов из Awstats

    Эти списки содержат список IP-адресов, с которых осуществляется доступ к вашему сайту, и анализ списка покажет вам вредоносные IP-адреса.

    Блокировка IP-адресов из учетной записи хостинга cPanel

    Как только вы узнаете список IP-адресов, которые пытаются попасть на ваш сервер без уважительных причин, следующим шагом будет их блокировка. Перейдите в свою учетную запись cPanel и нажмите «IP Deny Manager» или любой аналогичный вариант.

    Open IP Deny Manager в хостинге cPanel

    Добавьте IP-адреса, чтобы запретить доступ к вашему сайту.Вы можете добавить отдельные IP-адреса, диапазон, подразумеваемый диапазон и формат CIDR с маской подсети.

    Блокировка IP-адреса с помощью диспетчера запрета IP-адресов

    Блокировка ботов с помощью .htaccess

    К сожалению, ни один инструмент в cPanel не позволяет напрямую блокировать пользовательских агентов или плохих роботов. Вам необходимо использовать директивы в файле .htaccess, чтобы заблокировать идентифицированных роботов. Помимо списка, который вы нашли в списке доступа роботов Awstats, есть также много готовых списков плохих ботов, доступных в Интернете. Ниже приведен один из списков, доступных на Github, который вы можете скопировать и добавить в.Зиборг «bad_bot» # Сканеры уязвимостей SetEnvIfNoCase User-Agent «Acunetix» bad_bot SetEnvIfNoCase Пользовательский агент «FHscan» bad_bot # Агрессивная китайская поисковая система SetEnvIfNoCase User-Agent «Baiduspider» bad_bot # Агрессивная русская поисковая система SetEnvIfNoCase User-Agent «Яндекс» bad_bot <Ограничить GET POST HEAD> Заказать разрешить, запретить Разрешить от всех # Cyveillance отклонить от 38.100.19.8/29 отрицать от 38.100.21.0 / 24 отказать из 38.100.41.64/26 отклонить от 38.105.71.0/25 отклонить от 38.105.83.0/27 отказать из 38.112.21.140/30 отклонить от 38.118.42.32/29 отказать от 65.213.208.128/27 отказать от 65.222.176.96/27 отказать от 65.222.185.72/29 Запретить от env = bad_bot # END Блокировка плохих ботов

    Также неплохо обсудить с вашим хостом список плохих ботов, если он у них уже есть.

    Проблемы с блокировкой на уровне сервера

    Есть несколько проблем с блокировкой IP на уровне сервера:

    • В большинстве случаев IP-адреса включают CDN и IP-адреса вашего собственного хостинга.
    • Трудно найти вредоносные IP-адреса, просто проведя анализ без каких-либо ссылок.
    • Неправильная блокировка IP-адресов остановит реальных пользователей, а не IP-адрес хакера.
    • У вас нет возможности добавлять пользовательские агенты непосредственно в диспетчере отказа IP. Вам нужно заблокировать этих плохих ботов, напрямую изменив файл .htaccess.

    Использование подключаемого модуля для блокировки IP-адресов

    Утомительную работу по блокировке IP-адресов и пользовательских агентов на уровне сервера можно легко выполнить с помощью плагина из панели администратора.Есть много бесплатных и платных плагинов для идеального выполнения этой работы. Мы обсудим функцию, доступную в одном из популярных плагинов безопасности «All in One WP Security & Firewall».

    Finding All in One WP Security and Firewall Plugin

    Установите и активируйте плагин из панели администратора WordPress. Есть настройки, которые нужно включить, чтобы отслеживать вредоносные IP-адреса.

    • Перейдите к «WP Security> Login Lockdown» и включите опцию «Enable Login Lockdown Feature».Это будет регистрировать все IP-адреса, пытающиеся войти на ваш сайт. Вы можете получить мгновенное электронное письмо, когда есть блокировка, и просмотреть полный список заблокированных IP-адресов в разделе «Безопасность WP> Панель управления> Заблокированные IP-адреса».

    Опция блокировки входа в систему в плагине All in One WP Security and Firewall

    • Включите IP-адреса спамеров в комментариях в разделе «Предотвращение спама> Мониторинг IP-адресов спама в комментариях». Вы можете автоматически заблокировать IP-адрес спамера навсегда при получении определенного количества спам-комментариев.Все постоянно заблокированные IP-адреса можно просмотреть в разделе «Панель управления> Список постоянной блокировки».

    Когда у вас есть список вредоносных IP-адресов, перейдите к опции «Blacklist Manager». Введите IP-адреса по одному в каждой строке и сохраните настройки. Вы можете ввести индивидуальный IP-адрес или использовать подстановочный знак, например 195.47.89. * Или 195.47. *. * Или 195. *. *. *.

    Диспетчер черных списков IP-адресов и агентов пользователей

    Когда у вас есть список плохих ботов, как мы предоставили в разделе выше, введите все имена ботов в разделе «Введите пользовательских агентов».Это заблокирует доступ этих ботов к вашему сайту.

    На данный момент плагин имеет ошибку, когда пользовательский агент имеет \ в имени. Он добавляет много слэшей автоматически каждый раз, когда вы сохраняете список, что делает его недопустимым именем.

    Плагин также имеет платное дополнение для блокировки на уровне страны, которое обойдется вам примерно в 29 долларов за лицензию на один сайт.

    Заключение

    Постоянный мониторинг и блокировка IP-адресов, поэтому мы рекомендуем использовать «Все в одном WP Security & Firewall» или любой другой плагин безопасности для этой цели.В то же время блокировка плохих ботов — это одноразовое действие, или вы можете сделать это по мере необходимости, напрямую отредактировав файл .htaccess. В любом случае убедитесь, что вы отслеживаете и блокируете вредоносные IP-адреса. Это не только поможет повысить безопасность вашего сайта, но и сэкономит пропускную способность на вашем хостинг-сервере, запретив доступ злоумышленникам и пользовательским агентам.

    Защита паролем с помощью Apache, но разрешена от пользовательского агента

    В этом сообщении показано, как защитить паролем веб-сайт с помощью Apache.htaccess, но по-прежнему разрешает доступ определенному пользовательскому агенту.

    Почему?

    Разрешение доступа процессу или браузеру их пользовательского агента на самом деле не самое идеальное решение: гораздо лучше разрешить доступ по IP-адресу, но иногда это необходимо, если IP-адрес удаленного процесса / браузера может измениться, но user-agent останется прежним.

    В идеале этот метод не следует использовать для чего-то, требующего высокого уровня безопасности, но он может быть полезен, если вам нужно, как я, разрешить доступ к обратному вызову поставщика платежных услуг, чтобы ваш веб-сайт знал, что платеж был успешно обработан .

    Как?

    Добавьте это в свой файл .htaccess, см. Ниже, что вам нужно заменить:

     SetEnvIfNoCase User-Agent [UserAgentName] AllowedUserAgent
    AuthUserFile /path/to/.htpasswd
    AuthName «Ограниченный доступ»
    AuthType Basic
    Заказать отказать, разрешить
    Запретить всем
    Требовать пользователя [имя пользователя]
    Разрешить от env = AllowedUserAgent
    Satisfy Any 

    Измените [UserAgentName] на имя пользовательского агента. Вы можете использовать сопоставление с образцом, поэтому. * Google. * Будет сопоставлять пользовательский агент с «google» в любом месте.

    Измените /path/to/.htpasswd на фактическое расположение файла паролей.

    Измените [имя пользователя] на имена пользователей, которым вы хотите разрешить доступ.

    Пример реального мира

    Мне нужно было протестировать PxPay с помощью решений для прямых платежей (DPS), которые используют то, что они называют «уведомлением о результатах безотказной работы (FPRN)». Они специально отмечают, что при отправке уведомления о платеже не должно быть какой-либо условной логики, основанной на исходном IP-адресе.

    На самом деле я не могу делать никаких предположений о пользовательском агенте, но когда я его тестировал, он всегда передавался как PXL1, так что это то, что мне нужно.htaccess выглядел так:

     SetEnvIfNoCase User-Agent PXL1 DPS
    AuthUserFile /path/to/.htpasswd
    AuthName «Ограниченный доступ»
    AuthType Basic
    Заказать отказать, разрешить
    Запретить всем
    Требовать пользователя [имя пользователя]
    Разрешить от env = DPS
    Удовлетворительно
     

    У меня есть ряд других рецептов и советов по защите паролем, IP-адресом и т. Д. С помощью .htaccess в моем посте с рецептами, советами и приемами Apache .htaccess, поэтому обязательно ознакомьтесь с ними.

    Clockwatchers Web Hosting — robots.txt Учебник

    роботов.в строках SetEnvIfNoCase указывает нашему файлу .htaccess блокировать что-либо начиная со строки, которую мы предоставляем.

    Любой пользовательский агент, начинающийся непосредственно с Teleport , будет заблокирован, независимо от того, номера версии или добавленного текста.

    2. Инструмент для создания файла .htaccess

    Этот инструмент может создавать для вас файлы .htaccess, блокируя некоторых роботов. обсуждается в этом руководстве.

    Вы также можете ввести до шести настраиваемых строк User-Agent, которые нужно заблокировать. твой сайт.Введите по одному в поле.

    Заблокировать User-Agent в htaccess для веб-сервера Apache

    Это руководство покажет вам, как заблокировать запросы к вашему сайту, если они идут с определенным User-Agent. Это может быть очень полезно для защиты от DDoS-атаки pingback WordPress или блокировки других нежелательных запросов.

    Предполагая, что .htaccess уже включен на вашем сервере ( это на большинстве серверов с Apache ), добавьте следующее в самом верху, чтобы заблокировать доступ этого пользовательского агента к вашему сайту.(WordPress | ApacheBench) [NC] RewriteRule. * — [F, L]

    В приведенном выше примере блокируются все запросы с помощью User-Agent, который запускается с WordPress или ApacheBench.

    В качестве альтернативы можно использовать блок SetEnvIfNoCase , который устанавливает переменную среды, если описанное условие выполнено. Это может быть полезно, если по какой-то причине mod_rewrite недоступен.

     $ cat .htaccess
    
      SetEnvIfNoCase User-Agent (sqlmap | wordpress | apachebench) bad_user_agents
    
      Заказать разрешить, запретить
      Разрешить от всех
      Запретить от env = bad_user_agents
    
     

    В приведенном выше примере будет отказано в доступе всем, у кого есть User-Agent, в строке которого есть SQLMap, WordPress или ApacheBench.Модификатор .

    Шаг 6 — Как настроить свои сайты PBN — SEO Content Machine

     SetEnvIfNoCase User-Agent. * Rogerbot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Exabot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Mj12bot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Dotbot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Gigabot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Ahrefsbot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Sitebot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Semrushbot. * Bad_bot
    SetEnvIfNoCase User-Agent.* ia_archiver. * bad_bot
    SetEnvIfNoCase User-Agent. * Searchmetricsbot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Seokicks-robot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Sistrix. * Bad_bot
    SetEnvIfNoCase User-Agent. * Lipperhey spider. * Bad_bot
    SetEnvIfNoCase User-Agent. * Ncbot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Backlinkcrawler. * Bad_bot
    SetEnvIfNoCase User-Agent. * Archive.org_bot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Meanpathbot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Pagesinventory. * Bad_bot
    SetEnvIfNoCase User-Agent.* aboundexbot. * bad_bot
    SetEnvIfNoCase User-Agent. * Spbot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Linkdexbot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Nutch. * Bad_bot
    SetEnvIfNoCase User-Agent. * Blexbot. * Bad_bot
    SetEnvIfNoCase User-Agent. * Ezooms. * Bad_bot
    SetEnvIfNoCase User-Agent. * Scoutjet. * Bad_bot
    SetEnvIfNoCase User-Agent. * Majestic-12. * Bad_bot
    SetEnvIfNoCase User-Agent. * Majestic-seo. * Bad_bot
    SetEnvIfNoCase User-Agent. * Dsearch. * Bad_bot
    SetEnvIfNoCase User-Agent. * Blekkobo. * Bad_bot
    SetEnvIfNoCase User-Agent.* кричащая лягушка сео паук /*.* bad_bot
    SetEnvIfNoCase User-Agent. * PHPCrawl. * Bad_bot
    SetEnvIfNoCase User-Agent. * Gocrawl. * Bad_bot
    SetEnvIfNoCase User-Agent. * DigExt. * Bad_bot
    SetEnvIfNoCase User-Agent. * DomainSONOCrawler. * Bad_bot
    SetEnvIfNoCase User-Agent. * TweetmemeBot. * Bad_bot.
    SetEnvIfNoCase User-Agent. * OpenHoseBot / 2.1. * Bad_bot
    SetEnvIfNoCase User-Agent. * Kraken / 0.1. * Bad_bot
    SetEnvIfNoCase User-Agent. * - Java -. * Bad_bot
    SetEnvIfNoCase User-Agent. * Ubermetrics. * Bad_bot
    SetEnvIfNoCase User-Agent.* лучший поисковая оптимизация. * bad_bot
    SetEnvIfNoCase User-Agent. * Synapse. * Bad_bot
    SetEnvIfNoCase User-Agent. * Harvest. * Bad_bot
    SetEnvIfNoCase User-Agent. * Harvester. * Bad_bot
    SetEnvIfNoCase User-Agent. * Harvester. * Bad_bot
    SetEnvIfNoCase User-Agent.			

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *