Нашествие ботов из США

nomarketing
На сайте с 23.09.2009
Offline
202
#31
Mik Foxi #:
в htaccess. но правда картинки не защитишь скорее всего, т.е. они через nginx отдаются, к редактированию которого у тебя нет доступа.
.htaccess ? а как узнать что или кого блокировать ?
Капитан покидает корабль последним
Сергей
На сайте с 20.02.2015
Offline
150
#32
nomarketing #:
.htaccess ? а как узнать что или кого блокировать ?

Логи смотреть. Прикрепи лог в дипсик и попроси проверить или выделить, например США и и.др ботов. Скажи ему не блокировать ботов поисковиков. Он даст список.

Доработки Opencart, joomla. Продвижение. Проверенный годами хостинг. Настройка директ.
L1
На сайте с 04.12.2025
Offline
4
#33
nomarketing #:
Интересно как их убрать на шаред хостинге ? 🤔
# =================================================================
# БЕЗОПАСНОСТЬ: БЛОКИРОВКА АТАК И ВРЕДОНОСНЫХ БОТОВ
# =================================================================
<IfModule mod_rewrite.c>

RewriteEngine On
RewriteBase /

# 1. Сразу отдаем 404 на бессмысленный запрос SiteMap.aspx (это для ASP.NET сканеров)
RewriteCond %{REQUEST_URI} SiteMap\.aspx [NC]
RewriteRule .* - [R=404,L]

# 2. Разрешаем статику (шрифты, CSS, JS) — НО НЕ ИЗОБРАЖЕНИЯ
RewriteCond %{REQUEST_URI} \.(woff2|woff|ttf|css|js)$ [NC]
RewriteRule .* - [L]

# 3. Блокировка SEO-парсеров и бесполезных ботов
# (Googlebot, YandexBot, bingbot, facebookexternalhit — НЕ блокируются)
RewriteCond %{HTTP_USER_AGENT} (AhrefsBot|AhrefsSiteAudit|SemrushBot|SemrushBot-SA|MJ12bot|DotBot|BLEXBot|MegaIndex|Bytespider|PetalBot|BackupLand|SeopultContentAnalyzer) [NC]
RewriteRule .* - [F,L]

# =========================================
# HOTLINK PROTECTION (защита от кражи изображений)
# =========================================

# =========================================
# ИСКЛЮЧЕНИЕ ДЛЯ ЯНДЕКС.ФИДА
# =========================================
RewriteCond %{REQUEST_URI} \.(jpg|jpeg|png|gif|webp|avif|svg)$ [NC]
RewriteCond %{HTTP_USER_AGENT} (YandexFetcher|YandexFeed) [NC]
RewriteRule .* - [L]


# Проверяем только картинки
RewriteCond %{REQUEST_URI} \.(jpg|jpeg|png|gif|webp|avif|svg)$ [NC]

# Если referer НЕ пустой
RewriteCond %{HTTP_REFERER} !^$

# И НЕ наш сайт
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?Мойсайт\.ru [NC]
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?Мойсайт2\.ru [NC]

# И НЕ поисковики
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?google\.[a-z]+ [NC]
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?googleusercontent\.com [NC]
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?yandex\.[a-z]+ [NC]
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?bing\.com [NC]
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?mail\.ru [NC]

# И НЕ соцсети
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?pinterest\.[a-z]+ [NC]
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?pinimg\.[a-z]+ [NC]
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?vk\.com [NC]
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?facebook\.com [NC]
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?ok\.ru [NC]
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?t\.me [NC]
RewriteCond %{HTTP_REFERER} !^https?://([^/]+\.)?telegram\.org [NC]

# Тогда блокируем
RewriteRule .* - [F,L]

# =========================================
# ЗАЩИТА ОТ ПАРСИНГА /uploads
# =========================================
# Разрешить доступ к файлам фидов Яндекс.Маркета
RewriteCond %{REQUEST_URI} ^/wp-content/uploads/feed-yml-[0-9]+\.xml$ [NC]
RewriteRule .* - [L]

RewriteCond %{REQUEST_URI} ^/wp-content/uploads/ [NC]

RewriteCond %{HTTP_USER_AGENT} ^$ [OR]
RewriteCond %{HTTP_USER_AGENT} (python|curl|wget|scrapy|aiohttp|httpclient|libwww|perl|go-http-client) [NC]

RewriteRule .* - [F,L]

# =========================================
# БЛОК НЕ-БРАУЗЕРОВ ДЛЯ ИЗОБРАЖЕНИЙ
# =========================================

RewriteCond %{REQUEST_URI} \.(jpg|jpeg|png|webp|avif)$ [NC]
RewriteCond %{HTTP_USER_AGENT} !(Mozilla|Chrome|Safari|Firefox|Opera|Edg) [NC]

RewriteRule .* - [F,L]

# 4. Блокировка несуществующих PHP-файлов
RewriteCond %{REQUEST_URI} \.php$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* - [F,L]

# 5. Блок xmlrpc (полная блокировка)
RewriteCond %{REQUEST_URI} ^/xmlrpc\.php$ [NC]
RewriteRule .* - [F,L]

# 6. Запрещённые HTTP методы
RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK|DEBUG|CONNECT) [NC]
RewriteRule .* - [F,L]

# 7. Базовая защита от SQL инъекций
RewriteCond %{QUERY_STRING} (union.*select|select.*from|sleep\(|benchmark\(|concat\(|char\(|%27|%22) [NC]
RewriteRule .* - [F,L]

</IfModule>

# =================================================================
# БЛОКИРОВКА IP-АДРЕСОВ
# =================================================================
<IfModule mod_authz_core.c>
<RequireAny>
# Мой IP всегда имеет доступ
Require ip (Мтёр)
# IP хостинга Beget (для WP Rocket, cron)
Require ip (Стёр)
<RequireAll>
Require all granted
# ========== АТАКУЮЩИЕ IP (из логов) ==========
Require not ip 20.48.232.178
Require not ip 20.63.96.180
Require not ip 20.104.199.149
Require not ip 20.151.201.236
Require not ip 20.223.198.174
Require not ip 23.101.4.52
Require not ip 34.7.44.149
Require not ip 34.10.64.2
Require not ip 34.11.201.34
Require not ip 34.30.212.225
Require not ip 34.31.225.99
Require not ip 34.31.238.167
Require not ip 34.45.2.197
Require not ip 34.61.182.84
Require not ip 34.63.144.238
Require not ip 52.188.122.85
Require not ip 93.123.109.214
Require not ip 94.154.35.236
Require not ip 141.98.11.209
Require not ip 147.224.211.39
Require not ip 172.213.225.120
Require not ip 178.130.54.159
Require not ip 89.41.181.0/24
# ========== ЗАБЛОКИРОВАННЫЕ ДИАПАЗОНЫ (сортировка по начальному IP) ==========
                        Require not ip 2.56.248.0/23
                        Require not ip 4.192.0.0/10
Require not ip 5.189.128.0/20
Require not ip 13.48.0.0/12
Require not ip 13.64.0.0/11
Require not ip 18.192.0.0/10
Require not ip 20.63.0.0/16
Require not ip 20.192.0.0/10
Require not ip 20.220.232.0/24
Require not ip 45.94.31.0/24
Require not ip 45.141.233.0/24
Require not ip 49.12.0.0/15
Require not ip 51.0.0.0/9
Require not ip 51.89.0.0/16
Require not ip 51.91.0.0/16
Require not ip 51.195.0.0/16
Require not ip 52.128.0.0/10
Require not ip 57.129.0.0/16
Require not ip 57.141.0.0/14
Require not ip 57.144.0.0/13
                        Require not ip 62.60.130.0/24
Require not ip 79.110.49.0/24
Require not ip 85.203.21.0/24
Require not ip 94.26.106.0/24
Require not ip 114.119.128.0/20
                        Require not ip 129.144.0.0/12
Require not ip 130.12.180.0/24
Require not ip 136.243.0.0/16
Require not ip 138.201.119.0/27
Require not ip 139.59.112.0/20
Require not ip 141.98.11.0/24
Require not ip 151.80.0.0/16
Require not ip 151.237.187.0/24
Require not ip 151.246.0.0/16
Require not ip 152.42.128.0/17
Require not ip 159.203.0.0/16
Require not ip 160.34.0.0/16
Require not ip 161.153.0.0/16
                        Require not ip 165.245.128.0/17
Require not ip 167.71.0.0/16
                        Require not ip 170.64.128.0/16
                        Require not ip 172.160.0.0/11
Require not ip 176.65.132.0/24
Require not ip 178.128.0.0/14
Require not ip 185.177.72.0/24
Require not ip 192.159.99.0/24
Require not ip 192.0.64.0/18
                        Require not ip 193.26.115.0/24
                        Require not ip 200.13.192.0/24
                        Require not ip 200.13.197.0/24
                        Require not ip 200.13.199.0/24
</RequireAll>
</RequireAny>
</IfModule>


# =================================================================
# WORDPRESS (основной роутинг — ДОЛЖЕН БЫТЬ В КОНЦЕ)
# =================================================================
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

+
Как уже скзаал кажды йдень разбирать логи и ставтьи цербер.ю в цербере  ка блокирвать так и прятат ьвсякие вещи типа доступа к админке.
+
на шареде у тебюя Ngnix будет отдавать кешем фотки. и твои блокировки не будут работать.
Убрать из кеша расширения фоток. ТОгда апах и акцесс будет рабоать.Но это нагрузка на сревак.


ловить баланс .
Да в цербере все адрес адиапазоны поисовоков в белом списке.
Можно и сюда в акцсс вкинуть их. мне лень.
L1
На сайте с 04.12.2025
Offline
4
#34


Шаред на реге. внизу убираем  расширения фоток из кеша.
L1
На сайте с 04.12.2025
Offline
4
#35
lucas12 #:


Шаред на реге. внизу убираем  расширения фоток из кеша.

Сам себе комментирую.Логи наше всё.
ЛОги глянул. вынюхали  логин админский.
В цербере вкрутил защиту . завёл новый админский логин (старый блок) и скрыл показывать его ID в цербере.
К вопросу зачем нужен цербер..
Далее в логах увижу всю ботосеть откуда прут атаки на логин с подсетью. 
И позже закину в хтакцесс.
просто красиво и доступно.

Раз про ботов. Последний пост.

# Закрыть уязвимость перебора пользователей

RewriteEngine On

RewriteCond %{QUERY_STRING} ^author=([0-9]+) [NC]

RewriteRule ^(.*)$ / [R=301,L]


# Закрыть доступ к страницам авторов (/author/логин/)

RewriteCond %{REQUEST_URI} ^/author/ [NC]

RewriteRule ^(.*)$ / [R=301,L]



твойсайт/?author=1 
Если пишешь т ов тсроке браузера если ты не видел и не трогал профиль.. будет логин...:)
нужно ручками сментиь отображаемое имя..
и или в акцессе закрыть кодом..
топорно но работает.

SA
На сайте с 12.04.2024
Offline
60
#36
Сегодня Финляндия в топе по ботам

alaev
На сайте с 18.11.2010
Offline
879
#37
lucas12 #:


Шаред на реге. внизу убираем  расширения фоток из кеша.

Нафига? Боты картинки не грузят и заходят один раз на ноль секунд.

Создание и продвижение сайтов - https://alaev.net , аудиты сайтов, контекстная реклама
alaev
На сайте с 18.11.2010
Offline
879
#38
SeoA #:
Сегодня Финляндия в топе по ботам

Если hetzner, то напишу абузу. Останется дурак без серваков))

Mik Foxi
На сайте с 02.03.2011
Offline
1245
#39
alaev #:

Нафига? Боты картинки не грузят и заходят один раз на ноль секунд.

поведенческие (браузерные) грузят. убрать обработку картинок из nginx - это передать на обработку в apache, нагрузки добавит еще больше серверу )))
Антибот, антиспам, веб фаервол, защита от накрутки поведенческих: https://antibot.cloud/ (8 лет на защите сайтов). Форум на замену серчу: https://foxi.biz/
L1
На сайте с 04.12.2025
Offline
4
#40
Mik Foxi #:
поведенческие (браузерные) грузят. убрать обработку картинок из nginx - это передать на обработку в apache, нагрузки добавит еще больше серверу )))

«Коллега, спасибо за совет про нагрузку. Но давайте посмотрим правде в глаза.

Я владелец интернет-магазина с уникальными авторскими фото. Мои фотографии воруют:

  • На Озоне (докажи, что твои — и это недели разбирательств)

  • На WB (с теми же карточками)

  • На Aliexpress (китайцы вообще не парятся)

  • Конкуренты копируют в свои магазины и продают дешевле

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

У меня 15 тысяч внешних ссылок с 900 сайтов — это не SEO-плюс, это мои фото гуляют по сети без спроса.

Мне плевать на нагрузку на сервер. Если надо — я куплю тариф подороже. Но я не могу допустить, чтобы мой уникальный контент воровали и продавали без моего ведома.

Поэтому да, я убрал картинки из кеша Nginx. Да, я отдал их в Apache и режу по User-Agent. Да, нагрузка чуть выше. Но парсер aiohttp  теперь получает 403, и мои фото перестали воровать в промышленных масштабах.

У нас разные задачи. У вас — производительность. У меня — сохранение авторского контента и денег. Не надо мерить всех под одну гребёнку.»

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий