Автор Тема: Как закрыть служебные папки и файлы на сервере  (Прочитано 23513 раз)

Оффлайн Al_Uk

  • Спец
  • ***
  • Сообщений: 247
    • Просмотр профиля
lego 4.6
Денвер


Собственно только что увидел, что могу зайти в корень своего сайта с любого компа и покопаться в папках и скачать любой файл или шаблон
это нехорошо.
например легко зайти на сайт по адресу site.ru/core/ и скачать все исходники.


есть мнение, что за это отвечают права на запись и чтение.
выполнил скрипт, который написал Slamm (http://forum.shop-script.org/index.php?topic=20.0)
но все равно легко могу зайти на сайт и покопаться в папках

Подскажите, как закрыть доступ ко всему ненужному.

на старом форуме вроде была ветка, но поиск там уж больно плохой, не могу найти никак

Оффлайн Al_Uk

  • Спец
  • ***
  • Сообщений: 247
    • Просмотр профиля
как раз на старом форуме рылся и нашел тему "мой сайт скопировали"  там тоже Options -Indexes рекомендовали
спасибо


Оффлайн www.po.kiev.ua

  • Пользователь
  • **
  • Сообщений: 24
    • Просмотр профиля
    • Интернет-магазин PO.kiev.ua
В корне сайта файл .htaccess вставляем туда в самом верху
Options -Indexes
и если нету то можно ещё добавить
DirectoryIndex index.php
А еще в тех папках где хранится важная информация и куда доступ посторонним должен быть закрыт должны быть файлы .htaccess с директивой:
Deny from all

Т.к. Options -Indexes закрывает выдачу индекса (листинга файлов и папок в каталоге), но если вы знаете имя файла и путь к нему, вы все равно можете его скачать/посмотреть.
-
Интернет-магазин http://webasyst.shop-script.org Продаем скрипты WebAsyst. Официальные реселлеры с 2006 г.
Всегда хорошая цена и скидки.

Оффлайн www.po.kiev.ua

  • Пользователь
  • **
  • Сообщений: 24
    • Просмотр профиля
    • Интернет-магазин PO.kiev.ua
А еще в тех папках где хранится важная информация и куда доступ посторонним должен быть закрыт должны быть файлы .htaccess с директивой:
Deny from all
Согласен, но зачем лазить по всем папкам и писать всё это, если можно опять же таки в корневом .htaccess сайта прописать следующее (на пример)

<Files config>
	
deny from all
</Files>
<
Files engine>
	
deny from all
</Files>
<
Files data>
	
deny from all
</Files>

Может, но лучше отдельными в каждой папке (и естественно они должны автоматически создаваться при инсталляции скрипта). Отдельными лучше потому, что корневой часто редактируется, в том числе и зачастую самим скриптом (не знаю как у SSLE, ориентируюсь на WASS), поэтому довольно большая вероятность потерять эти записи, а при отдельных в папках нет.
Все ИМХО.
-
Интернет-магазин http://webasyst.shop-script.org Продаем скрипты WebAsyst. Официальные реселлеры с 2006 г.
Всегда хорошая цена и скидки.

Оффлайн Al_Uk

  • Спец
  • ***
  • Сообщений: 247
    • Просмотр профиля
вот блин.
и правда файлы открыты для доступа
после написания deny all - перестала работать корзина, так что это не вариант
попробую вариант Slamm


Так все же как делать правильно Pehser?




Оффлайн www.po.kiev.ua

  • Пользователь
  • **
  • Сообщений: 24
    • Просмотр профиля
    • Интернет-магазин PO.kiev.ua
вот блин.
и правда файлы открыты для доступа
после написания deny all - перестала работать корзина, так что это не вариант
попробую вариант Slamm

Так все же как делать правильно Pehser?
Вариант Slamm - это какой? Прописать в корневом?Если -Indexes то он сам по себе нужен, а закрытие через .htaccess - само по себе.
Правильно - те папки, которые нужно закрывать, а те которые не нужно не закрывать.
А вот какие из них какие - это подождем ответа Сережи.
-
Интернет-магазин http://webasyst.shop-script.org Продаем скрипты WebAsyst. Официальные реселлеры с 2006 г.
Всегда хорошая цена и скидки.

Оффлайн Al_Uk

  • Спец
  • ***
  • Сообщений: 247
    • Просмотр профиля
Сергей, подскажи пожалуйста какие папки нужно закрывать а какие нет и каким способом это правильно сделать.

добавлял Htacess c deny all в разные папки, так почти везде сайт ложится и после удаления Htacess, назад не подымается ((
хорошо хоть эксперементы на тестовом сайте ставил.


Оффлайн www.po.kiev.ua

  • Пользователь
  • **
  • Сообщений: 24
    • Просмотр профиля
    • Интернет-магазин PO.kiev.ua
добавлял Htacess c deny all в разные папки, так почти везде сайт ложится и после удаления Htacess, назад не подымается ((
Ложится он правильно, как вам выше писали нечего какие попало папки закрывать, а вот то, что обратно не поднимается - так не бывает. Должен нормально подниматься и работать.
-
Интернет-магазин http://webasyst.shop-script.org Продаем скрипты WebAsyst. Официальные реселлеры с 2006 г.
Всегда хорошая цена и скидки.

Оффлайн Al_Uk

  • Спец
  • ***
  • Сообщений: 247
    • Просмотр профиля
так все же какие папки нужно закрывать а какие не нужно?

Jordan

  • Гость
Управление доступом

[spoiler=".htaccess"]Очень часто возникает необходимость запретить доступ к определенным файлам или папкам для определенных груп пользователей. В Web сервере Apache есть встроенные средства для решения данной проблемы.

 Для запрета или разрешения доступа ко всем файлам и папкам в текущей и во всех вложенных директориях используется директива Order синтаксис ее очень прост: Order [Deny,Allow] | [Allow,Deny]

# По умолчанию Deny,Allow


 В зависимости от того в каком порядке указаны директивы меняется логика работы сервера. В случае если Deny,Allow то запрещается доступ со всех IP кроме оговоренных, в случае если Allow,Deny разрешается доступ со всех IP кроме оговоренных. Далее должны идти секции описания для доступа и запрета. Ключевое слово all означает со всех IP

 Например мы хотим запретить (блокировать) доступ с IP 81.222.144.12 и 81.222.144.20 и разрешить всем остальным нам необходимо добавить в .htaccess следующий код:
Order Allow,Deny
Allow from all
Deny from 81.222.144.12
81.222.144.20


Для обратной ситуации когда мы хотим запретить доступ со всех IP кроме 81.222.144.12 и 81.222.144.20 нам необходимо добавить в .htaccess следующий код:
Order Deny,Allow
Deny from all
Allow from 81.222.144.12
81.222.144.20



Запрет или разрешение на доступ можно указывать не только на все файлы, но так же можно указывать на отдельный файл или группы файлов. Например мы хотим запретить доступ всех пользователей кроме IP 81.222.144.12 к файлу passwd.html который расположен в текущей директории.
<Files "passwd.html">
  
Order Deny,Allow
  Deny from all
  Allow from 81.222.144.12
</Files>



Так же можно запретить или разрешить доступ к определенной группе файлов. Например к файлам с расширением ".key": <Files "\.(key)$">
  
Order Deny,Allow
  Deny from all
  Allow from 81.222.144.12
</Files>
[/spoiler]
Буду рад, если пригодится. ;D