Дополнительная защита админки Joomla

В связи с нашествием ботов, ломящихся в админку Joomla по адресу /administrator/ и забивающих все логи, было решено прикрутить дополнительную авторизацию: средствами веб-сервера Apache. Для этого в директории /administrator/ создаем файл .htaccess следующего содержания:

AuthType Basic
AuthName «Administation Zone! Restricted Access»
AuthUserFile /var/www/папка_пользователя/data/etc/.htpasswd
Require valid-user

Поясню построчно: первой строкой AuthType Basic мы сообщаем серверу, что в этой папке включена авторизация. Во второй строке параметр AuthName служит для сообщения клиенту, куда он собственно, попал и данный текст будет выведен в окне авторизации. Третья строка сообщает о том, где будет храниться файл паролей .htpasswd, сгенерированный соответствующей утилитой в консоли вашего сервера (об этом отдельно, ниже). Четвертая строка Require valid-user сообщает веб серверу кого пускать в данную папку: в нашем случае любого пользователя, прошедшего авторизацию. Также там могут быть указаны конкретные пользователи через запятую.

Теперь нам необходимо сгенерировать файл пользователей/паролей для корректной работы авторизации. Для этого в консоли запускаем утиль htpasswd в следующем виде:

htpasswd -cm .htpasswd barakobama

Утиль предложит ввести New password: и повторить Re-type password: создаваемый пароль, и если вы не рукожоп и ввели все верно, то в текущей директории появится файл .htpasswd с данными авторизации для вашего пользователя. В нашем случае пользователь barakobama. Данный файл необходимо поместить в директорию, прописанную в параметре AuthUserFile нашего .htaccess. Теперь при попытке доступа в админку по URI /admininstrator/ необходимо будет пройти дополнительную авторизацию и вирусоботы и прочие кулхацкеры на вашу страницу больше не попадут.

Вообще, модуль авторизации довольно обширный, полную документацию смотрите на сайт Apache: https://httpd.apache.org/docs/2.2/howto/auth.html