Как заблокировать ip сайта
Перейти к содержимому

Как заблокировать ip сайта

  • автор:

Как заблокировать доступ к сайту по IP?

Иногда, может потребоваться запретить какому-то конкретному IP-адресу или группе таких адресов доступ к сайту.

Причины могут быть разные — с этого адреса (или адресов) осуществляются попытки взлома админ-панели, происходит скликивание рекламных объявлений, IP принадлежат ботам-парсерам, создающим избыточную нагрузку на сайт и т.д.

Как заблокировать IP-адрес с помощью .htaccess?

Сделать это можно через файл .htaccess в корневом каталоге сайта.

Если такого файла у Вас нет, то его нужно создать.

Файл .htaccess

Для блокировки одного адреса добавляем в начало данного файла следующие строки:

Order Allow,Deny
Allow from all
Deny from 1.1.1.1

Вместо 1.1.1.1 вставьте тот IP-адреc, доступ для которого Вы хотите запретить.

редактирование файла .htaccess

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

Order Allow,Deny
Allow from all
Deny from 1.1.1.1 22.22.22.22 132.132.132.132

Где 22.22.22.22 и 132.132.132.132 — адреса, которые мы хотим заблокировать.

правило для блокировки IP

Как заблокировать диапазон схожих IP-адресов с помощью .htaccess?

Бывают ситуации, когда нужно заблокировать какой-то диапазон схожих IP-адресов. Для этого нам нужно в строке Deny from указать общую начальную часть этих адресов. Строка Deny from 5.5.5. закроет доступ для всех адресов, начинающихся с 5.5.5.c 5.5.5.0 до 5.5.5.255, строка Deny from 6.6. — для адресов начинающихся с 6.6., от 6.6.0.0. до 6.6.255.255

заблокировать диапазон схожих IP-адресов.

Как заблокировать множество IP с помощью подсети в CIDR-формате?

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

Пример:

Order Deny,Allow
Deny from 103.102.0.0/24

Вместо 103.102.0.0/24 задаем подсеть, которую хотим заблокировать. Если Вы не уверены, как правильно указать подсеть, то может воспользоваться одним из CIDR-калькуляторов, например этим — https://ip2cidr.com. Нам потребуется указать начальный IP в поле «From», конечный в поле «То» и нажать кнопку «Calculate», после чего мы получим в поле CIDR требуемую нам запись подсети.

CIDR-калькулятор

Варианты блокировок можно между собой комбинировать:

OrderAllow,Deny
Allow from all
Deny from 1.1.1.1
Deny from 5.5.5.
Deny from 103.102.0.0/24

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

МИР Visa MasterCard СБП QIWI Wallet Безналичный платеж

Все способы

© 2009–2024 «HANDYHOST.RU» 8-800-505-68-01

  • Услуги
  • Хостинг сайтов
  • Домены
  • Конструктор сайтов
  • Linux VPS / Windows VPS
  • Выделенные серверы
  • SSL сертификаты
  • Клиентам
  • Контакты
  • О компании
  • Акции
  • Оборудование
  • Партнерская программа
  • Поддержка
  • Способы оплаты
  • Регламент
  • Документы
  • Справка

Как запретить доступ к сайту по IP

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

Ниже мы рассмотрим различные варианты ограничения доступа с примерами кода.

Полное закрытие сайта

Для того чтобы полностью закрыть сайт от посещений и возможности просмотра его содержимого в .htaccess необходимо добавить следующее:

Order Deny, Allow Deny from all

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

Файл .htaccess для этой операции необходимо расположить в корне сайта.

Запрет доступа для целевого IP-адреса

Для закрытия доступа с определенного IP-адреса добавьте в файл .htaccess следующие строки:

Order Allow,Deny Allow from all Deny from 123.123.123.123 Deny from 122.122.122.122

где 123.123.123.123, 122.122.122.122 — IP-адреса, для которых запрещается доступ к сайту.

Внимание!
Не заблокируйте случайно свой IP-адрес.

Разрешение только для конкретных IP-адресов

Для открытия доступа с определенного IP-адреса, добавьте в файл .htaccess следующие строки:

Order Allow,Deny Order Deny,Allow Deny from all Allow from xxx.xxx.xxx.xxx

Вместо xxx.xxx.xxx.xxx укажите IP-адреса, для которых хотите открыть доступ к сайту.

Блокировка подсети IP

Если вам нужно заблокировать не отдельные IP-адреса, а подсеть IP-адресов (некий диапазон), сначала определите нужное значение с помощью безклассовой адресации CIDR (калькулятор IP-диапазона в CIDR).

Затем добавьте в файл .htaccess, находящийся в корневой папке сайта, следующие строки:

Order Deny,Allow Deny from 123.123.0.0/26

где 123.123.0.0/26 — подсеть IP, которую вам нужно заблокировать.

Ограничение доступа к целевой папке

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

 order deny, allow deny from all #Адреса, которым разрешен вход записываются через пробел allow from 198.69.144.98 198.69.144.94 

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

Ограничение доступа к определенному файлу на сайте

Нередко возникают ситуации, при которых необходимо закрыть возможность просмотра не сайта или папки, а только определенного файла или группы файлов. Для этого используются директивы – files и filesmatch. Они несколько похожи на мета-теги, используемые для разметки HTML-кода.

Как пример приведем ограничение просмотра для архива site.zip:

 deny from all 

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

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

FilesMatch ".(gif|png|jpe?g|rar|zip)$"> deny from all 

Блокировка доступа к сайту по IP-адресу

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

Зачем блокировать IP

  • Блокировка IP-адресов, с которых производятся атаки, защищает ресурс от нежелательного трафика, снижает риск взлома и кражи данных.
  • Снижение нагрузки на сервер за счет блокировки сетей, с которых приходит большое количество запросов от ботов.
  • Предотвращение спама.

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

Как закрыть доступ к сайту по IP в файле .htaccess

Для определенных IP-адресов

В файле .htaccess пропишите для каждого IP-адреса правило Deny from :

Deny from 127.0.0.1 Deny from 127.0.0.2

Вместо 127.0.0.1 и 127.0.0.2 впишите блокируемые IP. Если IP-адрес используют несколько пользователей, заблокированы будут все.

По маске

Блокировка IP-адресов по маске позволяет закрыть доступ к ресурсу с определенных подсетей. Маска подсети определяет диапазон блокируемых IP.

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

То есть, если IP-адреса находятся в диапазоне 127.0.0.1 — 127.0.0.254, достаточно прописать в .htaccess маску 127.0.0.0/24.

Deny from 127.0.0.0/24

Это полезно в случаях, когда злоумышленники используют различные IP-адреса в пределах одной подсети. Для определения маски подсети можно воспользоваться онлайн-конвертером IP в CIDR.

Для всех

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

Deny from all

Разрешение доступа с одного IP

Для разрешения доступа только с одного сетевого адреса в файле .htaccess пропишите:

Order Deny,Allow Deny from all Allow from 127.0.0.1

Где 127.0.0.1 – разрешенный IP-адрес.

Как запретить доступ к сайту по IP плагинами WordPress

Рассмотрим популярные плагины WordPress, которые позволяют заблокировать доступ к сайту по IP:

  • iQ Block Country – обеспечивает защиту от спама, ботов и вредоносных атак, используя информацию об IP-адресах. Сам плагин можно скачать бесплатно, но за лицензионный ключ API GeoIP взимается ежегодная плата.
  • WP Ban – дает возможность ограничить доступ по определенному IP-адресу или диапазону адресов, по имени хоста, по адресу сайта, по User Agent. Ведет статистику попыток захода на сайт заблокированных пользователей.
  • IP Geo Block – в нем можно закрыть доступ из определенных стран или регионов, добавить целевые IP-адреса, которые нужно заблокировать или разрешить.

Запрет доступа к сайту, папке или файлу по IP в .htaccess

Защита от ботов, рассылающих спам, флуда и нежелательных посещений – одна из важнейших обязанностей любого администратора веб-ресурса. Для этого существует хорошее средство – запрет доступа по IP при помощи файла .htaccess. Разберем более подробно доступные варианты изменения уровня доступа.

Создание файла .htaccess

Сначала, создается файл .htaccess как простой документ текстового формата без расширения .txt. Его можно открыть в обычном блокноте Windows, но лучше воспользоваться более расширенным редактором, например – Notepad++.

Права на этот файл должны быть обозначены как – 644, а загрузка производиться посредством ASCII-режима. Если обнаружится, что созданный файл неработоспособен необходимо обратиться в техподдержку хостинга.

Многие бесплатные хостинги запрещают использование файла .htaccess без специального разрешения. Этот файл применим только к серверам Apache и не будет исполняться на серверах под управлением Windows.

Команды

Запретить доступ к сайту по IP при помощи файла .htaccess можно используя операторы allow и deny .

Основная директива, которая используется при ограничении доступности сайта – order . Ее синтаксис следующий:

order deny,allow #Или order allow,deny

Конструкция order deny,allow начинает код и показывает, какие параметры будут использованы для ограничения разрешений на просмотр.

  1. Оператор allow дает разрешение.
  2. Оператор deny запрещает.

В зависимости от того в каком порядке стоят операторы в коде меняется логика работы сервера.

  1. deny,allow сообщает серверу о закрытии доступа всем IP-адресам кроме разрешенных.
  2. allow,deny напротив открывает доступ для всех IP-адресов кроме запрещенных.

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

Ограничение доступа к сайту и его разделам

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

Полное закрытие сайта

Для того чтобы полностью закрыть сайт от посещений и возможности просмотра его содержимого в .htaccess вносится следующий код:

order deny,allow deny from all

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

Файл .htaccess для этой операции необходимо расположить в корне сайта.

Запрет доступа для целевого IP-адреса

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

#Запрет доступа к сайту с IP 298.169.132.24 order allow,deny deny from 298.169.132.24

Файл .htaccess по-прежнему должен находится в корне сайта.

Разрешение только для конкретных IP-адресов

Сайт можно полностью закрыть, оставив разрешение только для конкретных IP-адресов. С этой целью в файле .htaccess, расположенном в корне сайта, прописываются следующие строки:

order deny,allow deny from all #Список IP, с которых доступ разрешен allow from 197.143.50.248 193.478.457.10

Разрешенные IP прописываются в коде через пробел.

Закрытие доступа по маске

В определенных ситуациях ограничение необходимо сделать по маске. Для выполнения этой операции используется код:

#Неполный адрес 198.69. #Полные адреса, соответствующие первому 198.69.132.24 198.69.136.89 198.69.1.8 #Запрет доступа к сайту по маске order allow,deny allow from all deny from 198.69.

Усиление защиты административной части сайта

Помимо прочего, запрет доступа для определенных IP-адресов к разделам сайта помогает повысить безопасность административной части. Для этого, разрешение на доступ дается только определенным IP-адресам с использованием имени хоста. Для решения этой задачи создается данный код:

#Указываем папку, к которой запрещаем доступ по имени хоста и его IP-адрес < directory /root-admin/ >order deny, allow deny from all #Адреса записываются через пробел allow from 198.69.144.98 198.69.144.94

Ограничение доступа к целевой папке

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

deny from all

Ограничение доступа к определенному файлу на сайте

Нередко возникают ситуации, при которых необходимо закрыть возможность просмотра не сайта или папки, а только определенного файла или группы файлов. Для этого используются директивы – files и filesmatch . Они несколько похожи на мета-теги, используемые для разметки HTML-кода.

Также требуется заключение директив в знаки <> , а также использование открывающей и закрывающей код конструкции.

«Пустой» код выглядит следующим образом:

Внутри этой конструкции прописываются необходимые условия. Как пример приведем ограничение просмотра для архива example.zip :

 deny from all 

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

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

 deny from all 

Запретить доступ к одному файлу по IP при помощи .htaccess сделать нельзя. Для решения этой задачи понадобится использовать возможности административных панелей хостинга и самого сайта.

Надежный хостинг для сайта. 14 дней — бесплатно!

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

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