|
Права доступа к файлам и скриптам
Правильная настройка прав доступа к файлам имеет очень важное значение. От этого зависит безопасность вашего сайта. Кроме того, неправильно настроенные права доступа могут служить причиной ошибок в работе ваших программ и веб страниц.
Настраивая права доступа к файлам, вы должны знать, под какими именами веб сервер выполняет ваши программы и считывает веб страницы.
- Все CGI-программы, а также asp-страницы выполняются с именами пользователя и группы - владельца сайта.
- Все остальное - HTML страницы, программы mod_perl, mod_php, java-сервлеты, jsp-страницы, ... - выполняется с именами пользователя и группы www.
- SSI-страницы вызываются под именами www.www. Однако запускаемые из SSI-страниц CGI-скрипты имеют имя и группу владельца сайта.
Исходя из этих сведений и настраиваются права доступа:
Те файлы и скрипты, которые запускаются под именем www.www, должны иметь признаки чтения всеми. Если это исполняемые файлы (mod_perl), то должны еще быть и признаки выполнения всеми.
Файлы, выполняемые под вашими именами пользователя и группы, не обязаны содержать признаки чтения и выполнения всеми. Вы можете даже убрать разрешение чтения/выполнения членами вашей группы (FTP-пользователями вашего сайта). В этом случае вы полностью застрахованы от того, что ваш файл прочитают посторонние пользователи. Вы можете смело располагать прямо в файле такие сведения, например, как пароли доступа к базам данных. Кроме суперпользователя root и самого веб сервера, эти файлы сможете прочитать или исполнить только вы сами.
Если файл создан не вами, а одним из ваших FTP-пользователей, то имя владельца не будет совпадать с тем, под которым его будет запускать веб сервер. В этом случае признак чтения (и исполнения, если требуется) должен быть проставлен для группы тоже. Но открывать чтение (и исполнение) для всех в этом случае все равно не требуется.
Варианты настройки прав доступа к различным типам файлов вы можете проследить из следующей таблицы.
CGI Perl |
rwx --- --- |
700 |
user.user |
rwx r-x --- |
750 |
CGI Python |
rwx --- --- |
700 |
user.user |
rwx r-x --- |
750 |
CGI TCL |
rwx --- --- |
700 |
user.user |
rwx r-x --- |
750 |
CGI PHP |
rw- --- --- |
600 |
user.user |
rw- r-- --- |
640 |
ASP (VBScript,JavaScript) |
rw- --- --- |
600 |
user.user |
rw- r-- --- |
640 |
ASP (PerlScript) |
rw- r-- r-- |
644 |
www.www |
Java сервлеты |
rw- r-- r-- |
644 |
www.www |
JSP-страницы |
rw- r-- r-- |
644 |
www.www |
HTML-страницы |
rw- r-- r-- |
644 |
www.www |
SSI-страницы |
rw- r-- r-- |
644 |
www.www |
mod_php скрипты |
rw- r-- r-- |
644 |
www.www |
mod_perl скрипты |
rwx r-x r-x |
755 |
www.www |
|
|