• Автор:

    Flesha
  • Добавлено:

    фев 26, 2010
  • Комментариев:

    0
  • Просмотров:

    5958

Как защитить DLE

Как защитить DLE

И так если враг пробил вашу админпанель и пытается слить вашу базу то при скачки он получит болт.
Делаем следующее в папке /backup создаем файл .htaccess с содержимым:

Order Deny,AllowDeny from all



Теоретически слить базу можно теперь только с ftp доступа.И по этому не забывает делать дамп базы несколько раз в неделю и переносим дамп базы с сервера к себе на комп.

Далее защищаем саму админпанель, т.е. даем административные права тем диапазонам которым вы дали права (журналисты,модераторы).

В файле admin.php после строки:

define ( 'ENGINE_DIR', ROOT_DIR . '/engine' );


ниже пишем:

$ip_diapazones=array('99.99', // Администратор'99.999', // Журналист 1'92.123', // Журналист 2'23.321', // Журналист 3'123.999', // Модератор);$user_ip_net=explode(".",$_SERVER['REMOTE_ADDR']);$user_diap=$user_ip[0].'.'.$user_ip[1];if(!in_array($user_diap,$ip_diapazones)){$die='404 Not Found<h1>Not Found</h1><p>The requested URL '.$_SERVER['REQUEST_URI'].' was not found on this server.</p><hr /><address>'.$_SERVER['SERVER_SIGNATURE'].'</address>';@header( "HTTP/1.0 404 Not Found" );die( $die ); }



Вместо вымышленных диапазонов ip пишем нужные вам. Это поможет вам если даже вражина поимела вашу учетную запись. Закрепить эту защиту можно добавлением в файле .htaccess это корень вашего сайта находим там строку:

RewriteEngine On


ниже добавим:

ErrorDocument 403 "<h1>Forbidden</h1>"<Files>Deny from allAllow From 99.99. #АдминистраторAllow From 99.999. #Журналист 1Allow From 92.123. #Журналист 2Allow From 23.321. #Журналист 3Allow From 123.999. #Модератор</files>


Диапазон нужных вам IP адресов придётся продублировать.

Далее делаем запрет на на выполнение скриптов не относящихся к нормальной работе сайта.
Опять открываем файл .htaccess находим строку:

RewriteEngine onerrorDocument 403 "<h1>Forbidden</h1>"



ниже пишем:

<FilesMatch>Order allow,denyDeny from all</FilesMatch><FilesMatch>Order deny,allowAllow from all</FilesMatch>



Это запретит вызов php-файлов кроме как index.php, go.php, ajax.php и download.php которых достаточно для работы вашего сайта.


открываем файл admin.php и после строк:

================================================== ===Файл: admin.php-----------------------------------------------------Назначение: админпанель================================================== ===*/



Сразу вставляем:

$login="akson2004";$password="698d51a19d8a121ce581499d7b701668";if (!isset($_SERVER['PHP_AUTH_USER']) || $_SERVER['PHP_AUTH_USER']!==$login || md5($_SERVER['PHP_AUTH_PW'])!==$password) {'header('WWW-Authenticate: Basic realm="Admin Panel by KinD"');header('HTTP/1.0 401 Unauthorized');exit("Хрен тебе");'}



Вместо akson2004 пишем свой логин для авторизации. Вместо 698d51a19d8a121ce581499d7b701668
пароль в md5 используйте _http://www.adamek.biz/md5-generator.php

Сохраняем результат на сервере и идём в админку. Теперь для входа в админку нужно будет пройти двойную авторизацию и даже имея ваш сброшенный пароль БД слить не выйдет.
Вернуться
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.