Блокировка доступа к wp-admin

6 мая 2015 г., 16:38:25
Просмотры: 22.7K
Голосов: 3

Я пытаюсь использовать файл .htaccess для блокировки доступа к папке wp-admin. Я изучил документацию по защите от брутфорс-атак (https://wordpress.org/support/article/brute-force-attacks/) и добавил следующий блок в файл .htaccess, расположенный в папке wp-admin, используя свои IP-адреса:

# Блокировка доступа к wp-admin.

ErrorDocument 401 default

order deny,allow
allow from x.x.x.x 
allow from y.y.y.y 
allow from z.z.z.z 
deny from all

Похоже, что это работает, но пользователи получают ошибку "This webpage has a redirect loop" (Эта веб-страница имеет циклическое перенаправление). Возможно ли перенаправить пользователя на страницу 404 или другую страницу с ошибкой вместо циклического перенаправления? Я не понимаю, почему это происходит, так как в файле .htaccess больше ничего нет.

Я не использую защиту паролем для папки wp-admin, а добавление ErrorDocument 401 default тоже не помогает.

3
Комментарии

возможный дубликат вопроса .htaccess в wp-admin вызывает бесконечную переадресацию

kittsville kittsville
6 мая 2015 г. 16:43:06

Согласно вашему ответу, вы пробовали переместить строку ErrorDocument 401 default в конец вашего файла .htaccess? Я знаю, что сталкивался с ситуациями, когда порядок команд в моем собственном файле .htaccess имеет значение. (Также я заметил, что в вашем ответе строка deny from all идет перед строками allow from [x], что тоже может быть важно.)

Pat J Pat J
6 мая 2015 г. 18:23:11

То, что у меня приведено в ответе, на самом деле работает очень хорошо. Когда я пытаюсь получить доступ к wp-login.php с любого другого IP, кроме разрешенных, доступ блокируется.

brandozz brandozz
6 мая 2015 г. 18:37:53
Все ответы на вопрос 2
2

Размещение файла htaccess в директории wp-admin не сработало для меня, поэтому я пошел другим путем, и это, кажется, работает очень хорошо. Ниже приведено то, что у меня находится в основном файле htaccess:

<files wp-login.php>
# установить порядок правил
order deny,allow
# запретить по умолчанию
deny from all
allow from x.x.x.x
allow from y.y.y.y
allow from z.z.z.z
</files>

ErrorDocument 401 default
ErrorDocument 403 default
ErrorDocument 404 default
6 мая 2015 г. 18:13:42
Комментарии

Я знаю, что это длинный ответ, но что вы подразумеваете под "главным htaccess-файлом"? О каком именно файле идет речь? Заранее спасибо.

Apache Apache
21 нояб. 2020 г. 23:10:51

@Apache, они имеют в виду файл .htaccess в корневой директории.

Luke Stevenson Luke Stevenson
30 янв. 2024 г. 01:06:00
2

Вы также можете заблокировать доступ к wp-admin с помощью htaccess/htpasswd, что заставит пользователей вводить дополнительное имя/пароль перед доступом к wp-admin. Таким образом, атаки методом грубой силы будут блокироваться на уровне сервера, и они даже не достигнут формы входа WordPress.

Вам нужно отредактировать файл /wp-admin/.htaccess

Добавьте следующие строки:

AuthType Basic
AuthName "закрытая зона"
AuthUserFile /абсолютный-путь-на-сервере-до-wp/wp-admin/.htpasswd
require valid-user

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

Вам также нужно сгенерировать файл .htpasswd. Вы можете использовать инструмент вроде: http://www.kxs.net/support/htaccess_pw.html

Загрузите файл .htpasswd в место, указанное выше в строке AuthUserFile. Он должен находиться выше уровня, доступного посетителям вашего сайта. Например, если ваш сайт находится в /httpdocs/wordpress/, вы можете разместить его в /httpdocs.

Подробнее о настройке можно узнать здесь: Как защитить директорию с помощью htaccess

15 сент. 2015 г. 08:36:22
Комментарии

Ответ, состоящий только из ссылки, является плохим. Пожалуйста, включите основные моменты из ссылки в сам ответ, а затем укажите ссылку на статью.

Mayeenul Islam Mayeenul Islam
15 сент. 2015 г. 09:09:42

Не предотвращает атаки методом перебора, просто добавляет еще один слой "швейцарского сыра" (уязвимостей).

Luke Stevenson Luke Stevenson
30 янв. 2024 г. 01:07:39