Форумы / National / Russian / Скрытие Админки

Macik
#42102 28.09.2016 12:19

Какую цель этим преследуете? 

Если коротко, то не вижу большого смысла, т.к. файл `admin.php` все равно будет у вас в корне и будет доступен по прямому адресу `http://srv.name/admin.php`.

Добавлено 8 часов спустя:

Потестировал локально одно из решений задачи... Излагаю на правах #FAQ.

1. Изменяем имя доступа к админке: 

  • устанавливаем плагин `URLeditor`, в настройках выбираем профиль `Custom urltrans.dat`. 
  • переходим в раздел управления правилами замены URL: Administration panel → Extensions → URL Editor → Administration
  • Добавляем правило:   `admin` (Модуль)   ` *` (Параметры)   `testadmin` (Формат). Созраняем добавленные значения. Здесь `testadmin` новое имя админки. 
  • В `.htaccess` добавляем правило переадресации: 
    RewriteRule ^testadmin(\?|/)? admin.php [QSA,NC,NE,L]
    

     

2. Закрываем `admin.php` от прямого доступа:

  • в `.htaccess` полдоплняем предыдущую вставку и дописываем еще одно правило, чтобы в итоге получилось так:
    # проверяем «секретный» параметр
    RewriteCond %{QUERY_STRING} !adminAllowed=1
    # если парметр не указан блокируем доступ
    RewriteRule ^(admin\.php) - [L,F]
    
    # добавляем «секретный параметр», если мы пришли с правильного адреса
    RewriteRule ^testadmin(\?|/)? admin.php?adminAllowed=1 [QSA,NC,NE,L]
    

     

3. Для большей безопасности закрываем «папку» `/testadmin/` дополнительным паролем средствами Apache. Для этого:

  • создаем соответствующую папку `testadmin`.
  • в папке создаем `.htaccess` следующего содержания:
    # настройка простой авторизации (!! не забываем поменять путь на актуальный) 
    AuthUserFile полный/путь/на/сервере/до/файла/.htpasswd
    AuthName "Admin Secure Zone"
    AuthType Basic
    Require valid-user
    
    # запрет просмотра списка файлов в папке
    Options -Indexes
    
    # базовый каталог на сайте (значение должно совпадать с тем, 
    # что у вас в основном .htaccess)
    RewriteBase "/"
    
    # перенаправляем пользователя с индексного файла этой папки на админку 
    # не забыв при этом «секретный» параметр
    RewriteRule ^index\.html admin.php?adminAllowed=1 [QSA,NC,NE,L]
    
    
  • Создаем файл `.htpasswd` средствами командной строки или онлайн. Подробнее см. в интернет. Например здесь. (Файл лучше разместить за пределами папки с файлами сайта. Путь к файлу надо указать в только что созданном .htaccess).
  • в папке `testadmin` cоздаем файл заглушку `index.html`. Содержимое можно скопировать отсюда.

Все. Теперь при первичном заходе в админку сервер у вас спросит логин/пароль.

 

Добавлено 57 секунд спустя:

Еще схожий материал «Админка на субдомене».

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Отредактировано: Macik (28.09.2016 20:40, 7 лет назад)