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

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

Содержание

Ограничение доступа к сайту с помощью файла .htaccess

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

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

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

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

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

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

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

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

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

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

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

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

Запретить доступ ко всем файлам и папкам с помощью .htaccess

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

deny from all

Запретить доступ к определенным типам файлов с помощью .htaccess

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

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

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

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

Запретить доступ к определенному файлу через .htaccess

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

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

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

Запретить доступ с определенных IP-адресов с помощью .htaccess

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

deny from 123.456.789.123

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

deny from 123.456.789.

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

Запретить доступ с определенных доменов через .htaccess

Приведенное ниже правило будет выводить ошибку 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 Blocker cPanel

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

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

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

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

Снять ограничения доступа в файле .htaccess

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

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

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 Blocker cPanel

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

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

Управление заблокированными IP-адресами и доменами с помощью IP Blocker cPanel

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

Данная публикация представляет собой перевод статьи «How to restrict access to your website with .htaccess and the cPanel IP Blocker» , подготовленной дружной командой проекта Интернет-технологии.ру