Содержание

Как ограничить доступ к сайту с помощью .htaccess и cPanel IP Blocker

Если вы хотите ограничить доступ к своему сайту, это можно сделать с помощью файла .htaccess или cPanel IP Blocker.

  • Ограничение доступа к сайту с помощью файла .htaccess
  • Запретить доступ ко всем файлам и папкам с помощью .htaccess
  • Запретить доступ к определенным типам файлов с помощью .htaccess
  • Запретить доступ к определенному файлу через .htaccess
  • Запретить доступ с определенных IP-адресов с помощью .htaccess
  • Запретить доступ с определенных доменов через .htaccess
  • Ограничить доступ к сайту с помощью IP Blocker cPanel
  • Снять ограничения доступа в файле .htaccess
  • Запретить доступ с IP-адресов через IP-блокиратор cPanel
  • Запретить доступ с определенных доменов через IP Blocker cPanel
  • Управление заблокированными IP-адресами и доменами с помощью IP Blocker cPanel

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

Файл .htaccess создается на сервере автоматически, когда вы устанавливаете WordPress, Drupal и Magento. Его также можно создать в текстовом редакторе и загрузить на сервер. А также с помощью файлового менеджера cPanel .

Чтобы начать, войдите в панель управления хостингом.

В верхнем меню навигации выберите пункт «Моя cPanel» .

Затем выберите пункт «Менеджер файлов» .

В правом верхнем углу экрана нажмите кнопку «Настройки».

Файлы .htaccess по умолчанию скрыты от просмотра. Чтобы открыть их, установите флажок «Показать скрытые файлы (dot- файлы)» (панель «Настройки»), а затем нажмите кнопку «Сохранить».

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

Выделите его и нажмите кнопку «Изменить» в верхнем меню.

Также можно создать новый файл . htaccess, нажав кнопку «+ Файл».

В открывшейся панели «Новый файл» введите .htaccess в качестве имени файла и нажмите кнопку «Создать новый файл». Если нужно подтвердить используемые кодировки, оставьте значения по умолчанию и нажмите «Изменить».

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

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

deny from all

Этот пример блокирует доступ к файлам .php .

<Files ~ ".php$">
Order allow,deny
Deny from all
</Files>

Чтобы блокировать доступ к другим форматам файлов, измените расширение файла, указанное в первой строке правила. Например, приведенное ниже правило блокирует доступ к файлам .inc:

<Files ~ ".inc$">
Order allow,deny
Deny from all
</Files>

Блокировка доступа к определенному файлу осуществляется с помощью следующего правила:

<Files config. php>
order allow,deny
Deny from all
</Files>

В этом примере блокируется доступ к файлу config.php, который находится в том же каталоге, что и файл .htaccess.

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

deny from 123.456.789.123

Чтобы запретить доступ определенной группе IP, уберите из адреса последний октет:

deny from 123.456.789.

Приведенное выше правило блокирует доступ к сайту IP-адресам в диапазоне от 123,456,789,0 до 123,456,789,255.

Приведенное ниже правило будет выводить ошибку 403 Forbidden для любого пользователя, перешедшего на сайт по ссылке, размещенной в problemdomain.com:

SetEnvIfNoCase Referer "problemdomain.com" bad_referer
Order Allow,Deny
Allow from ALL
Deny from env=bad_referer

Также для всех, кто перешел с указанного домена, можно выводить ошибку 500 Internal Server Error:

RewriteEngine on
RewriteCond %{HTTP_REFERER} example.
com [NC,OR] RewriteRule .* - [F]

Альтернативный способ запретить доступ к сайту заключается в использовании функции блокирования IP-адресов cPanel.

Перейдите в «Моя cPanel», раздел «Безопасность».

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

В поле «Добавить IP-адрес или диапазон» введите IP-адрес, диапазон IP-адресов или домен, для которого вы хотите заблокировать доступ, и нажмите кнопку «Добавить».

Чтобы снять ограничения доступа, указанные в .htaccess, просто удалите правило из файла с помощью текстового редактора cPanel File Manager .

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

  • Один IP-адрес:168.0.1
  • Диапазон:168.0.1-192.168.0.40
  • Подразумеваемый диапазон:168. 0.1-40
  • Формат CIDR:168.0.1/32
  • Блок IP: 192.

Введите IP-адрес или диапазон и нажмите кнопку «Добавить».

Чтобы заблокировать трафик, идущий на ваш сайт с конкретного домена, введите имя домена в поле «Добавить IP или диапазон».

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

В разделе «Заблокированные в настоящее время IP-адреса» приводится список IP-адресов, которые заблокированы. Чтобы снять ограничения доступа, нажмите кнопку «Удалить» рядом с IP-адресом или диапазоном.

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

Вадим Дворниковавтор-переводчик статьи «How to restrict access to your website with .htaccess and the cPanel IP Blocker»

Защита сайта (блокировка IP адресов, дополнительные настройки в файле .htaccess) — IT портал


Эта статья для тех web-мастера, которые не ленятся отслеживать логи посещений своих сайтов, задаются вопросом: «Как заблокировать доступ к сайту по IP адресам и отвадить надоедливых хакеров и ботов?» Собственно, проблема заключается не в том, каким способом запретить доступ к сайту. На помощь web-мастеру всегда придет конфигурационный файл .htaccess. Проблема в другом — в поиске списка диапазонов IP адресов, распределенных по географическому признаку. Большинство моих сайтов рассчитаны на русскоязычную аудиторию. Географически — для Украины, Беларуси, России. Поэтому однозначно можно заблокировать IP адреса стран Африки, Юго-Восточной Азии и Южной Америки.

Смотрите список IP адресов стран: здесь

Оптимальное решение для запрета доступа к сайтам по выбранным IP адресам — использовать в файле .htaccess директиву Deny. Важно правильно установить порядок обработки правил — Allow, Deny или Deny, Allow:
При Allow,Deny сначала обрабатываются разрешающие правила Allow, затем запрещающие Deny. Действия, не подпадающие ни под одну из директив Allow или Deny, будут запрещены по умолчанию — Deny имеет приоритет над Allow. Я рекомендую использовать для общего запрета данный порядок обработки правил — с Deny from all.
При Deny,Allow сначала обрабатываются запрещающие правила Deny, затем разрешающие Allow.

Действия, не подпадающие ни под одну из директив Deny или Allow, будут разрешены по умолчанию — Allow имеет приоритет над Deny.Рекомендуем использовать данный порядок обработки правил при выборочном запрете.
Если перечислять все диапазоны IP адресов выбранных стран, список получается слишком длинным. Чтобы избежать этого, мы решили заблокировать блоки IP адресов, отличающихся первым октетом (ХХХ.0.0.0/8). Получился совсем небольшой список, охватывающий большинство диапазонов IP адресов: AfriNIC (Африка), APNIC (Юго-Восточная Азия) и LACNIC (Южная Америка и страны Карибского бассейна). Из списка мы исключили блоки IP адресов ARIN (Северная Америка) и RIPE (Ближний Восток, Европа и Центральная Азия). Список можете скачать ниже:
Скачать список IP адресов (258 Загрузок)

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

Разрешаем только методы GET, HEAD, POST:


Order Allow,Deny
Deny from all

Запрещаем доступ к сайту для всех методов с IP адресов AfriNIC, APNIC, LACNIC:

Order Deny,Allow
# AfriNIC:
Deny from 41 102 105 197
# APNIC:
Deny from 1 14 27 36 39
Deny from 42.

0.0.0/7
Deny from 49
Deny from 58.0.0.0/7
Deny from 60.0.0.0/7
Deny from 101 103 106
Deny from 110.0.0.0/7
Deny from 112.0.0.0/5
Deny from 120.0.0.0/6
Deny from 124.0.0.0/7
Deny from 126 133 175 180
Deny from 182.0.0.0/7
Deny from 202.0.0.0/7
Deny from 210.0.0.0/7
Deny from 218.0.0.0/7
Deny from 220.0.0.0/6
# LACNIC:
Deny from 177 179 181
Deny from 186.0.0.0/7
Deny from 189
Deny from 190.0.0.0/7
Deny from 200.0.0.0/7
# Networks:
Deny from 3 6 9 11 13 15
Deny from 16.0.0.0/6
Deny from 20.0.0.0/7
Deny from 22 25 26
Deny from 28.0.0.0/7
Deny from 30 33
Deny from 34.0.0.0/7
Deny from 38 40 44 47 48
Deny from 51
Deny from 52.0.0.0/6
Deny from 56.0.0.0/7
Deny from 214.0.0.0/7

Данным правилом мы запретили доступ к сайту для IP адресов стран Юго-Восточной Азии, Африки, Южной Америки и Карибского бассейна, а также некоторых корпораций. Обратите внимание, что в этом списке отсутствуют IP адреса из смешанных зон, которые можно найти на сайтах AfriNIC, APNIC, LACNIC и RIPE. Однако данные диапазоны отсекают основной объем паразитного трафика. IP адреса ARIN блокировать не рекомендуется, иначе роботы поисковых систем Bing, Google, Yahoo не смогут заходить на ваш сайт.

Здесь умышленно задан порядок обработки правил Deny,Allow, а не наоборот, чтобы иметь возможность добавить ниже разрешающие правила исключений для некоторых IP-адресов из заблокированных диапазонов. Однако имейте ввиду, что и другие запрещающие правила для этих IP-адресов, касающиеся, например, запрета на использование определенных символов в URL, могут не действовать — будут разрешены любые URL-запросы. Кстати, в случае использования порядка обработки правил Allow,Deny рекомендуется прописать в самом начале разрешающее правило для всех Allow from all, но это не самое удачное решение — лучше его не использовать, если вы собираетесь устанавливать выборочно запрещающие правила.

Примечание: для отображения сообщения об ошибке 403 (доступ запрещен) лучше использовать не собственную страницу, а короткое сообщение, уменьшая тем самым нагрузку на сервер. Например, можно послать хакеров или ботов по известному адресу:
ErrorDocument 403 «Fuck you!
Обратите внимание на то, что в строке прописана только одна кавычка (для Apache 1.3). Для Apache 2.0 необходимо обязательно ставить закрывающую кавычку.

Блокировка IP адресов модулем Mod Rewrite

Используя модуль mod_rewrite, список IP адресов можно существенно сократить. В этом помогут регулярные выражения. Главное удобство модуля mod_rewrite в данной задаче — возможность использования правил исключений.

Блокировка IP адресов стран Северной Америки модулем Mod Rewrite

Поставленная задача: необходимо заблокировать IP адреса ARIN (стран Северной Америки), оставив доступ к сайтам для поисковых ботов Bing, Google, Yahoo. При этом на хостинге размещены несколько сайтов, один из которых предназначен для американской аудитории.
Для этого в корневой директории своего хостинга размещаем файл .htaccess, в котором прописываем следующее правило:


# Включаем модуль mod_rewrite:
RewriteEngine on
# Для файла . (?:.+\.)?my_english_site\.com$ [NC]

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


RewriteEngine on
RewriteOptions inherit
RewriteBase /путь_к_директории_с_файлом_.htaccess_от_корня_сайта/

Обязательно указывайте в RewriteBase путь к директории, в которой размещен файл .htaccess, от корня сайта. Все преобразования ссылок осуществляются относительно той директории, в которой расположен файл .htaccess. При этом унаследованные правила модуля mod_rewrite работают также относительно этой директории, то есть как бы копируются в новый файл. Если файл .htaccess расположен в директории /partners/web/access/, как данная статья, то:

RewriteBase /partners/web/access/

Использование общего файла .htaccess для всех сайтов возможно не на всех хостингах. /(?:[-/_0-9a-z]{0,236}(?:/|\.[a-z]{2,4}|[0-9a-z]))?$ good

Order Deny,Allow
Deny from env=!good
Deny from env=bad


Order Deny,Allow
# Запрет всех IP-адресов компании, позиционирующей себя на рынке поискового продвижения сайтов:
Deny from 94.244.131.83

Дополнительные настройки в файле .htaccess

Защита сайта от «левых» параметров в запросах


# RewriteCond %{THE_REQUEST} \?[0-9A-Z] [NC,OR] (если не используете ссылки с параметрами, раскомментируйте строку)
RewriteCond %{THE_REQUEST} (?:\%[0-9A-Z]*|\&|\(|\)|\+|\[|\]|\) [NC,OR]
RewriteCond %{THE_REQUEST} (?:\|%3E) [NC,OR]
RewriteCond %{THE_REQUEST} _REQUEST (?:=|\[|\%[0-9A-Z]{0,2}) [NC,OR]
RewriteCond %{THE_REQUEST} base64_encode.*\(.*\) [NC,OR]
RewriteCond %{THE_REQUEST} DOCUMENT_ROOT= [NC,OR]
RewriteCond %{THE_REQUEST} GLOBALS (?:=|\[|\%[0-9A-Z]{0,2}) [NC,OR]
RewriteCond %{THE_REQUEST} javascript [NC,OR]
RewriteCond %{THE_REQUEST} mosConfig_[a-zA-Z_]{1,21}(?:=|\%3D) [NC]
RewriteRule ^. https?://(?:.+\.)?googleusercontent\.com/.*$ host

Order Deny,Allow
Deny from env=!host

Источник

Похожие материалы:

Директивы файла .htaccess — help.zone.eu

Разрешение на отображение содержимого каталога
Options +Indexes

Запрет доступа к сайту с IP-адреса(-сов)

deny from 12.34.45.78 1.2.3.4

Запрет веб-доступа, кроме IP

order deny,allow
deny from all
allow from 12.34.56.78

Запрет веб-доступа конкретному USER_AGENT (боту)

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} BadBot
RewriteRule .* - [F]

Запрет веб-доступа нескольким USER_AGENT

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} BadBot [OR]
RewriteCond %{HTTP_USER_AGENT} BadScanner [OR]
RewriteCond %{HTTP_USER_AGENT} Fraud
RewriteRule .* - [F]

Запрет доступа к конкретному файл

<Files "denied. (.*)$ https://%1%{REQUEST_URI} [NC,R=301,L]

Разрешение определенных ресурсов (font, svg, css и т.п файлов) с другого домена, отличного от сервера. (Cross-Origin Resource Sharing (CORS))

<IfModule mod_headers.c>
    <FilesMatch "\.(ttf|ttc|otf|eot|woff|woff2|svg|font.css|css|js)$">
        Header set Access-Control-Allow-Origin "https://www.example.ee"
    </FilesMatch>
</IfModule>

HSTS, Content Security Policy и прочие связанные с безопасностью заголовки

<IfModule mod_headers.c>
    Header set Strict-Transport-Security "max-age=31536000;includeSubDomains;preload" env=HTTPS
    
    Header set X-Frame-Options "DENY"
    Header set Content-Security-Policy "default-src https:; script-src https: 'unsafe-inline'; style-src https:'unsafe-inline'"
    Header set X-XSS-Protection "1; mode=block"
    Header set X-Content-Type-Options nosniff
</IfModule>

Разрешение доступа только с IP Эстонии

order deny,allow
deny from all
allow from env=DZSP_IS_ESTONIAN_IP

Разрешение доступа с IP адресов Европы

SetEnvIf MM_COUNTRY_CODE ^(AT|BE|BG|CZ|CY|DE|DK|EE|EL|ES|FI|FR|HR|HU|IE|IT|LT|LU|LV|MT|NL|PL|PT|RO|SE|SI|SK) EUROLIIT
order deny,allow
deny from all
allow from env=EUROLIIT

Запрет веб-доступа для конкретной страны, например Китай (CN)

SetEnvIf MM_COUNTRY_CODE ^(CN) ЗаблокированнаяСтрана
Deny from env=ЗаблокированнаяСтрана

Перенаправление пользователей конкретной страны (Финляндия) на новый домен

SetEnvIf MM_COUNTRY_CODE ^(FI) FINLAND
RewriteCond %{ENV:FINLAND} ^1$
RewriteRule . * http://www.example.fi%{REQUEST_URI} [R=301,L]

На серверах используется база данных GeoLite2, которая создана MaxMind и которую можно скачать по адресу https://www.maxmind.com.

Режим технического обслуживания – временное перенаправление всех запросов на страницу обслуживания

# При необходимости добавить до RewriteRule ссылки, которые должны иметь доступ 
# Добавить IP адрес своего интернет провайдера 
RewriteCond %{REQUEST_URI} !/hooldus.html [NC]
RewriteCond %{REQUEST_URI} !/hooldus\.css [NC]
RewriteCond %{REQUEST_URI} !/hooldus\.jpg [NC]
RewriteCond %{REMOTE_ADDR} !90\.100\.100\.100
RewriteRule .* https://example.ee/maintenancepage.html [L]

Запрет запуска PHP для предупреждения проблем безопасности

Options -ExecCGI
RemoveType .php .php3 .phtml .inc
RemoveHandler .php .php3 .phtml .inc

<FilesMatch "\.(?i:php|php3|phtml|inc)$">
    Require all denied
</FilesMatch>

<IfModule mod_php7. proxy/(.*)$" "http://www.example.com/$1" [P,L]

NB! Запросы прокси могут выполняться только для HTTP-соединений, и для каждого запроса отправляется уведомление в лог ошибок веб-сервера.

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

Категория: Блог • Автор: Джефф Старр • Обновлено:

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

Прежде чем погрузиться в…

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

  • Управление доступом для Apache 2.4 (и 2.2)
  • Документы Apache: контроль доступа

Заблокировать определенный IP-адрес

Это тот адрес, который захотят использовать большинство посетителей этой страницы:

 Запретить с 123.123.123.123 

Просто измените IP-адрес на тот, который вы хотите заблокировать, а затем добавьте код в корневой файл .htaccess вашего сайта.

Заблокировать определенный домен

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

 Запретить с 123.123.123.123/255.255.255.0 

Затем измените значения IP-адреса и сетевой маски в соответствии с доменом. которые вы хотите заблокировать.

Блокировать несколько IP-адресов

Если у вас есть несколько IP-адресов, которые вы хотите заблокировать, вы можете запретить их все сразу:

 Запретить от 111.111.111.111 222.222.222.222 333.333.333.333 

Это заблокирует три указанных IP-адреса: 111.111.111.111 , 222.222.222.222 и 333.333.333.333 . Отредактируйте IP-адреса, чтобы они соответствовали тем, которые вы хотите заблокировать, а затем добавьте строку в свой файл .htaccess.

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

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

 Запретить с 123.123 

Чтобы заблокировать несколько диапазонов, мы можем сделать это:

 Запретить с 111 222.222 333.333.333 

Как только вы получите шаблон, нет предела. Просто помните о том, что вы делаете; блокировка всего диапазона IP-адресов — серьезное дело.

Блокировать IP-адрес на основе CIDR

Если вы знаете конкретный CIDR для IP-адреса, который вы пытаетесь заблокировать, вы можете использовать этот синтаксис:

 Запретить с 123.123.123.0/24 

Как и все эти правила , вы можете отредактировать, чтобы он соответствовал вашей цели, а затем добавить в .htaccess.

Блокировать IPv6-адреса

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

 Deny from 2001:0db8:0000:0042:0000:8a2e:0370 

Вы также можете использовать любую из этих нотаций, в зависимости от цели:

 Запретить с 2001:0db8:0000:0042
Запретить с 2001:0db8:0000:0042:0000/10 

Блокировать IP-адрес на основе регулярного выражения

Этот метод блокировки IP-адресов проверяет все адреса на соответствие предварительно определенному регулярному выражению через 9214.53. 111\.111\.111\.111$ Правило перезаписи .* /index.php [R=301,L]

Конечно, вы можете изменить IP-адрес, чтобы он соответствовал тому, на который вы нацеливаетесь. Затем отредактируйте /index.php , чтобы он соответствовал URI, на который должны быть отправлены любые соответствующие запросы. Вот еще один пример, иллюстрирующий технику:

 
RewriteCond %{REMOTE_HOST} 123\.123\.123\.123
RewriteCond %{REQUEST_URI} /requested-page\.html
RewriteRule .* /just-for-you.html [R=301,L]
 

Здесь мы проверяем IP и запрошенный URI. Если есть совпадение, то запрос будет отправлен на /just-for-you.html . Чтобы использовать это перенаправление, просто отредактируйте IP-адрес, запрошенную страницу и страницу перенаправления. Скопируйте и вставьте код в файл .htaccess и загрузите на свой сервер.

Блокировать определенные типы запросов

Допустим, вы хотите запретить какому-либо посетителю, например, размещать контент через форму на вашем сайте. Это можно сделать с помощью контейнера Apache :

 
Заказать Разрешить, Запретить
Разрешить от всех
Запретить с 123.123.123.123
 

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

Вот пример обратного случая, когда мы хотим разрешить публикацию только с нашего собственного IP-адреса, отклонив запросы POST для всех остальных:

 
Порядок Запретить, Разрешить
Запретить от всех
Разрешить с 111.111.111.111
 

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

Полная нотация

Хотя можно просто добавить одну строку, например Deny из 123.123 в файл .htaccess, существует более полный синтаксис, который можно использовать. Вот несколько примеров:

 Заказать Разрешить, Запретить
Разрешить от всех
Deny from 123. 123.123.123/26 

Обратите внимание на дополнительную логику, связанную с этим более «правильным» синтаксисом: здесь мы указываем Директива Oder , которая позволяет нам изменить порядок Apache по умолчанию: Разрешить, Запретить . Поэтому, когда мы включаем только одну строку Deny из (как в наших предыдущих примерах), это работает, потому что мы используем порядок по умолчанию Allow, Deny . Вот почему можно исключить лишние строки. Или, при желании, мы можем изменить порядок явно:

 Order Deny,Allow
Запретить от всех
Разрешить с 111.111.111.111 

Здесь мы сначала запрещаем доступ всем, а потом разрешаем только указанный адрес. Комбинируя этот синтаксис с , мы можем делать классные вещи, например, разрешать запросы POST и PUT только с нашего собственного IP-адреса. Например:

 <Ограничение POST PUT>
Порядок Запретить, Разрешить
Запретить от всех
Разрешить с 111.111.111.111
 

Объединив эти методы с предыдущими примерами, вы получите полные возможности блокировки IP-адресов.

Напоминание

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

Ресурсы

  • Запретить или разрешить доступ к домену для указанного диапазона IP-адресов
  • Постоянно перенаправлять определенный IP-запрос для одной страницы через htaccess
  • Конфиденциальность HTAccess для определенных IP-адресов
  • Как заблокировать IP-адреса с помощью PHP
  • .htaccess заблокировать спамера

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

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

 

Главная страница базы знаний / Как заблокировать IP-адреса с помощью .htaccess

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

Вам необходимо создать файл .htaccess в папке public_html и добавить эти строки ниже, исходя из ваших требований.

Чтобы запретить определенный IP-адрес

Приведенный ниже код запретит доступ к веб-сайту только одному IP-адресу.

 Запретить от 192.0.0.1 

Просто измените IP-адрес на IP-адрес, который вы хотите запретить, и вставьте его в файл .htaccess.

Чтобы запретить определенному домену

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

 Запретить с 192.0.0.1/255.255.255.0 

Вам необходимо изменить IP-адрес и значение сетевой маски, чтобы они соответствовали домену, который вы хотите заблокировать.

Чтобы запретить несколько IP-адресов в одной строке кода

Оставьте пустое место рядом с каждым IP-адресом для разделения.

 Запретить от 111.111.111.111 222.222.222.222 333.333.333.333 

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

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

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

 Приказ Запретить, Разрешить
Запретить от всех
Разрешить от 111.111.111.111 

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

Чтобы запретить один IPv6-адрес

Чтобы заблокировать IPv6-адрес через .htaccess, следуйте приведенному ниже синтаксису:

 Запретить с 2001:cdba:0000:0000:0000:0000:3257:9652 

Заключение

25 когда пользователь пытается посетить ваш сайт с заблокированного IP-адреса, вместо этого он увидит страницу 403 Forbidden.


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


Наши руководящие принципы
  • Предоставление последовательных, стабильных и надежных услуг веб-хостинга.
  • Обеспечьте быстрое реагирование на заявки и быстрое решение проблем.
  • Никогда не перенасыщайте серверы и не выделяйте их слишком много, чтобы обеспечить стабильность и скорость для наших клиентов.
  • Используйте только высококачественное оборудование корпоративного класса, чтобы обеспечить минимальное время простоя из-за аппаратных сбоев.
  • Предоставьте четкие цены без скрытых комиссий и подвохов.
Эта статья была размещена в разделе «Руководство», «Сеть», «Реселлерский хостинг», «Виртуальный хостинг», «WordPress».

Статьи по теме

  • Как увеличить дисковое пространство для пользователя в WHM
  • Доступ к cPanel для вашего домена / учетной записи веб-хостинга
  • Как проверить журнал ошибок вашего сайта в cPanel
  • Как настроить SSL и настроить WordPress для использования HTTPS по умолчанию
  • Как войти в админку WordPress Страница
  • Увеличить размер файла подкачки на cPanel WHM
  • Как выполнить трассировку в Windows Linux и OSX
  • Письма отправляются с адреса user@servername. com, а не с фактического адреса электронной почты
  • Как восстановить веб-сайт с помощью JetBackup 5

    В этой статье мы обсудим шаги, которые необходимо выполнить для восстановления или восстановления веб-сайта из резервных копий JetBackup. Плагин JetBackup 5 доступен в cPanel и может использоваться для восстановления файлов и баз данных веб-сайта из доступных резервных копий. Что такое JetBackup? JetBackup — это инструмент, доступный в

    Продолжить чтение...

  • Как войти на страницу администратора WordPress

    Панель управления WordPress — это место, где осуществляется управление сайтом. В этой статье объясняется, как получить доступ к панели управления на Veerotech Hosting различными способами. Быстрые шаги: Метод 1: Стандартный вход в WordPress. Загрузите URL-адрес WP-admin вашего веб-сайта в веб-браузере. Введите имя пользователя и пароль администратора WordPress.

  • Как просмотреть заголовки сообщений в Roundcube

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

    Продолжить чтение...

  • Как подключиться к MySQL из командной строки

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

    Продолжить чтение...

  • Доступ к веб-почте для вашего домена с помощью cPanel

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

    Продолжить чтение...

Tutorial - Как заблокировать доступ к моему веб-сайту для определенных IP-адресов через файл .htaccess?

Последнее обновление 12 сентября 2022 г.

Цель

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

Вы можете сделать это с помощью файла ".htaccess", определенного текстового файла, который обнаруживает веб-сервер (Apache) и который позволяет вам определять специальные правила для каталога и всех его подкаталогов.

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

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

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

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

Требования

  • План веб-хостинга OVHcloud

Инструкции

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

Параметры, определенные в файле «.htaccess», применяются к каталогу, в котором он установлен, и ко всем подкаталогам.

Чтобы отредактировать (или создать) эти каталоги, войдите в FTP-пространство вашего хостинг-плана. Если вам нужна помощь в этом, обратитесь к нашему руководству по доступу к моему хранилищу.

Заблокировать IP-адрес, диапазон IP-адресов, домен или все IP-адреса страны

Доступно несколько правил для блокировки доступа к вашему хостинг-плану через «.htaccess».
Будьте осторожны с синтаксисом и настройками, которые вы блокируете, чтобы не заблокировать себе просмотр размещенных сайтов и/или скриптов.
В случае ошибки вы всегда можете зайти на FTP-пространство вашего хостинга, чтобы исправить ситуацию.

Общий хостинг в настоящее время работает с Apache 2.4 . С Apache 2.3 , были реализованы переменные и изменен синтаксис для записи ограничений/разрешений доступа.

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

Подробнее о новом синтаксисе можно узнать на следующих официальных страницах:

  • Документация по управлению доступом Apache 2. 4
  • Документация модуля Apache 2.4 mod_authz_core

Заблокировать IP-адрес

Чтобы заблокировать определенный IP-адрес, вставьте один из следующих двух кодов в файл «.htaccess»:

  • Исторический синтаксис
  • Синтаксис из Apache 2.3
 Запретить с IP-адреса
 
 <ТребуетсяВсе>
Требовать все предоставленные
Требовать не ip IP_адрес

 
  • Пример : Если вы хотите заблокировать IP-адрес 192.168.1.2 вам нужно будет написать один из следующих двух кодов:
  • Исторический синтаксис
  • Синтаксис из Apache 2.3
 Запретить с 192.168.1.2
 
 <ТребуетсяВсе>
Требовать все предоставленные
Требовать не ip 192.168.1.2

 

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

Чтобы заблокировать диапазон IP-адресов, вставьте один из следующих двух кодов в файл «.htaccess»:

  • Исторический синтаксис
  • Синтаксис из Apache 2. 3
 Запретить из диапазона IP-адресов
 
 <ТребуетсяВсе>
Требовать все предоставленные
Требовать не ip IP_range

 
  • Пример : Если вы хотите заблокировать все IP-адреса в 192.168.x.x, вам нужно будет написать один из следующих двух кодов:
  • Исторический синтаксис
  • Синтаксис из Apache 2.3
 Запретить от 192.168
 
 <ТребуетсяВсе>
Требовать все предоставленные
Требовать не ip 192.168

 

Заблокировать домен

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

Чтобы заблокировать домен, вставьте один из следующих двух кодов в файл «.htaccess»:

  • Исторический синтаксис
  • Синтаксис из Apache 2.3
 Запретить из домена
 
 <ТребуетсяВсе>
Не требовать домена хоста

 
  • Пример : если вы хотите заблокировать domain. tld, вам нужно будет ввести один из следующих двух кодов:
  • Исторический синтаксис
  • Синтаксис из Apache 2.3
 Запретить от domain.tld
 
 <ТребуетсяВсе>
Требовать не размещать domain.tld

 

Блокировать IP-адреса из страны

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

«.htaccess» позволяет, благодаря этому элементу, блокировать все геолокационные IP-адреса из страны. Другими словами, любой, кто попытается посетить ваш сайт из этой страны, будет заблокирован (если только он не использует VPN-соединение с геолокационным IP-адресом в другой стране).

Блокировка через «.htaccess» осуществляется через двухбуквенные коды стран (стандарт ISO 3166-1 alpha2) стран.

Несколько веб-сайтов перечисляют страны и их соответствующие коды стран, включая https://www. (.*)$ - [F,L]

Чтобы авторизовать только несколько IP-адресов, диапазон IP-адресов или все IP-адреса страны

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

Авторизация одного или нескольких IP-адресов

Чтобы разрешить доступ к вашей службе только одному IP-адресу, вставьте один из следующих двух кодов в файл «.htaccess»:

  • Исторический синтаксис
  • Синтаксис из Apache 2.3
 запретить заказ, разрешить
отрицать от всех
Разрешить с IP_адреса
 
 Требовать IP-адрес IP-адрес
 
  • Пример : Если вы хотите авторизовать только IP-адреса 192.168.1.2 и 192.168.1.3 для доступа к вашему хостингу, вам нужно будет написать один из следующих двух кодов:
  • Исторический синтаксис
  • Синтаксис из Apache 2. 3
 запретить заказ, разрешить
отрицать от всех
Разрешить с 192.168.1.2
Разрешить с 192.168.1.3
 
 Требовать IP 192.168.1.2 192.168.1.3
 

Авторизация диапазона IP-адресов

Чтобы авторизовать диапазон IP-адресов для доступа к вашей службе, вставьте один из следующих двух кодов в файл «.htaccess»:

  • Исторический синтаксис
  • Синтаксис из Apache 2.3
 запретить заказ, разрешить
отрицать от всех
Разрешить из диапазона IP-адресов
 

Для размещения в верхней части вашего ".htaccess"

 Требуется ip IP_range
 
  • Пример : Если вы хотите авторизовать только диапазон IP-адресов 192.168.1.x для доступа к вашему хостингу, вам нужно будет написать один из следующих двух кодов:
  • Исторический синтаксис
  • Синтаксис из Apache 2.3
 запретить заказ, разрешить
отрицать от всех
Разрешить с 192.168. 1
 

Для размещения в верхней части вашего ".htaccess"

 Требуется IP 192.168.1
 

Авторизовать все IP-адреса страны

Чтобы авторизовать все IP-адреса в стране для доступа к вашей службе, вставьте один из следующих двух кодов в файл «.htaccess»: 9(.*)$ - [F,L]

  • Пример : Если вы хотите разрешить доступ к вашему жилью только Фиджи (FJ) и Гренландии (GR), вам нужно будет ввести один из следующих двух кодов:
  • Исторический синтаксис
  • Синтаксис из Apache 2.3
 запретить заказ, разрешить
отрицать от всех
SetEnvIf GEOIP_COUNTRY_CODE FJ AllowCountry
SetEnvIf GEOIP_COUNTRY_CODE GR AllowCountry
Разрешить из env=AllowCountry
 

Для размещения в верхней части вашего ".htaccess" 9(.*)$ - [F,L]

Дальнейшие действия с файлом ".htaccess"

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