Как работает admin-ajax.php?

27 дек. 2012 г., 16:50:21
Просмотры: 137K
Голосов: 23

У нас возникли некоторые разногласия с внешним разработчиком.

Мы хотим ограничить доступ к сайту wp-admin только для внутреннего доступа (через VPN). Это нужно для защиты от атак внешних пользователей. Мы можем перечислить администраторов сайта и не хотим, чтобы они стали жертвами фишинга.

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

Что делает страница admin-ajax.php?

Она находится в административном разделе WordPress. Осуществляется ли к ней доступ неаутентифицированными конечными пользователями? Является ли небезопасной практикой делать её доступной для внешних пользователей?

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

ajax-admin.php обрабатывает AJAX-запросы. Пожалуйста, уточните ваш заголовок и вопрос в целом, http://wordpress.stackexchange.com/faq

Wyck Wyck
27 дек. 2012 г. 17:49:18
Все ответы на вопрос 3
3
15

admin-ajax.php является частью WordPress AJAX API, и да, он обрабатывает запросы как с бэкенда, так и с фронтенда. Не стоит беспокоиться о том, что он находится в директории wp-admin. Я тоже считаю это странным местом для него, но само по себе это не является проблемой безопасности. Как это связано с "перечислением администраторов", я не знаю.

27 дек. 2012 г. 17:51:11
Комментарии

рекомендуете ли вы сделать страницу wp admin недоступной извне? и знаете ли вы, может ли это нарушить работу ajax админки?

nick nick
27 дек. 2012 г. 18:38:10

Я не совсем уверен, что это означает, но если вам нужно, чтобы доступ к файлам в wp-admin был только с IP вашего VPN, то да, это может нарушить работу AJAX. AJAX-запросы идут из браузера пользователя, поэтому используют IP пользователя.

s_ha_dum s_ha_dum
27 дек. 2012 г. 18:52:22

Можете объяснить, почему именно это не является проблемой безопасности для нас, новичков? В остальном, хороший ответ.

daaxix daaxix
28 апр. 2015 г. 21:53:36
0

Для неаутентифицированных и ненадежных пользователей следует сделать два конкретных исключения в ваших VPN / Firewall / Apache .htaccess, а именно:

  • example.com/wp-admin/admin-post.php
  • example.com/wp-admin/admin-ajax.php

Это два автоматических конечных пункта, которые активно используются как самой WordPress, так и различными плагинами.

Вот объяснение того, что делает admin-post.php:

admin-ajax.php работает очень похожим образом, и полезное объяснение можно найти здесь.

15 июн. 2017 г. 08:22:15
1

Если вы хотите ограничить доступ к бэкенду WordPress (например, к wp-admin), просто используйте правило .htaccess в директории wp-admin.

Ознакомьтесь с этой статьёй для общего обзора: Защита директории паролем с помощью .htaccess

Также изучите эту тему для вашего конкретного случая: Защита паролем /wp-admin/

27 дек. 2012 г. 20:37:35
Комментарии

Или, если вы предпочитаете сделать это по IP: http://betterwp.net/wordpress-tips/protect-wordpress-wp-admin-folder/

skim- skim-
27 дек. 2012 г. 20:39:39