RuWeb.net - хостинг и регистрация доменных имен
ГЛАВНАЯ ХОСТИНГ ДОМЕНЫ VDS СЕРВЕР ИНФОРМАЦИЯ КЛИЕНТЫ ПРАВИЛА ОПЛАТА ЗАКАЗ ФОРУМ
go to bottom

Версия для печати | Подписаться | Добавить в избранное   Создать новую тему Опрос: Ответ на сообщение
 Страницы:  1  2
Автор: Тема: Как защитить секретную информацию
support
Super Administrator
*********




Сообщения: 1774
Зарегистрирован: 2.7.2002
Пользователя нет на форуме

[*] когда размещено 16.3.2003 в 23:05 Ответить с цитированием
Как защитить секретную информацию


Вобщем, напишу-ка я статейку небольшую по этому поводу. Вы тут вопросов позадаете, мы ее подредактируем, а потом я ее опубликую, потому как вопрос-то очень насущный, как мне кажется.

Вопрос такой: Как защитить секретную информацию с которой работают PHP-скрипты? Итак:

Вариант 1. PHP в стандартном режиме, запускается как модуль Apache, т.е. под пользователем "nobody".

В каталоге, где расположен магазин или иные скрипты работающие с WMsigner, файлом ключей и прочими секретными данными создаете .htaccess и добавляете в него следующие строки:

Код:
AddType application/x-httpd-pcgi phtml
Action application/x-httpd-pcgi /cgi-bin/php.cgi
Пояснение: После "AddType application/x-httpd-pcgi" указываются расширения PHP-скриптов, которые вы хотите запускать в режиме CGI.

В каталоге /cgi-bin вашего сайта создаете
php.cgi с правами 711. в нем пишите 1 строку:

Код:
#!/usr/bin/php


Также, в каталоге /cgi-bin/ создаете .htaccess и пишите в нем:

Код:
<Files php.cgi>
Order Allow,Deny
Allow from env=REDIRECT_STATUS
</Files>


После этого на файлы с секретными данными можно(и нужно) ставить права доступа 600, а на каталоги c секретными файлами - 700. Скрипты, чьи расширения вы указали в .htaccess будут свободно их читать, а никакой другой пользователь прочесть их не сможет.

Вариант 2. PHP в режиме Safe Mode, запускается как модуль Apache, т.е. под пользователем "nobody".
Если PHP на сервере работает в режиме Safe Mode, способ описанный в варианте 1, вероятно, не будет работать.
В этом случае вам необходимо попросить системного администратора
установить на ваш домашни каталог (/home/[username])
chown [username]:nobody
и
сhmod 0710
Также, не забудте в каталогах с секретными файлами создать .htaccess и запретить доступ веб-сервера к этим файлам директивами:

Код:
...
<Files имя_секретного_файла>
Order Allow,Deny
Deny from all
</Files>
...

или вообще

Код:
Deny All


Правда данные изменения, к сожалению, ведут к замедлению работы скриптов и увеличению нагрузки на сервер.

И запомните - никаких файлов или папок с правами 777. Никогда и ни за что. (За исключением тех случаев когда вы знаете что делаете.)
Просмотреть Профиль Пользователя Посетить Домашнюю Страницу Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение
support
Super Administrator
*********




Сообщения: 1774
Зарегистрирован: 2.7.2002
Пользователя нет на форуме

[*] когда размещено 5.4.2003 в 23:54 Ответить с цитированием


Мда. Обнаружился глюк. Перемудрил я.
Вместо:
Deny from all
Allow from env=REDIRECT_STATUS
надо писать только
Allow from env=REDIRECT_STATUS
Исправлено.
Просмотреть Профиль Пользователя Посетить Домашнюю Страницу Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение
support
Super Administrator
*********




Сообщения: 1774
Зарегистрирован: 2.7.2002
Пользователя нет на форуме

[*] когда размещено 22.11.2003 в 02:33 Ответить с цитированием


Для себя запишу... Запомнить и не забывать:
Естественно с этими настройками, к скриптам нельзя обращаться через http://[ip]/~[username]/. Надо чтобыы домен работал.
Просмотреть Профиль Пользователя Посетить Домашнюю Страницу Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение
Rafnot
Newbie





Сообщения: 2
Зарегистрирован: 13.12.2003
Пользователя нет на форуме

[*] когда размещено 13.12.2003 в 02:38 Ответить с цитированием


Цитата:
сообщение support
Для себя запишу... Запомнить и не забывать:
Естественно с этими настройками, к скриптам нельзя обращаться через http://[ip]/~[username]/. Надо чтобы домен работал.


А какую Вы даёте гарантию сохранности данных с правами доступа cmod 600?
Просмотреть Профиль Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение
support
Super Administrator
*********




Сообщения: 1774
Зарегистрирован: 2.7.2002
Пользователя нет на форуме

[*] когда размещено 13.12.2003 в 03:36 Ответить с цитированием


Обыкновенную. 12 месяцев :)

Файлы с правами 600 можно прочитать только воспользовавшись вашим логином/паролем или через какую-нить дыру в скриптах вашего сайта (если таковые имеются).
Просмотреть Профиль Пользователя Посетить Домашнюю Страницу Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение
Rafnot
Newbie





Сообщения: 2
Зарегистрирован: 13.12.2003
Пользователя нет на форуме

[*] когда размещено 13.12.2003 в 13:19 Ответить с цитированием


Цитата:
сообщение support
Обыкновенную. 12 месяцев :)

Файлы с правами 600 можно прочитать только воспользовавшись вашим логином/паролем или через какую-нить дыру в скриптах вашего сайта (если таковые имеются).


А как узнать где есть дырки в скрипте? Не подскажите?
Просмотреть Профиль Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение
support
Super Administrator
*********




Сообщения: 1774
Зарегистрирован: 2.7.2002
Пользователя нет на форуме

[*] когда размещено 13.12.2003 в 23:11 Ответить с цитированием


Боюсь, это вопрос риторический... :(
Искать, думать, анализировать...
Просмотреть Профиль Пользователя Посетить Домашнюю Страницу Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение
Анонимный
Не зарегистрирован




Сообщения: N/A
Зарегистрирован: N/A
Пользователя нет на форуме

[*] когда размещено 23.4.2004 в 17:12 Ответить с цитированием


У меня два вопроса:
1. Как запретить листинг каталогов в .htaccess (Options -Indexes вызывает ошибку 500, работает только IndexIgnore *, но это не совсем то, что хотелось бы...)
2. Почему, когда на каталог выставлены права 644, при обращении к любому файлу в этом каталоге выдается Access Denied? Ведь если листинг запрещен, это не значит, что запрещено читать содержимое? Или я неправильно понимаю?
support
Super Administrator
*********




Сообщения: 1774
Зарегистрирован: 2.7.2002
Пользователя нет на форуме

[*] когда размещено 23.4.2004 в 17:39 Ответить с цитированием


1. На новых серверах директива "Options" запрещена из соображений безопасности. Запретить листинг можно многими способами. Поставить права 711, создать пустой index.htm или, например, создать какой-нить nolisting.htm в корне сайта и использовать директиву
DirectoryIndex /nolisting.htm

2. Листинг - это атрибут "r", а доступ к содержимому - "x", который как раз и отстутсвует при правах 644.
Просмотреть Профиль Пользователя Посетить Домашнюю Страницу Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение
Анонимный
Не зарегистрирован




Сообщения: N/A
Зарегистрирован: N/A
Пользователя нет на форуме

[*] когда размещено 20.6.2004 в 12:33 Ответить с цитированием


Все сделал, как сказано, но не получилось....
Анонимный
Не зарегистрирован




Сообщения: N/A
Зарегистрирован: N/A
Пользователя нет на форуме

[*] когда размещено 8.2.2005 в 20:15 Ответить с цитированием


А что указывать в файле .htaccess при защите папки паролем в директиве AuthUserFile?
Какой будет полный путь, если мой файл лежит в папке /domains ?
support
Super Administrator
*********




Сообщения: 1774
Зарегистрирован: 2.7.2002
Пользователя нет на форуме

[*] когда размещено 8.2.2005 в 21:57 Ответить с цитированием


Цитата:
А что указывать в файле .htaccess при защите папки паролем в директиве AuthUserFile?
имя файла с логинами и паролями для авторизации очевидно
Цитата:
Какой будет полный путь, если мой файл лежит в папке /domains ?
/home/<имя_пользователя>/domains/<имя_файла>
Просмотреть Профиль Пользователя Посетить Домашнюю Страницу Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение
DeDemon
Junior Member
*




Сообщения: 16
Зарегистрирован: 26.2.2005
Пользователя нет на форуме

[*] когда размещено 26.8.2005 в 21:37 Ответить с цитированием


"Только не забудьте закрыть прямой доступ к файлам через http (с помошью .htaccess)"

- как это сделать? Поясните, пожалуйста!
Просмотреть Профиль Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение
Анонимный
Не зарегистрирован




Сообщения: N/A
Зарегистрирован: N/A
Пользователя нет на форуме

[*] когда размещено 3.12.2005 в 03:03 Ответить с цитированием


А если мне нужно запретить доступ к двум файлам?

то есть добавить добавить в .htaccess
<Files .htaccess>
order allow,deny
deny from all
</Files>

и

<Files .htpasswd>
order allow,deny
deny from all
</Files>

Как это правильно сделать?
Так правильно?
<Files .htaccess .htpasswd>
order allow,deny
deny from all
</Files>
support
Super Administrator
*********




Сообщения: 1774
Зарегистрирован: 2.7.2002
Пользователя нет на форуме

[*] когда размещено 3.12.2005 в 19:58 Ответить с цитированием


Так и делайте - 2мя отдельными директивами Files
Или используйте FilesMatch
А вообще файлы начинающиеся с точки вроде и так недоступны для загрузки браузером.
Просмотреть Профиль Пользователя Посетить Домашнюю Страницу Пользователя Просмотреть все сообщения этого пользователя Отправить пользователю личное сообщение
 Страницы:  1  2
Создать новую тему Опрос: Ответ на сообщение

Powered by XMB
Разработано Группа XMB © 2001-2008
[запросов: 21] [PHP: 65.3% - SQL: 34.7%]
go to top
Центр поддержки (круглосуточно)
https://ruweb.net/support/
Москва(499) 502-44-31
Санкт-Петербург(812) 336-42-55
Нижний Новгород(831) 411-12-44
Екатеринбург(343) 204-71-16
© 2002-2013 ЗАО "РУВЕБ"

Дизайн - CredoDesign
Rambler\'s Top100 Рейтинг@Mail.ru
RuWeb.net - Хостинг веб-сайтов (первый месяц - бесплатно). Регистрация доменов.