SVN - система контроля версий является удобным инструментом для совместной работы нескольких разработчиков над одним проектом, тем кто впервые толкнулся с этим термином рекомендую почитать об этом отдельно благо на просторах инета информации по этой теме более чем предостаточно. Здесь же мы рассмотрим несколько иную тему.
Недавно натолкнулся на
статью в которой подробно описана уязвимость данной системы. Там же приводится примеры защиты проектов на уровне сервера. Проблема заключается в том что далеко не каждый разработчик имеет доступ к httpd.conf - например. Поэтому проанализировал информацию и скомпоновал рабочее решение на вполне доступном разработчику уровне
.htaccess.
1) С помощью mod_rewrite закрываем доступ к папкам находящимся внутри директорий .svn. Для этого в файл .htaccess находящийся в корневом каталоге вносим следующие строки.
<IfModule mod_rewrite.c>
RewriteRule ^(.*/)?\.svn/ - [F]
</IfModule>
Здесь мы перенаправляем все запросы к содержимому .svn к директиве F - forbidden ("запрет доступа").
2) Создаем файл .htaccess с содержимым:
<Files>
Order allow,deny
Deny from all
</Files>
Заливаем его по FTP в директории .svn - на личное усмотрение, кажущиеся нам наиболее уязвимыми. При большом желании можно и во все. Эту операцию мы проделываем для закрытия доступа при обращении к конкретному файлу (entries например).
Вот собственно и все. Возможно это можно модернизировать и дополнить, жду комментариев
2 комментария
Спасибо, хороший метод. Помог.
Пожалуйста